MySQL 1175-ös hibakód a MySQL frissítése közben

Mysql 1175 Os Hibakod A Mysql Frissitese Kozben



'Miközben MySQL adatbázisokkal dolgozik, előfordulhat, hogy az '1175-ös hibakód' UPDATE vagy DELETE utasítások végrehajtása során vált ki.'

Ez a bejegyzés megvitatja a hiba okát és azt, hogyan tudjuk megoldani a MySQL-kiszolgáló használatával.







Mi okozza a „MySQL 1175-ös hibakódot”?

A „MySQL 1175-ös hibakód” akkor fordul elő, ha UPDATE vagy DELETE műveletet hajtanak végre a WHERE záradék használata nélkül.



Alapértelmezés szerint a MySQL a safe_mode nevű szolgáltatást használja, amely megakadályozza, hogy UPDATE vagy DELETE utasításokat hajtson végre WHERE záradék nélkül. Ez megakadályozza a véletlen adatvesztést a célponton.



Ezért a safe_mode funkció aktiválásakor a MySQL az 1175-ös hibakódot adja vissza minden olyan DELETE vagy UPDATE műveletnél, amely nem tartalmaz WHERE záradékot.





Az alábbiakban egy példa látható:

frissítés sakila.film készlet cím = 'Új cím' ;



Ebben az esetben megpróbáljuk megváltoztatni a cím oszlop értékét anélkül, hogy megadnánk, melyik sort szeretnénk megcélozni. Ez azt eredményezheti, hogy a teljes táblát felülírjuk a megadott értékkel. Ezért a MySQL megakadályozza ezt, és a képen látható hibát ad vissza:

MySQL Ellenőrizze, hogy a Safe_Mode engedélyezve van-e

A safe_mode szolgáltatás állapotát az sql_safe_updates változó tárolja. Ezért lekérhetjük ennek a változónak az értékét annak meghatározására, hogy a safe_mode funkció engedélyezve van-e vagy sem.

A lekérdezés a képen látható:

változók megjelenítése, mint 'sql_safe_updates' ;

A lekérdezésnek az alábbi állapotot kell visszaadnia:

+------------------+-------+
| Változó_neve | Érték |
+------------------+-------+
| sql_safe_updates | TOVÁBB |
+------------------+-------+
1 sor ban ben készlet ( 0,00 mp )

Ebben az esetben láthatjuk, hogy a safe_mode funkció engedélyezve van a munkamenetben.

A „MySQL Error Code 1175” megoldása

Az ilyen típusú hibák megoldásának legjobb módja a WHERE záradék használata. Bizonyos esetekben azonban előfordulhat, hogy feltétel nélkül kell végrehajtanunk az UPDATE vagy DELETE műveletet.

Ehhez a munkamenetben letilthatjuk a safe_mode funkciót, lehetővé téve a lekérdezés végrehajtását. Ezután használhatjuk a SET parancsot, majd a változó nevét és a beállítani kívánt értéket.

Például a safe_mode letiltásához az sql_safe_updates változó értékét 0-ra állítjuk. A lekérdezés a következő:

SET SQL_SAFE_UPDATES = 0 ;

Az engedélyezéséhez állítsa az értéket 1-re a következőképpen:

SET SQL_SAFE_UPDATES = 1 ;

A MySQL Workbenchben letilthatja a safe_mode funkciót a Szerkesztés-> Beállítások -> SQL-szerkesztő menüben.

Letiltotta a „Biztonságos frissítések” funkciót, és újraindította a munkamenetet a szerveren.

Felmondás

Ebben a bejegyzésben megtudta a „MySQL Error Code 1175” okát az UPDATE vagy DELETE utasítások végrehajtásakor. Azt is megtanulta, hogyan lehet megoldani a hibát a MySQL safe_mode funkciójának letiltásával.