Veri güncelleme, veritabanı ile çalışırken en önemli görevlerden biridir. Bu eğitimde, MySQL UPDATE deyimini nasıl kullanacağınızı öğreneceksiniz.
UPDATE deyimini, bir tablodaki mevcut verileri güncellemek için kullanırsınız. UPDATE deyimini, tek bir satırın, bir satır grubunun veya bir tablodaki tüm satırların sütun değerlerini değiştirmek için de kullanabilirsiniz.
Aşağıdaki MySQL UPDATE deyiminin sözdizimini gösterir:
1 2 3 4 5 6 7 8 9 | UPDATE [LOW_PRIORITY] [IGNORE] tabloadi SET sutun1= deger1, sutun2= deger2, ... [WHERE şart]; |
UPDATE ifadesinde:
- Öncelikle, UPDATE anahtar sözcüğünden sonra güncellemek istediğiniz tablo adını belirtin.
- İkinci olarak, SET cümlesi hangi sütunu değiştirmek istediğinizi ve yeni değerleri belirtir. Birden çok sütunu güncellemek için, virgülle ayrılmış atamaların bir listesini kullanırsınız. Her sütunun atamasında değişmez bir değer, ifade veya alt sorgu şeklinde bir değer sağlarsınız.
- Üçüncü olarak, WHERE yan tümcesinde bir koşul kullanılarak güncellenecektir. WHERE yan tümce isteğe bağlıdır. WHERE yan tümcesini kullanmazsanız, UPDATE deyimi tablodaki tüm satırları günceller. Bu genellikle istenilen bir durum değildir
WHERE ifadesini, unutmamak çok önemli olduğuna dikkat edin. Bazen sadece bir satırı değiştirmek isteyebilirsiniz; Ancak, WHERE yan tümcesini unutabilir ve tablonun tüm satırlarını yanlışlıkla güncelleyebilirsiniz.
MySQL, UPDATE deyiminde iki değiştiriciyi destekler.
- LOW_PRIORITY değiştiricisi, UPDATE deyimini, tablodan veri okumak için bağlantı kuruyana kadar güncellemeyi ertelemesini ister. LOW_PRIORITY, yalnızca tablo seviyesinde kilitleme kullanan depolama motorlarında, örneğin MyISAM, MERGE, MEMORY’de etkindir.
- IGNORE değiştiricisi, UPDATE deyiminin, hatalar oluşsa bile satırları güncellemeye devam etmesini sağlar. Çift anahtar çakışmaları olarak hatalara neden olan satırlar güncellenmez.
MySQL UPDATE Örnekleri
Örnek: 10B sınıfındaki öğrenci numarası 3 olan öğrenciyi 10C sınıfına geçirin.
1 2 3 4 5 6 | update ogrenci set sinif='10C' where ogrno=3 /*sorguyu görüntülemek için yazıldı*/ select * from ogrenci where ogrno=3 |
Örnek: 9A sınıfındaki tüm öğrencileri 10A sınıfına aktarın
1 2 3 4 5 6 | update ogrenci set sinif='10A' where sinif='9A' /*sorguyu görüntülemek için yazıldı*/ select * from ogrenci where sinif='10A' |
Örnek: Tüm öğrencilerin puanını 5 puan arttırın.
1 2 3 4 5 6 | update ogrenci set puan=puan+5 /*sorguyu görüntülemek için yazıldı*/ select * from ogrenci |
Örnek: En çok kitap okuyan öğrencinin puanını 15 puan arttıran sorguyu yazınız.(alt sorgu yada join ile yapılabilir)
1 2 3 4 5 6 7 8 9 10 11 12 13 | UPDATE ogrenci SET puan =puan + 15 WHERE ogrno = (SELECT ogrno FROM islem GROUP BY ogrno ORDER BY COUNT(islemno) DESC LIMIT 0,1 ) |
Bu eğitimde, bir veritabanı tablosundaki verileri güncellemek için MySQL UPDATE deyiminin nasıl kullanılacağını öğrendiniz.
1 Yorum