首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MySQL 5中将空字符串插入auto_increment列

在MySQL 5中将空字符串插入auto_increment列
EN

Stack Overflow用户
提问于 2010-06-07 20:34:21
回答 1查看 2.3K关注 0票数 2

我继承了一个项目,我们正试图将其从MySQL 4.0迁移到MySQL 5(!)从myISAM到InnoDB。查询现在正在下降,因为它们是在所有参数上使用ADODB connection的->qstr()构造的,包括int。在没有提供值的情况下,我最终得到:

代码语言:javascript
复制
INSERT INTO tablename VALUES ('', 'stuff'...)

其中第一列是auto_increment。这会导致错误(这很公平,因为'‘不是整型的)。MySQL中是否有一个开关可以让它的行为像以前一样(我假设它只是静默地转换为0?)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-06-07 20:48:56

编辑

我只是运行了几个测试,我在下面写的东西对你一点帮助都没有。错误是由于错误的数据类型造成的,我建议的SQL设置不会改变这一点。不过,我还是把这个答案留在这里,因为它可能对其他人有帮助。

首先,仔细检查列是否真的是自动递增的--有几次我在CREATE TABLE文件中遗憾地遗漏了列是auto_increment的事实。

另一件可能有帮助的事情是检查NO_AUTO_VALUE_ON_ZERO是否没有打开。

SET SQL_MODE=''应该把它关掉。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2989478

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档