mysqli_query($_conn,"insert ...".mysqli_error()))
把错误信息作为语句的一部分,这是错的,正确的写法是:
mysqli_query("insert into ...") or dir(mysqli_error($conn))
你要是有ID字段的话,建表的时候最好建成INT类型等,时间类型一般用 TIMESTAMP就可以了,你插入的时候,INT等类型 不要 加"",加了就是
字符 类型了,TIMESTAMP类型最好弄成default字段,让它自己插入,也安全和省不少的麻烦。
还有要是自己插入的话,要注意中国的“” 和英语的""是不一样的,编译器只把英语的""看出是字符串定界付,中国的“”则是字符串的内容。
大多数编译器显示这两个东西的效果是一样的,所以我也经常找不到原因,经常费好半天劲也不知道问题在哪,只有重新写语句,到最好才想到是“”的问题。
朋友,你要注意我说的经验啊,不管你以后从事什么开发,这都是一个头痛的问题,得记住了。
你写了一条正常的update 或者 delete 语句时,语句本身是没问题的,但是却执行不了。原因是是MySQL Workbench的安全设置。当要执行的SQL语句是进行批量更新或者删除的时候就会提示这个错误。打开Workbench的菜单Edit->Preferences xxx->切换到SQL Editor
把Forbid UPDATE and DELETE statements without a WHERE clause (safe updates)的勾去掉击[OK]按钮重新启动就OK了。
或者在每句语句前,加上‘SET SQL_SAFE_UPDATES=0’
问题就解决了。
(ps:以后我会分享我所遇到的问题,这里持续更新!)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)