Heim > Datenbank > MySQL-Tutorial > Lösen Sie das Problem des MySQL-Fehlers. Diese Funktion ist nicht DETERMINISTISCH

Lösen Sie das Problem des MySQL-Fehlers. Diese Funktion ist nicht DETERMINISTISCH

藏色散人
Freigeben: 2021-06-04 11:49:03
nach vorne
4290 Leute haben es durchsucht

Dieser Artikel stellt Ihnen die Lösung für den MySQL-Fehler vor. Diese Funktion ist nicht DETERMINISTISCH. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Dieser Artikel stellt Freunden den MySQL-Fehler beim Öffnen des Bin-Log-Protokolls vor: Diese Funktion hat keine DETERMINISTISCHE, KEINE SQL-Lösung,

Beim Erstellen einer gespeicherten Prozedur

Fehlermeldung:

ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)
Nach dem Login kopieren

Ursache:

Dies ist das, was wir mit bin-log aktivieren. Wir müssen angeben, ob unsere Funktion

1 DETERMINISTIC 不确定的
2 NO SQL 没有SQl语句,当然也不会修改数据
3 READS SQL DATA 只是读取数据,当然也不会修改数据
4 MODIFIES SQL DATA 要修改数据
5 CONTAINS SQL 包含了SQL语句
Nach dem Login kopieren

ist. In der Funktion werden nur DETERMINISTIC, NO SQL und READS SQL DATA unterstützt. Wenn wir bin-log aktivieren, müssen wir einen Parameter für unsere Funktion angeben.

Lösung:

SQL code
mysql> show variables like 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name          | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF  |
+---------------------------------+-------+
mysql> set global log_bin_trust_function_creators=1;
mysql> show variables like 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name          | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | ON  |
Nach dem Login kopieren

Nachdem Sie die Parameter auf diese Weise hinzugefügt haben und mysqld neu gestartet wird, verschwinden die Parameter wieder. Denken Sie also daran, Folgendes hinzuzufügen:

log_bin_trust_function_creators=1
Nach dem Login kopieren

Empfehlung: „MySQL-Video-Tutorial

Das obige ist der detaillierte Inhalt vonLösen Sie das Problem des MySQL-Fehlers. Diese Funktion ist nicht DETERMINISTISCH. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:jb51.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage