欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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')

php mysql insert语句的问题?

php mysql insert语句的问题?

上面的错误是同样的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')

php mysql insert语句的问题?

php mysql insert语句的问题?

上面的错误是同样的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字段默认值,或者允许为空

相关标签: php mysql