语法问题?插入

时间:2017-10-06 10:37:32

标签: mysql

我在MySQL中创建了一个在线商店/数据库,而且我对这个系统还是比较陌生的。 请告诉我这句话有什么问题:

CREATE TABLE IF NOT EXISTS Customers (
ID INT(15) NOT NULL AUTO_INCREMENT,  -- Connects to table 'Orders' andOrderUserID
Email VARCHAR(100) NOT NULL,
PersonName VARCHAR(100) NOT NULL,
City VARCHAR(90) NOT NULL,
Zip INT(10),
CustomerState VARCHAR(50),
Address VARCHAR(200) NOT NULL,
Country VARCHAR(20),
Phone INT(50),
PRIMARY KEY (ID)
);


INSERT INTO Customers (ID, Email, PersonName, City, Zip, CustomerState, Address, Country, Phone) VALUES
(1, '1@gmail.com', 'Fred', 'Brisbane', 6543, 'QLD', '20 Not telling   avenue', 'Australia', 932363626),
(2, '2@gmail.com', 'Mark', 'Perth', 3212, 'WA', ' 122 cralic road', 'Australia', 93223463221),
(3, '3@gmail.com', 'Leo', 'Melbourne', 2342, 'VIC', '90 normanly drive', 'Australia', 932645321),
(4, '4@gmail.com', 'Nick', 'Perth', 4294, 'WA', '44 happylane drive', 'Australia', 932222565621),
(5, '5@gmail.com', 'Mary', 'Perth', 6383, 'WA', '3 iverno crescent', 'Australia', 93365543321),
(6, '6@gmail.com', 'Julie', 'Perth', 9563, 'WA', '100 richmane lane', 'Australia', 9323456421),
(7, '7@gmail.com', 'Cynthia', 'Hobart', 3456, 'TAS', '12 trump avenue', 'Australia', 9322364641),
(8, '8@gmail.com', 'Mike', 'Albany', 7544, 'WA', '23 mapatazzie road', 'Australia', 9322236421),
(9, '9@gmail.com', 'Brett', 'Adelaide', 8953, 'SA', '983 chindes lane', 'Australia', 9322234651),
(10, '10@gmail.com', 'Paul', 'Sydney', 7853, 'VIC', '78 yives road', 'Australia', 932223463621),

3 个答案:

答案 0 :(得分:0)

使用以下行更新最后一行:

(10, '10@gmail.com', 'Paul', 'Sydney', 7853, 'VIC', '78 yives road', 'Australia', 932223463621);

添加分号

答案 1 :(得分:0)

1。)始终发布在寻求帮助时得到的错误

2。)您在最后一行留下了逗号,

3。)int(50)不符合您的想法。它并不意味着一个有50位数的数字。 int表示数据类型,它将使用4个字节。在您的情况下,50表示显示长度。不<存储长度。 int是4个字节。它最多只能显示11位数字(包括减号)。因此,int(50)不会使其长达50位,最长会保持不变(2 ^ 32 - 1)= 4294967295

Phone成为varchar

答案 2 :(得分:0)

<强>解决方案:

问题是,你提到Phone字段为整数,给定值为93223463221。

整数值大于 2147483647 ,因此出错。

要解决,

alter table Customers modify column Phone varchar(50);

使用上述查询修改归档为varchar字段的Phone(整数)。

然后尝试插入值。