Как сохранить Нулевые значения в полях даты и времени в MySQL?

В LaTeX есть много других полезных для компоновки длин. Те, которые связаны с макетом «страницы», в основном здесь:

http://en.wikibooks.org/wiki/LaTeX/Page_Layout

\ linewidth - ширина текст в текущей среде.

Я сам не уверен в том, как \ hsize относится к другим, хотя я думаю, что это должна быть ширина текста на странице.

40
задан rhodesjason 9 November 2009 в 15:03
поделиться

3 ответа

MySQL разрешает NULL значения для полей datetime . Я только что протестировал его:

mysql> create table datetimetest (testcolumn datetime null default null);
Query OK, 0 rows affected (0.10 sec)

mysql> insert into datetimetest (testcolumn) values (null);
Query OK, 1 row affected (0.00 sec)

mysql> select * from datetimetest;
+------------+
| testcolumn |
+------------+
| NULL       | 
+------------+
1 row in set (0.00 sec)

Я использую эту версию:

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.0.45    | 
+-----------+
1 row in set (0.03 sec)

РЕДАКТИРОВАТЬ №1: Я вижу в вашем редактировании, что сообщение об ошибке, которое вы получаете в PHP, указывает, что вы передаете пустую строку (например, ' '), а не null . Пустая строка отличается от null и не является допустимым значением datetime , поэтому вы получаете это сообщение об ошибке. Вы должны передать специальное ключевое слово sql null , если вы это имеете в виду. Также не заключайте в кавычки слово null . См. Мой оператор insert выше для примера того, как вставить null .

РЕДАКТИРОВАТЬ №2: Вы используете PDO? Если так, когда вы привязываете свой нулевой параметр, убедитесь, что используете тип [PDO :: PARAM_NULL] [1] при связывании null . См. Ответ на этот вопрос о переполнении стека о том, как правильно вставить null с использованием PDO.

50
ответ дан 27 November 2019 в 01:26
поделиться

Я только что протестировал MySQL v5.0.6, и столбец datetime без проблем принял значение null.

2
ответ дан 27 November 2019 в 01:26
поделиться

Это зависит от того, как вы объявляете свой стол. NULL не будет разрешен в:

create table MyTable (col1 datetime NOT NULL);

Но он будет разрешен в:

create table MyTable (col1 datetime NULL);

Второй - значение по умолчанию, поэтому кто-то, должно быть, активно решил, что столбец не должен допускать значение NULL.

3
ответ дан 27 November 2019 в 01:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: