gpt4 book ai didi

php - MySQL,如何插入空日期

转载 作者:IT老高 更新时间:2023-10-29 00:20:42 25 4
gpt4 key购买 nike

我在将空值插入 MySQL 表的日期字段时遇到问题。

这是插入查询:

$query = 'INSERT INTO table (column_s1, column_s2, column_d1, column_d2)
VALUES ("'.$string1.'", "'.$string2.'", '.$date1.', '.$date2.')';

列 s1 和 s2 接受字符串值,d1 和 d2 接受日期。当我仅使用字符串字段运行此查询时,没有问题。

日期值可以设置为 null,因此我没有在查询中包含引号,而是在前面将它们添加到变量中。这是我用来设置日期值的 PHP 代码:

if (empty($date1)){
$date1 = NULL;
}
else{
$date1part = explode("/",$date1);
$date1 = '"'.$date1part[2].'/'.$date1part[1].'/'.$date1part[0].'"';
}

当所有日期值都设置好后,记录就被正确插入了。但是,当其中一个日期为空时,不会插入任何内容。

为什么我不能像这样将空值插入 MySQL?

最佳答案

试试这个:

$query = "INSERT INTO table (column_s1, column_s2, column_d1, column_d2) 
VALUES ('$string1', '$string2', " . ($date1==NULL ? "NULL" : "'$date1'") . ", " . ($date2==NULL ? "NULL" : "'$date2'") . ");";

例如,如果您将其放入查询中:

$string1 = "s1";
$string2 = "s2";
$date1 = NULL;
$date2 = NULL;

结果应该是:

INSERT INTO table (column_s1, column_s2, column_d1, column_d2) VALUES ('s1', 's2', NULL, NULL);

关于php - MySQL,如何插入空日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17784390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com