php - 插入查询说 'wrong type of data value'

标签 php mysql

我有一个 mysql 数据库的 php 查询,它收集有关学生的基本信息。有三个日期字段 - dob、doe 和 dol - 我希望用户能够将其留空或填写 yyyy-mm-dd。

INSERT INTO pupil_data (first_name,second_name,gender,registration,dob, doe, dol, ethnicity, eal, pup_prem, pup_prem_plus) 
VALUES ('aa','aa','male','kingfisher','','','','White British','yes','yes','yes' )`

phpmyadmin sql 编辑器返回#1292 - 错误的日期值:第 1 行的“dob”列的“日期值不正确”

我已经将表格设置如下:

dob: type=date, null=no, default=1900-12-01

如果我将“2006-04-14”之类的日期放入“”中,那么它就可以工作。我怎样才能让它允许用户将其留空?

谢谢

最佳答案

空白且非空的日期字段应为“0000-00-00”:

INSERT INTO pupil_data (first_name,second_name,gender,registration,dob, doe, dol, ethnicity, eal, pup_prem, pup_prem_plus) 
VALUES ('aa','aa','male','kingfisher','0000-00-00','','','White British','yes','yes','yes');

关于php - 插入查询说 'wrong type of data value',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48404759/

相关文章:

PHP 字符集有问题

mysql - 查询以选择数据库中今天日期的行数?

mysql - 用转义字符替换字符串

mysql - 插入到如果不存在则不插入

php - 使用 findAll 时 Yii AR 加入不起作用

php - 导出pdf表格数据导入mysql

javascript - 使用 jquery 和 php 在数据库中手动增加字段

MySQL 错误 : Out of range value for column 'amount' at row 1

php - 单击选项卡时如何将 sql 的结果显示到列表中?

php - Laravel 5 : the move() function doesn't save the uploaded image file