DMRY.NET’e Hoşgeldiniz
Nerdeyim? GirişMySQL › MySQL veritabanında birden fazla tabloda silme işlemi

MySQL veritabanında seçme, ekleme ve güncelleme dışında bir de silme işlemi yapmaktayız yoğun olarak elbet. Ancak bu sorgularımızdaki titizliği, silme sorgularımızda göstermiyoruz. Tek sorgu ile birden fazla tabloda silme yapabilecek olmamıza karşın, bunu birden fazla sorgu ile yapmayı tercih ediyoruz.

Birden fazla tablodan veri silinmesi

Web sitemize üye alımı yaptığımızı kabul edelim. Tüm üye hesap bilgileri db_uye tablomuzda, ve üyelerin profil bilgileri ise db_uye_data tablosunda yer alsın. Ana tabloda benzersiz üye numarsı ID, ve profil tablosundaki eşdeğeri ise uyeID sütunu olsun.

Gün gelip 125 ID numaralı üyeyi silmek istersek,

DELETE FROM db_uye WHERE ID=125
DELETE FROM db_uye_data WHERE uyeID=125

sorgularını kullanmak olmaz. Ancak genelde böyle kullanırız bizler. Ama gelin onu tek sorguya indirelim ve artık alttakini kullanalım.

DELETE bu, bud FROM db_uye AS bu, db_uye_data AS bud WHERE bu.ID=bud.uyeID AND bu.ID=125

Gördüğünüz gibi birbirlerine benzersiz üye numarası ile ilişkili olan her iki tablodan da silme işlemini yaptık. Buradaki tablo sayısını, tabloların ilişki durumlara göre elbet de çoğaltabilirsiniz.

Bu yazı 20 Eylül 2008, 10:35 tarihinde yazılmış olup bu zamana kadar 495 kez görüntülenmiştir
En son ise 3 Ekim 2008, 16:52 tarihinde güncellenmiştir

Bu yazı 2 adet yorum almıştır ve bunların tamamı görüntülenmektedir.

#2 – 23 Eylül 2008 , 04:00

ah şu sql ah şu mysql ne kadar cok sevdıgım 2 şey :)
uzun zamandır ben bu kodu kullanıyorum.. özellikle kategori sil kısımlarını kullandıgımda ıcerık ıcınde kategori idsine ait olan verileride sildiriyorum :) yane işe yarar bir kod her zaman butun projelerimdekullanmışımdır..

  • Yorumlar: 1
  • İlk Yorum:
    23 Eyl. 2008
#1 – 22 Eylül 2008 , 01:25

Yazdığın bu SQL ipucular benim PHP projelerimden bir çok satırın atılmasına neden oldu. Sanırım benim gibi bir çok kişininde öyle olmuştur. Çok teşekkürler.

  • Yorumlar: 6
  • İlk Yorum:
    30 Nis. 2008
YAZIYI BEĞENDİN Mİ?

Yazını çok beğendim. Yeni yazılarının e-posta adresime gelmesini istiyorum :)

Haberler RSS Yorumlar RSS

© 2009 Tüm hakları dmRy.net'e aittir.
Kullanım şartları yerine getirilmeden hiçbir şekilde kopyala-yapıştır yapılamaz, yazılar ve bilgiler kullanılamaz.