你试试插入此表的时候,设定不为空的字段留下一个不插入试试,那肯定会报错。
估计是你插入的是空字符串 ''
表4个字段a b c d 都是不为空的
你sql语句这样写 insert into table_name(a,b,c) values(‘1’,‘1’,‘1’)这样肯定会出错 ,因为d不为空
也许你插入的是这样的句子insert into table_name values(‘1’,‘1’,‘1’,‘’)所以没报错
首先 你要分清 null与输入为空的区别null:表示未知值,没有值
你所说的输入为空值:其实已经有值了,值是一个空的字符串即‘’,‘’转化成数字类型当然会报错。
建议在程序的前端保存的时候做一个校验,如果输入的是‘’,则转化为null 或者0 来保存就好了。
建议楼主百度一下 null与‘’ 的区别
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)