MySQL Güncelleme – Update
Tabloya daha önce girilmiş verilerin değiştirilmesi için Update ifadesi kullanılır.
UPDATE tabloAdi
SET alan1=’deger1′, alan2=’deger2′,…
WHERE kosul;
Uyarı:Update komutu koşulsuz yazılmamalıdır. Where ifadesi olmayan update, tablodaki tüm kayıtları değiştirir.
MariaDB [obs]> select * from ogrenci; +----------+--------+----------+------------+------------+-----------+ | ogrNo | adi | soyadi | mobil | dtarihi | bolumu | +----------+--------+----------+------------+------------+-----------+ | 03050095 | Ayşe | Güneş | NULL | 1998-03-01 | NULL | | 20220001 | Canan | Demirel | 5351234567 | 1940-03-10 | Astronomi | | 22050917 | Murat | ulupınar | NULL | NULL | NULL | | 75050917 | Temel | Demir | NULL | NULL | NULL | | 91050075 | Gülçin | Demircan | 532100011 | NULL | NULL | | 91050099 | Yahya | Demircan | 532100010 | 2022-03-10 | Matematik | +----------+--------+----------+------------+------------+-----------+ 6 rows in set (0.001 sec)
Örnek:
22050917 nolu öğrencinin soyadı yanlış girilmiş, Sulupınar olmalıydı.
MariaDB [obs]> update ogrenci set soyadi='Sulupınar' where ogrNo='22050917'; Query OK, 1 row affected (0.059 sec) Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [obs]> select * from ogrenci; +----------+--------+-----------+------------+------------+-----------+ | ogrNo | adi | soyadi | mobil | dtarihi | bolumu | +----------+--------+-----------+------------+------------+-----------+ | 03050095 | Ayşe | Güneş | NULL | 1998-03-01 | NULL | | 20220001 | Canan | Demirel | 5351234567 | 1940-03-10 | Astronomi | | 22050917 | Murat | Sulupınar | NULL | NULL | NULL | | 75050917 | Temel | Demir | NULL | NULL | NULL | | 91050075 | Gülçin | Demircan | 532100011 | NULL | NULL | | 91050099 | Yahya | Demircan | 532100010 | 2022-03-10 | Matematik | +----------+--------+-----------+------------+------------+-----------+ 6 rows in set (0.000 sec)
Birden azla Alanı Güncelleme.
Temel Demir, telefonu 5557779777, doğum tarihi 28/01/1989 ve Fizik bölümündedir.
MariaDB [obs]> update ogrenci set mobil='5557779777',dtarihi='1989-01-28',bolumu='Fizik' where ogrNo='75050917'; Query OK, 0 rows affected (0.000 sec) Rows matched: 1 Changed: 0 Warnings: 0
Uyarı: where adi=’Temel’ and soyadi=’Demir’ şeklinde neden yazılmadı?, Çünkü aynı ad ve soyada sahip kayıt olabilir, o zaman hepsi güncellenir.