mysql数据库常见错误 五
原因
本人出现这个问题的原因是往表中字段插入一个数据。
insert into (tablename) (字段名) values(数据) where xx=xx
如图:
其实很多人出现以上错误的原因:
1.sql语句near’xxxx’附近出错。(比如字段名输错,数据输错,多了符号等等)。
2.要插入的表名是关键字(只能改表的名字了)。
3.你插入的表中除了你要插入的字段其余的字段(除了自增长Id字段)它已经存在,就会报错。这个时候我们只能使用update方法
解释如下,这里打个比方:
第一种情况,我一张表有三个字段id(自增长),name(默认null),phone(默认不是null),其中已经有了一个数据(id=1,name=null,phone=110)那么假如你想插入一个name=“警察”判断条件是phone=110,这个时候表中name虽然是null,但是你也插入不了,会报如标题所示错误。就是因为字段phone=110已经存在所以无法插入,此时解决办法就是使用update语句更新name字段内容。
第二种情况,还是刚才那张表你想插入一个name=“医生”,但是必须要同时插入phone=(一个不为空的值)才行。
第三种情况,你有一张表三个字段id(自增长),name(null)phone(null),这个时候你插入表一个name=“XX”是可以的,但是如果你加上了where判断条件,那么条件中的字段不能是已经存在表中的数据。
使用updte方法:
update user_info set user_sex =0 where user_phone=1151
欢迎一起讨论!