MySQL'de GÜNCELLEME Sırasında MySQL Hata Kodu 1175

Mysql De Guncelleme Sirasinda Mysql Hata Kodu 1175



“MySQL veritabanlarıyla çalışırken, GÜNCELLEME veya SİLME talimatlarını gerçekleştirirken tetiklenen “Hata Kodu 1175” ile karşılaşabilirsiniz.”

Bu gönderi, bu hatanın nedenini ve MySQL sunucusunu kullanarak nasıl çözebileceğimizi tartışacaktır.







“MySQL Hata Kodu 1175”e Neden Olan Nedir?

WHERE yan tümcesi kullanılmadan bir GÜNCELLEME veya SİLME işlemi gerçekleştirilirken “MySQL Hata Kodu 1175” oluşur.



Varsayılan olarak MySQL, WHERE yan tümcesi olmadan bir UPDATE veya DELETE ifadesini yürütmenizi engelleyen safe_mode adlı bir özellik kullanır. Bu, hedefte herhangi bir kazara veri kaybını önler.



Bu nedenle, safe_mode özelliği etkinleştirildiğinde, MySQL, WHERE yan tümcesi içermeyen herhangi bir DELETE veya UPDATE işleminde 1175 hata kodunu döndürür.





Aşağıda bir örnek gösterilmiştir:

güncelleme sakila.film Ayarlamak başlık = 'Yeni Başlık' ;



Bu durumda, hangi satırı hedeflemek istediğimizi belirtmeden başlık sütununun değerini değiştirmeye çalışıyoruz. Bu, belirtilen değerle tüm tablonun üzerine yazmamıza neden olabilir. Bu nedenle, MySQL bunu önleyecek ve gösterildiği gibi bir hata döndürecektir:

MySQL, Safe_Mode'un Etkin olup olmadığını kontrol edin

safe_mode özelliğinin durumu, sql_safe_updates değişkeninde saklanır. Bu nedenle, safe_mode özelliğinin etkin olup olmadığını belirlemek için bu değişkenin değerini alabiliriz.

Sorgu gösterildiği gibidir:

gibi değişkenleri göster 'sql_safe_updates' ;

Sorgu, durumu gösterildiği gibi döndürmelidir:

+----------------------+-------+
| Değişken ismi | Değer |
+----------------------+-------+
| sql_safe_updates | ÜZERİNDE |
+----------------------+-------+
1 sıra içinde Ayarlamak ( 0,00 saniye )

Bu durumda, oturumda safe_mode özelliğinin etkinleştirildiğini görebiliriz.

“MySQL Hata Kodu 1175” Nasıl Çözülür

Bu tür bir hatayı çözmenin en iyi yolu bir WHERE yan tümcesi kullanmaktır. Ancak bazı durumlarda herhangi bir koşul olmaksızın GÜNCELLEME veya SİLME yapmamız gerekebilir.

Bunu yapmak için oturumda safe_mode özelliğini devre dışı bırakarak sorguyu yürütmemize izin verebiliriz. Ardından SET komutunu ve ardından değişken adını ve ayarlamak istediğimiz değeri kullanabiliriz.

Örneğin, safe_mode'u devre dışı bırakmak için sql_safe_updates değişkeninin değerini 0 olarak belirledik. Sorgu aşağıdaki gibidir:

SET SQL_SAFE_UPDATES = 0 ;

Etkinleştirmek için değeri 1 olarak ayarlayın:

SET SQL_SAFE_UPDATES = 1 ;

MySQL Workbench'te, Düzenle-> Tercihler -> SQL Düzenleyici'ye giderek safe_mode özelliğini devre dışı bırakabilirsiniz.

“Güvenli Güncellemeler” özelliğini devre dışı bıraktı ve oturumunuzu sunucuda yeniden başlattı.

Sonlandırma

UPDATE veya DELETE deyimlerini gerçekleştirirken “MySQL Hata Kodu 1175” in nedenini bu gönderide öğrendiniz. Ayrıca MySQL safe_mode özelliğini devre dışı bırakarak hatayı nasıl çözeceğinizi de öğrendiniz.