UPDATE ifadesi , database(veritabanı) tablolarını yeniden düzenleme işlemini gerçekleştirir.
Bir Veritabanındaki Veriyi Güncelleme
UPDATE ifadesi veritabanındaki bilgileri düzenler.
Syntax
UPDATE tablo_adi
SET sutun_adi = yeni_bilgi
WHERE sutun_adi = aranan_bilgi
Verileri PHP ile sorgulayıp işlemek için mysql_query() fonksiyonu ile sorgu yapılır.Bu fonksiyon MySQL başlantısına sorguyu gönderir.
Örnek
İlk dersimizde “Arkadas” isimli veritabanı tablosunu oluşturmuştuk:
adi soyadi yas Atilla Atasoy 24 İzzet Norton 28
Aşağıdaki örnekte bu tablodaki bazı bilgileri güncelleyelim:
<?php
$con = mysql_connect(“localhost”,”serpito”,”abc123″);
if (!$con)
{
die(‘Bağlanamadı: ‘ . mysql_error());
}
mysql_select_db(“my_db”, $con);
mysql_query(“UPDATE Arkadas SET Age = ’25′
WHERE FirstName = ‘Atilla AND soyadi = ‘Atasoy’”);
mysql_close($con);
?>
Güncelleme işleminden sonra “Arkadas” veri tablosunun son hali şu şekildedir:
adi soyadi yas Atilla Atasoy 25 İzzet Norton 28


tşkler.
Bu yöntemle aynı anda birden fazla veri güncellemek mümkün değilmi,mümkünse nasıl? Ben yaptım dublice value hatası verdi! Mümkünse çoklu örenğiniz verirseniz sevinirim.
Aynı anda birden fazla veri derken , aynı kod blogu içinde mi demek istiyorsun , tam anlayamadım. bi while döngüsü kullanarak , istedigin sayıda veri güncelleyebilirsin.
misal:
…
$query=”SELECT tiklama FROM kitap LIMIT 0,20″;
$result=$dba->query($query);
while($row=$dba->fetch_assoc($result)){
$sorgu=”UPDATE kitap(tiklama) SET tiklama=tiklama+1″;
……
… (mantıksız bir çözüm ama , nasıl kullanıldığını göstermek için en basit yol bu)
}
yazdıklarından benim anladığım kadarıyla, bi örnek vermeye çalıştım. net olarak yapmak istediğini belirtirsen hedefi 12 den vururuz o zaman,
kolay gelsin
…
Üstteki ilk örneğinde arkadaslar tablosundaki age=24 olan verileri güncellemiş oldun. Kast ettiğim şey hem age=24 olan hem adi=atilla olan içerikte hem age değerini hem ad değerini hem soyad değerinde değişiklik yapsın mesela. Yani seçerken birden fazla değeri seçsin birden fazla değeri değiştirsin.
istediğin değişkene yeni değer atayabilirsin , aralarına (,)virgül koyarak , tablodaki her sütunu update edebilirsin.
UPDATE Arkadas SET Age = ‘25′,FirstName=’Alper’
WHERE FirstName = ‘Atilla‘ AND soyadi = ‘Atasoy’);
Hmm,anladım,uyguladım,oldu TEŞEKKÜRLER!
peki ben tek sorguda iki farklı satırda değişiklik yapmak istiyorum mesela no diye bir sütünüm var iki tanede girdim var birincisinin nosu 5 diyelim ikinicisinin no su 6 ben tek sorguda 5 olanı 6 , 6 olanı 5 yapabilirmiyim.teşekkürler.
Mysql syntax(söz dizimi) buna izin vermiyor durak.
O yüzden php de herhangi bir döngü kullanarak yapabilirsin istediğini.
örn:
while($x<10){
$query= “UPDATE arkadas SET Age=’25′ WHERE id=’$x’”;
…..
…
$x++;
}
değişkenleri ve yordamları kafana göre uyarlayabilirsin.