update (Tablodaki Verileri Değiştirme)

UPDATE tablo_adi SET kolon1 = değer1, kolon2 = değer2, ...
WHERE koşul;

where ifadesi opsiyoneldir. where ile koşul belirtilmezse değişiklik tablodaki tüm
satırlarda yapılır.

UPDATE film SET title = ‘Zoo Lander Fiction’ WHERE film_id = 999;

film_id = 999 olan satırda title kolonundaki değeri değiştirdi. Eğer where ile koşul
belirtmeseydik tablodaki title kolonundaki tüm değerler ‘Zoo Lander Fiction’ değeri ile
değişecekti.

UPDATE film SET release_year = ‘İki bin On’ WHERE film_id = 99 ;

Sorgu sonucu ekranda dönen hata mesajında kolonun belirtilmiş türü ile yeni verilen
değerin türünün aynı olmadığı bildirilir.
**Veriler update edilirken kolonların türü dikkate alınmalıdır.

Birden çok satırda değişiklik yapmak için;

UPDATE film SET language_id=3 WHERE film_id BETWEEN 17 and 20 ;

Sorgu film_id değeri 17 ve 20 arasında olan satırlarda değişiklik yapar.

UPDATE film SET language_id=1 WHERE (film_id=17 or film_id=20) ;

Sorgu film_id değeri 17 veya 20 olan satırlarda değişiklik yapar. (Yani 2 satırda değişiklik
yapılır.)

UPDATE film SET language_id=2 WHERE (film_id=17 and film_id=20) ;

Sorgu mantık olarak doğrudur ve çalışır ancak hiçbir satırda değişiklik yapılmaz bu
yüzden UPDATE 0 değeri ekranda döner. Çünkü film_id değeri hem 17 hem de 20 olan
bir satır yoktur.

UPDATE film SET language_id=2 WHERE title LIKE '%lone%'
returning *;

UPDATE film SET language_id=2 WHERE title LIKE 'alone%' ;

Sorgu çalışır ancak herhangi bir satırda değişiklik olmaz sorgunun doğru çalışması için
aşağıdaki iki komut kullanılmalır.

UPDATE film SET language_id=2 WHERE title LIKE 'Alone%' ;
UPDATE film SET language_id=2 WHERE title ILIKE 'alone%' ;
UPDATE film SET language_id=2 WHERE title ILIKE 'Alone%'
Kategori seçin...