无法在wamp中通过Web表单插入,但它在xampp

时间:2016-12-16 23:25:59

标签: php mysql codeigniter xampp wamp

通过在wamp服务器上运行的Web表单插入数据时,出现数据库错误。我相信这是因为“books”表中的“flag”列设置为“null no”“default none”。由于我没有为“flag”列提供值,因此它给了我这个错误。请参阅下面的错误消息。但是,当我在 xampp 服务器上测试具有相同数据库结构的相同Web表单时,一切正常。 Web表单是用PHP CodeIgniter编写的。在xampp和wamp上造成这种不同行为的原因是什么?

A Database Error Occurred    
Error Number: 1364
Field 'flag' doesn't have a default value

INSERT INTO `books` (`s_id`, `bookname`, `type`, `status`, `random_string`, `created`, `modified`) VALUES ('1', 'Gone with the wind', 'TX', 'V', '12262006_at4ihw177z_qst', '2006-12-26 22:07:52', '2006-12-26 22:07:52')

Filename: C:\wamp64\www\survey_app\system\database\DB_driver.php

我的xamp在Windows 7上运行,在Windows Server 2008上运行。

2 个答案:

答案 0 :(得分:2)

此问题与XAMPP或WAMP无关。发生这种情况是因为您的表的列定义具有默认数据。如果您使用的是phpMyAdmin,请转到表格中的列,编辑列以设置DEFAULT数据。如果没有,请在简单查询中:

ALTER TABLE `books` CHANGE `flag` `flag` INT NOT NULL DEFAULT '0'

在WAMPServer中尝试此查询,但它无效。这应该解决它。

<强>成功运行

pma

<强> Adminer

adminer

答案 1 :(得分:0)

... 将行格式设置为 DEFAULT