Arama butonu
Bu konudaki kullanıcılar: 1 misafir
5
Cevap
78056
Tıklama
0
Öne Çıkarma
SQL UPDATE Komutu ile bir çok alanı Güncellemek
M
19 yıl
Yarbay
Konu Sahibi

Php ve MySQL 'i yeni yeni öğreniyorum. Veritabanına veriler giriyorum ancak bu verileri düzenlemek istediğimde sorun yaşadım.
sorunum bir yazım hatası mı, yoksa mantıksal hata mı anlayamadım. Yapmak istediğim şu.

UPDATE komutnu öğrenmek için bulduğum örnekler şuna benziyor.

UPDATE tablo_adi SET sutun_adi = yeni_deger WHERE sutun_adi = gecerli_deger

Ben burada SET ten sonraki kısımda birçok alan değiştireceğim.

Yani benim SQL kodum şuna benzeyecek.
UPDATE tablo_adi SET sutun1=$yeni1,sutun2=$yeni2,sutun3=$yeni3 WHERE no=$no


altı çizili olanlar PHP değişkenlerim. WHERE kısmından sonraki no alanı Tekrarı olmayan Autoincrement veri tipine sahip.
düzenlemek istediğim satırı seçerken o satırın no alanında ki değerini alıp sadece o alanı değiştiriyorum.

ama bunu yaptıgım zaman değişikliği bir türlü yapmıyor, acaba sorun nerede yardımcı olabilir misiniz?
birçok kitap ve internet sitesi araştırdım ancak UPDATE komutu iple ilgili hep ilk yazdıgım ornege benzer veriler kullanılmış.





< Bu mesaj bu kişi tarafından değiştirildi MaviAteş -- 13 Temmuz 2006; 11:22:03 >

Ş
19 yıl
Çavuş

kullandığın yöntem doğru
ama where şartını karşılamıyordur belki...
yani WHERE no=$no şartı karşılanmıyordur...





< Bu mesaj bu kişi tarafından değiştirildi şahinbey1 -- 15 Temmuz 2006; 21:52:08 >
Bu mesaja 1 cevap geldi.
N
17 yıl
Er

Bu başlık altında sormak doğru mu bilmiyorum ama, 2 adet sütunu

UPDATE urunler SET kategori_id=$kategori_id,urun_adi='$urun_adi' WHERE urun_id=$urun_id

şeklinde update etmek kolay. 2 adet sütun düzenleniyor. Peki diyelim ki 15 tane sütunu güncelleyeceğiz. hepsini teker teker UPDATE urunler SET ............ where urun_id=$urun_id şeklinde yazmak zorundamıyız yoksa daha kolay bir yolu var mı?


Bu mesaja 1 cevap geldi.
D
17 yıl
Teğmen

quote:

Orjinalden alıntı: Nedjima

Bu başlık altında sormak doğru mu bilmiyorum ama, 2 adet sütunu

UPDATE urunler SET kategori_id=$kategori_id,urun_adi='$urun_adi' WHERE urun_id=$urun_id

şeklinde update etmek kolay. 2 adet sütun düzenleniyor. Peki diyelim ki 15 tane sütunu güncelleyeceğiz. hepsini teker teker UPDATE urunler SET ............ where urun_id=$urun_id şeklinde yazmak zorundamıyız yoksa daha kolay bir yolu var mı?




Sql temel olarak küme işlemleri yapar. yani yaptığın her kısıtlama her işlem basit bir küme işlemidir. şunları güncelle (alanlar değerler) nerede (where) küme şartın. yani urun_id = 'xxx' .yani senin kümen urun_id leri xxx lere eşit olanların oluşturduğu kümedir. bu şekilde düşünürseniz daha rahat kavrayabilirsiniz


Bu mesaja 1 cevap geldi.
N
17 yıl
Er

öncelikle cevap verdiğiniz için teşekkürler.

Anlatmak istediğim 3 tabloyu birleştirmek için uzun uzun bunları yazmak gerekir mi? yani alttaki sorguyu çalıştırdığımda evet doğru şeyler geliyor. ama bu kullanım kötü mü yoksa normal bir kullanım mı?

select id,uyeadi,adi,soyadi,email,adresadi,ilgili,tel1,tel2,adres,haber,kayittarihi,adres_il.il,adres_ilce.ilce from uyeler,adres_il,adres_ilce where adres_il.no=uyeler.ilno and adres_ilce.no=uyeler.ilceno and adres_il.no=adres_ilce.il order by id

henüz pratikte pek iyi değilim sanırım..


Bu mesaja 1 cevap geldi.
D
17 yıl
Teğmen

quote:

Orjinalden alıntı: Nedjima

öncelikle cevap verdiğiniz için teşekkürler.

Anlatmak istediğim 3 tabloyu birleştirmek için uzun uzun bunları yazmak gerekir mi? yani alttaki sorguyu çalıştırdığımda evet doğru şeyler geliyor. ama bu kullanım kötü mü yoksa normal bir kullanım mı?

select id,uyeadi,adi,soyadi,email,adresadi,ilgili,tel1,tel2,adres,haber,kayittarihi,adres_il.il,adres_ilce.ilce from uyeler,adres_il,adres_ilce where adres_il.no=uyeler.ilno and adres_ilce.no=uyeler.ilceno and adres_il.no=adres_ilce.il order by id

henüz pratikte pek iyi değilim sanırım..


eve açıkça belirtmende fayda var...ancak bazı zamanlar joinler kullanılırken amaca göre left ,right ,outer ,inner gibi özelliklerinin belirtilmesi gerekir.. sql joinleri konusunu internetten araştırırsan daha yararlı olabilir



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.