`

自增长:java.sql.SQLException: Field 'id' doesn't have a default value

 
阅读更多

        今天用java程序向mysql数据库中进行数据记录的时候,用的id自增长时,报了异常java.sql.SQLException: Field 'id' doesn't have a default value错误,看了一篇博文,决定按他的方法试试。http://blog.sina.com.cn/s/blog_43ed7f260100fk6h.html:其中现在修改了STRICT_TRANS_TABLES,删掉。但是我即时测试了一下(可能无法理会更多细节),总之还是没有成功。这时我想到用数据库直接测试一下,看是否不写自增长的id能够正常插入,结果是可以的。所以,我觉得应该从程序方面进行排查。

       最后问题解决了,两点建议:

       第一,在mysql数据库中,如果自增长id没有设为Auto Increment,在java程序中就会报java.sql.SQLException: Field 'id' doesn't have a default value错误。

       第二,你确定程序中要使用的Table和你在数据库中改的是同一张Table吗?如果你偶然改的是test里的测试表,那么就和我一样悲剧了。。。

分享到:
评论
1 楼 hhb19900618 2015-10-23  
设置了自增长还报错

相关推荐

Global site tag (gtag.js) - Google Analytics