MySQL-i veakood 1175 MySQL-i värskendamise ajal

Mysql I Veakood 1175 Mysql I Varskendamise Ajal



'MySQL-i andmebaasidega töötades võite UPDATE või DELETE juhiste täitmisel käivituda veakoodiga 1175.'

See postitus käsitleb selle vea põhjust ja seda, kuidas seda MySQL-serveri abil lahendada.







Mis põhjustab 'MySQL-i veakoodi 1175'?

'MySQL-i veakood 1175' ilmneb UPDATE või DELETE toimingu sooritamisel ilma WHERE-klauslit kasutamata.



Vaikimisi kasutab MySQL funktsiooni nimega safe_mode, mis takistab teil käivitada käsku UPDATE või DELETE ilma WHERE-klauslita. See hoiab ära juhusliku andmete kadumise sihtmärgil.



Seega, kui funktsioon safe_mode on aktiveeritud, tagastab MySQL veakoodi 1175 mis tahes DELETE- või UPDATE-toimingu puhul, mis ei sisalda WHERE-klauslit.





Näide on näidatud allpool:

uuendus sakila.film seatud pealkiri = 'Uus pealkiri' ;



Sel juhul proovime muuta pealkirja veeru väärtust, täpsustamata, millist rida soovime sihtida. Selle tulemusena võime kogu tabeli määratud väärtusega üle kirjutada. Seega takistab MySQL seda ja tagastab tõrke, nagu näidatud:

MySQL Kontrollige, kas Safe_Mode on lubatud

Funktsiooni Safe_mode olek salvestatakse muutujasse sql_safe_updates. Seega saame hankida selle muutuja väärtuse, et teha kindlaks, kas funktsioon safe_mode on lubatud või mitte.

Päring on selline, nagu näidatud:

näita muutujaid nagu 'sql_safe_updates' ;

Päring peaks tagastama oleku nagu näidatud:

+------------------+-------+
| Muutuja_nimi | Väärtus |
+------------------+-------+
| sql_safe_updates | PEAL |
+------------------+-------+
1 rida sisse seatud ( 0.00 sek )

Sel juhul näeme, et seansil on funktsioon safe_mode lubatud.

Kuidas lahendada 'MySQL-i veakood 1175'

Parim viis seda tüüpi vea lahendamiseks on WHERE-klausli kasutamine. Kuid mõnel juhul võib meil tekkida vajadus teha VÄRSKENDAMINE või KUSTUTAMINE ilma tingimusteta.

Selleks saame seansil keelata funktsiooni safe_mode, mis võimaldab meil päringut täita. Seejärel saame kasutada käsku SET, millele järgneb muutuja nimi ja väärtus, mida soovime seada.

Näiteks turvalise_režiimi keelamiseks määrame muutuja sql_safe_updates väärtuseks 0. Päring on selline:

SET SQL_SAFE_UPDATES = 0 ;

Selle lubamiseks määrake väärtuseks 1 järgmiselt:

SET SQL_SAFE_UPDATES = 1 ;

MySQL Workbenchis saate funktsiooni safe_mode keelata, liikudes menüüsse Redigeerimine-> Eelistused -> SQL-redaktor

Keelake funktsioon 'Ohutud värskendused' ja taaskäivitage seanss serveris.

Lõpetamine

Selles postituses õppisite UPDATE või DELETE avalduste tegemisel teada MySQL-i veakoodi 1175 põhjuse. Samuti õppisite, kuidas viga lahendada, keelates MySQL-i turvarežiimi funktsiooni.