Codul de eroare MySQL 1175 în timpul ACTUALIZĂRII în MySQL

Codul De Eroare Mysql 1175 In Timpul Actualizarii In Mysql



„Când lucrați cu baze de date MySQL, este posibil să întâlniți „Cod de eroare 1175” declanșat atunci când efectuați instrucțiunile de ACTUALIZARE sau DE ȘTERGERE.”

Această postare va discuta cauza acestei erori și cum o putem rezolva folosind serverul MySQL.







Ce cauzează „Codul de eroare MySQL 1175”?

„Codul de eroare MySQL 1175” apare atunci când se efectuează o operație UPDATE sau DELETE fără a utiliza clauza WHERE.



În mod implicit, MySQL utilizează o caracteristică numită safe_mode care vă împiedică să executați o instrucțiune UPDATE sau DELETE fără o clauză WHERE. Acest lucru previne orice pierdere accidentală de date pe țintă.



Prin urmare, atunci când caracteristica safe_mode este activată, MySQL va returna codul de eroare 1175 la orice operație DELETE sau UPDATE care nu include o clauză WHERE.





Un exemplu este prezentat mai jos:

update sakila.film a stabilit titlu = „Titlu nou” ;



În acest caz, încercăm să schimbăm valoarea coloanei de titlu fără a specifica ce rând dorim să vizam. Acest lucru poate duce la suprascrierea întregului tabel cu valoarea specificată. Prin urmare, MySQL va preveni acest lucru și va returna o eroare așa cum se arată:

MySQL Verificați dacă Safe_Mode este activat

Starea caracteristicii safe_mode este stocată în variabila sql_safe_updates. Prin urmare, putem prelua valoarea acestei variabile pentru a determina dacă caracteristica safe_mode este activată sau nu.

Interogarea este așa cum se arată:

arata variabile precum „sql_safe_updates” ;

Interogarea ar trebui să returneze starea așa cum se arată:

+------------------+-------+
| Nume_variabilă | Valoare |
+------------------+-------+
| sql_safe_updates | PE |
+------------------+-------+
1 rând în a stabilit ( 0,00 sec )

În acest caz, putem vedea că funcția safe_mode este activată în sesiune.

Cum se rezolvă „Codul de eroare MySQL 1175”

Cel mai bun mod de a rezolva acest tip de eroare este utilizarea unei clauze WHERE. Cu toate acestea, în unele cazuri, este posibil să fie nevoie să efectuăm o ACTUALIZARE sau ȘTERGERE fără nicio condiție.

Pentru a face acest lucru, putem dezactiva caracteristica safe_mode în sesiune, permițându-ne să executăm interogarea. Apoi, putem folosi comanda SET urmată de numele variabilei și valoarea pe care dorim să o setăm.

De exemplu, pentru a dezactiva safe_mode, setăm valoarea variabilei sql_safe_updates la 0. Interogarea este așa cum se arată:

SETĂ SQL_SAFE_UPDATES = 0 ;

Pentru a-l activa, setați valoarea la 1 ca:

SETĂ SQL_SAFE_UPDATES = 1 ;

În MySQL Workbench, puteți dezactiva caracteristica safe_mode navigând la Editare-> Preferințe -> Editor SQL

A dezactivat caracteristica „Actualizări sigure” și a repornit sesiunea pe server.

Încetarea

Ați aflat cauza „Codului de eroare MySQL 1175” în această postare când efectuați instrucțiuni UPDATE sau DELETE. De asemenea, ați învățat cum să rezolvați eroarea dezactivând caracteristica safe_mode MySQL.