php mysql insert语句的问题?
程序员文章站
2022-05-28 22:50:06
...
phpcms 系统中有个sql语句(添加文章内容),我将其执行的sql语句记录到文件中,发现有一个字段没有插入,也没有默认值,不知道这个sql语句是怎样执行成功的,我在phpmyadmin中执行语句就会报错。
下面的sql语句中并没有typeid这个字段,这个字段是非空的,且没有默认值。(数据表名字已替换)
INSERT INTO `somedb`.`news`(`hascode`,`style`,`thumb`,`inputtime`,`islink`,`catid`,`title`,`keywords`,`description`,`posids`,`status`,`updatetime`,`username`,`sysadd`) VALUES ('0','','','1452096000','0','1','看看这些情况是怎么回事呢?','回事 情况','再来看看这些情况是怎么回事呢?','0','99','1452133458','wenhua','1')
上面的错误是同样的sql语句在phpmyadmin中执行的,但是phpcms系统中却能成功执行,不知道这是怎么回事?
回复内容:
phpcms 系统中有个sql语句(添加文章内容),我将其执行的sql语句记录到文件中,发现有一个字段没有插入,也没有默认值,不知道这个sql语句是怎样执行成功的,我在phpmyadmin中执行语句就会报错。
下面的sql语句中并没有typeid这个字段,这个字段是非空的,且没有默认值。(数据表名字已替换)
INSERT INTO `somedb`.`news`(`hascode`,`style`,`thumb`,`inputtime`,`islink`,`catid`,`title`,`keywords`,`description`,`posids`,`status`,`updatetime`,`username`,`sysadd`) VALUES ('0','','','1452096000','0','1','看看这些情况是怎么回事呢?','回事 情况','再来看看这些情况是怎么回事呢?','0','99','1452133458','wenhua','1')
上面的错误是同样的sql语句在phpmyadmin中执行的,但是phpcms系统中却能成功执行,不知道这是怎么回事?
帖一下表定义给我们看看:
show create table 表名;
你这个报错是zhenbenling.news表的typeid字段没有默认值(且它不允许null值),你插入的时候,必须给这个字段值的!哪怕是''!
你想方便的话,修改下这列的约束:
use zhenbenling;
alter table news change typeid typeid smallint(5) NOT NULL DEFAULT '';
你确定insert那条记录,在phpcms中能查到吗?phpadmin报错是正常的,就应该报错。
给typeid字段默认值,或者允许为空
推荐阅读
-
Mysql5.7中使用group concat函数数据被截断的问题完美解决方法
-
Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini及服务无法启动的快速解决办法(问题小结)
-
mysql proxy问题的解决方法
-
完美解决MySQL通过localhost无法连接数据库的问题
-
win7 wamp 64位 php环境开启curl服务遇到的问题及解决方法
-
SQL Server使用Merge语句当源表数据集为空时,无法进行查询的问题
-
SQL语句练习实例之五 WMS系统中的关于LIFO或FIFO的问题分析
-
mysql SELECT语句去除某个字段的重复信息
-
mysql insert的几点操作(DELAYED,IGNORE,ON DUPLICATE KEY UPDATE )
-
mysql 获取当天发布的信息的语句