Die Lösung für Fehler 1055 in mysql5.7: Suchen und öffnen Sie zuerst die Konfigurationsdatei my.cnf. Löschen Sie dann das Element „only_full_group_by“ oder öffnen Sie die MySQL-Befehlszeile und führen Sie den Befehl „select @@sql_mode“ aus.
Empfohlen: „MySQL-Tutorial“
MySQL5.7-Fehler 1055
MySQL5.7-Gruppe nach neuen Funktionen, Fehler 1055
MySQL wurde ursprünglich im Projekt verwendet 5.6 Entwicklung, danach Beim Wechsel zu 5.7 stellte ich plötzlich fest, dass einige der ursprünglichen SQL-Operationen Fehler meldeten. Die Fehlermeldung bezog sich auf „only_full_group_by“ im SQL-Modus. Ich habe online nach dem Grund gesucht und festgestellt, dass der Modus „only_full_group_by“ aktiviert wurde Standard in mysql5.7. Es gibt ungefähr zwei Lösungen:
Eine: Verwenden Sie die Funktion „any_value()“ für Felder, die in der SQL-Abfrageanweisung keine Gruppierung erfordern.
Natürlich ist dies nicht für Projekte geeignet, die viele entwickelt haben Schließlich ändern Sie die ursprüngliche SQL
Zwei: Ändern Sie die Konfigurationsdatei my.cnf (my.ini unter Windows) und löschen Sie das Element only_full_group_by
Die MySQL unseres Projekts ist auf Ubuntu installiert . Es gibt kein sql_mode-Konfigurationselement, sodass Sie es nicht löschen müssen, selbst wenn Sie möchten.
Natürlich gibt es auch andere Möglichkeiten: Öffnen Sie die MySQL-Befehlszeile und führen Sie den Befehl
select @@sql_mode
aus. Auf diese Weise können Sie den Wert von sql_mode ermitteln, diesen Wert kopieren und Konfigurationselemente in my.cnf hinzufügen (den abgefragten Wert löschen). only_full_group_by Diese Option, kopieren Sie die anderen):
sql_mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
Wenn die [mysqld]-Zeile auskommentiert ist, denken Sie daran, den Kommentar zu aktivieren. Starten Sie dann den MySQL-Dienst neu.
Hinweis: Verwenden Sie den Befehl
set sql_mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
, um die Konfigurationselemente in einer Sitzung zu ändern, die in anderen Sitzungen nicht wirksam werden.
Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn mysql5.7 den Fehler 1055 meldet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!