У меня возникли проблемы с введением нулевых значений в поля даты в таблицу MySQL.
Вот запрос вставки:
$query = 'INSERT INTO table (column_s1, column_s2, column_d1, column_d2)
VALUES ("'.$string1.'", "'.$string2.'", '.$date1.', '.$date2.')';
Столбцы s1 и s2 принимают строковые значения, а d1 и d2 принимают даты. Когда я запускаю этот запрос только с полями строки, проблем нет.
Значения даты могут быть либо заданными, либо нулевыми, поэтому я не включил кавычки в запрос, а вместо этого добавил их к переменной ранее. Это код php, который я использую для установки значений даты:
if (empty($date1)){
$date1 = NULL;
}
else{
$date1part = explode("/",$date1);
$date1 = '"'.$date1part[2].'/'.$date1part[1].'/'.$date1part[0].'"';
}
Когда все значения даты установлены, запись вставлена правильно. Однако, когда любая из дат равна нулю, ничего не вставлено.
Почему я не могу просто вставить нулевые значения в MySQL?