Ich habe ein Projekt, das Einfügungen machen, die keine Werte einfügen (nicht leere Werte) an den Säulen mit NOT NULL und NO STANDARD Werte. Ich glaubte, dass das Einfügen mit fehlenden erforderlichen Werten unmöglich ist, und es gibt immer einen Fehler aus: Feld 'xxxx' hat keinen Standardwert. Aber wie ich here mysql sehen Allgemeiner Fehler: 1364 Feld ‚xxxx‘ hat keinen Standardwert
sql-mode="NO_ENGINE_SUBSTITUTION"
Ich bin verwirrt zu
eingestellt werden, weil ich denke, dass es gefährlich ist. Und wenn ich es abstelle, wird es für alle Projekte gelten und es könnte wirklich schlecht sein. Also was soll ich tun? Ist es möglich, den Modus nur für eine MySQL-Datenbank einzurichten, während sich andere Datenbanken im STRICT-Modus befinden? Was denkst du darüber? Ist es ein Problem oder nicht?
die Details entnehmen sie bitte bei https://dev.mysql.com/doc/refman/5.6/en/sql-mode.html – Aruna
Ich hoffe es ist auch möglich Möglichkeit, die Sitzung auf NO_ENGINE_SUBSTITUTION zu setzen. Wie wird es in PHP aussehen? –
Ich bin kein PHP-Experte. Wenn am Connector keine Option vorhanden ist, müssen Sie möglicherweise "SET SESSION sql_mode = ''" ausführen, bevor Sie andere Abfragen ausführen. Ich nehme an, dass Sie mehrere Abfragen mit derselben Verbindung ausführen können. Hoffentlich schaffen Sie die Verbindungen nicht überall. –
Aruna