Der er 2 måder at gøre dette på.
- Til aktuel Mysql-session (midlertidig løsning)
Udfør først forespørgsel for at få den aktuelle SQL-tilstand på din mysql-server.
mysql> SELECT @@sql_mode;
+----------------------------------------------------------------+
| @@sql_mode |
+----------------------------------------------------------------+
|STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+----------------------------------------------------------------+
1 row in set (0.00 sec)
Hvis resultatet indeholder STRICT_TRANS_TABLES
, skal du fjerne denne værdi for at tillade indsættelsesforespørgsel at sende NULL-værdi. Sørg for, at din mysql-bruger har privilegier til at anvende disse ændringer, og genstart Mysql Server efter at have anvendt dette.
SET GLOBAL sql_mode = '';
- For Life Time of Mysql (permanent løsning)
Du skal opdatere filen my.cnf. Placeringen af denne fil er:\etc\my.cnf eller \etc\mysql\mysql.cnf
Der vil være nogle standardparametre indstillet under [mysqld] som
[mysqld]
innodb_file_per_table=1
default-storage-engine=MyISAM
performance-schema=0
max_allowed_packet=268435456
open_files_limit=10000
Tilføj blot en linje under den
sql-mode=""
Sørg for at genstarte Mysql Server efter at have ændret denne fil. Normalt vil root-brugeren være ejeren af filen, så du skal logge ind med root-brugeren på serveren.
For flere detaljer for at forstå, hvad denne SQL-tilstand gør.
STRICT_TRANS_TABLES
Aktiver streng SQL-tilstand for transaktionslagringsmotorer, og når det er muligt for ikke-transaktionelle lagringsmotorer. For detaljer, se Streng SQL-tilstand.
Se:http://dev.mysql.com /doc/refman/5.7/da/sql-mode.html#sqlmode_strict_trans_tables
NO_AUTO_CREATE_USER
Undgå, at GRANT-erklæringen automatisk opretter nye brugerkonti, hvis den ellers ville gøre det, medmindre der er angivet godkendelsesoplysninger. Erklæringen skal angive en ikke-tom adgangskode ved hjælp af IDENTIFIED BY eller et autentificeringsplugin, der bruger IDENTIFIED WITH.
Se:http://dev.mysql.com /doc/refman/5.7/da/sql-mode.html#sqlmode_no_auto_create_user
NO_ENGINE_SUBSTITUTION
Kontroller automatisk udskiftning af standardlagermotoren, når en sætning såsom CREATE TABLE eller ALTER TABLE angiver en lagermotor, der er deaktiveret eller ikke kompileret i.
Se:http://dev.mysql.com /doc/refman/5.7/da/sql-mode.html#sqlmode_no_engine_substitution