gpt4 book ai didi

mysql - 整数列的不合逻辑的 SQL 超出范围值

转载 作者:太空宇宙 更新时间:2023-11-03 11:42:10 25 4
gpt4 key购买 nike

我收到一个奇怪的 SQL 错误。我有一个包含以下属性的表客户端:

  • 客户编号
  • 职位
  • 姓名
  • 姓氏
  • 电子邮件
  • 手机
  • 积分
  • 余额

Points 设置为长度为 11 的整数,接受 NULL 值

我尝试使用以下代码插入一个新客户端:

INSERT into client VALUES (154,"Mr","Ted","Jones","td@gmail.com","07951234567",0,0);

我收到以下错误:

1264 - Out of range value for column 'Points' at row 1

为了以防万一,第一行的数据是:

111 Mr  Rob Taylor  rt@hotmail.com  07523363535 438 0

我发现很难理解错误的含义。似乎 points 不会变得如此之大以至于需要成为 BigInt。

CREATE TABLE client ( 
ClientID int(11) NOT NULL,
Title varchar(45) NOT NULL,
Name varchar(45) NOT NULL,
LastName varchar(45) NOT NULL,
Email varchar(45) NOT NULL,
Cellphone bigint(11) DEFAULT NULL,
Points int(11) DEFAULT NULL,
Balance decimal(10,0) NOT NULL
)
ENGINE=InnoDB DEFAULT CHARSET=utf8;

最佳答案

在使用insert 时总是指定列。大概你打算:

INSERT into client(ClientId, Title, Name, LastName, email, Cellphone, Points, Balance)
VALUES (154, 'Mr', 'Ted', 'Jones', 'td@gmail.com', '07951234567', 0, 0);

我的第一个猜测是列在表中的顺序不同——但不要费心弄清楚,只需明确说明您正在使用的列即可。

另一种可能性是手机列被声明为某种数值。如果是这种情况,请修复数据并将列更改为 varchar!

关于mysql - 整数列的不合逻辑的 SQL 超出范围值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41001647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com