我的服务器上安装了MySQL 5.0。 SQL自动增量无效。我已经使用自动增量定义了列,但仍然无效,它说:
Incorrect integer value: '' for column 'id' at row 1
答案 0 :(得分:2)
在主键列中插入NULL而不是空字符串。从错误中我可以看到你试图插入“”值。
答案 1 :(得分:2)
您的查询应该是
INSERT INTO myTable(col2, col3) VALUES('x','y');
省略自动增量列
答案 2 :(得分:0)
我只使用DEFAULT而不是“”
插入用户值(默认,'$用户名',...)
为我自动递增。
答案 3 :(得分:0)
确保您的主键符合以下内容:
`id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY
我用过:
INSERT INTO `table` (`id`, `foo`, `hello`) VALUES ('', 'bar', 'world')
如果密钥设置为我的密钥,则在密钥中放置一个空白字符串。这可能是一个不好的做法,但是我知道它有用,所以如果它不适合你那么我会说你创建你的桌子时可能会错过一些东西。
省略INSERT中的id
很可能是最合适的方法,使用NULL可能是次佳的。我没有任何文件来支持这一点,但就像观察一样,似乎可能就是这种情况。