我无法使用auto_increment列在表中插入一行

时间:2017-11-26 22:17:23

标签: mysql sql

我在将查询插入带有自动增量列的表时遇到问题。

我搜索了很多页面,但还没有得到任何解决方案。

以下是我的插入查询。

Insert into Person ( FirstName, LastName, Address, City, State, ZipCode, Telephone, Email) 
    values (  "john","done","seoul","seoul","seoul","11776","1234","hello@world.com");

我的桌子包括ID,FirstName,LastName,地址,城市,州,邮政编码,电话,电子邮件。

我还尝试插入带有id列和NULL值的查询,但它也不起作用。

如果我执行上述查询,我​​总是收到错误消息

错误代码:1644。ID低于或等于0

这是我桌子的工作台快照。 enter image description here

我已将自动增量设置为1并且也将截断表设置为,但是..它仍然不起作用..

我不知道如何解决这个错误。

2 个答案:

答案 0 :(得分:1)

尝试以下方法:

Insert into Person (id, FirstName, LastName, Address, City, State, ZipCode, Telephone, Email) 
values (default,  "john","done","seoul","seoul","seoul","11776","1234","hello@world.com");

答案 1 :(得分:1)

Error code 1644是用户定义的错误:

  

错误:1644 SQLSTATE:HY000(ER_SIGNAL_EXCEPTION)

     

消息:未处理的用户定义的异常情况

这与非常具体的错误消息一起表明您在此表上有一个前或后插入触发器,用于检查id字段的值并引发此错误。

您需要检查此触发器并更正它,或者您需要将其丢弃。