Blijkbaar is de datetime-waarde geen geldige MySQL Datetime . Maar er is een oplossing om de Server SQL-modi .
Om de een of andere reden zijn in mijn ontwikkelserver de MySQL-standaardmodusconfiguraties volledig verwijderd. Daarom waren er geen beperkingen op hoe ik de datetime kon invoegen.
mysql> select @@sql_mode;
+------------+
| @@sql_mode |
+------------+
| |
+------------+
1 row in set (0.00 sec)
Aan de andere kant waren er op de productieserver een heleboel beperkingen die de mysql-server vertelden welke soorten datum- en tijdindelingen moesten worden geaccepteerd.
mysql> select @@sql_mode;
+-------------------------------------------------------------------------------------------------------------------------------------------+
| @@sql_mode |
+-------------------------------------------------------------------------------------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+-------------------------------------------------------------------------------------------------------------------------------------------+
Dit is geen veilige methode, maar ik heb de MySQL-restrictiemodi gewijzigd in no_engine_substitution
, en voila, alles werkt (bijna) als een tierelier. U moet de GLOBAL- en SESSION-modi wijzigen om dit te laten werken.
De standaard SQL-modus is 'NO_ENGINE_SUBSTITUTION', dus we zullen de modus daaraan aanpassen. Er zijn meer modi die je kunt toevoegen:
SET GLOBAL sql_mode = '<mode>';
SET SESSION sql_mode = '<mode>';
Nu moeten de GLOBAL- en SESSION-modus worden ingesteld op NO_ENGINE_SUBSTITUTION
mysql> SET SESSION sql_mode = 'NO_ENGINE_SUBSTITUTION';
mysql> SELECT @@SESSION.sql_mode;
+------------------------+
| @@SESSION.sql_mode |
+------------------------+
| NO_ENGINE_SUBSTITUTION |
+------------------------+
1 row in set (0.00 sec)
mysql> SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION';
mysql> SELECT @@GLOBAL.sql_mode;
+------------------------+
| @@GLOBAL.sql_mode |
+------------------------+
| NO_ENGINE_SUBSTITUTION |
+------------------------+
1 row in set (0.00 sec)