SORU
26 Temmuz 2010, PAZARTESİ


Nasıl MySQL birden çok tablodan silmek için?

Bir kaç tablodan aynı anda silmek için çalışıyorum. Biraz araştırma yaptım ve bu çıktı

DELETE FROM `pets` p,
            `pets_activities` pa
      WHERE p.`order` > :order
        AND p.`pet_id` = :pet_id
        AND pa.`id` = p.`pet_id`

Ancak, bu hata alıyorum

Yakalanmamış Database_Exception [ 1064 ]: bir hata, SQL sözdizimi; onay manuel karşılık gelen için MySQL sunucu sürümü için doğru sözdizimi için kullanmak yakınlarındaki 'S, pets_activities pa...

Daha önce çapraz tablo sil yaptım, şu an için tecrübesiz ve tıkıldım kaldım!

Neyi yanlış yapıyorum?

CEVAP
11 Temmuz 2012, ÇARŞAMBA


JOIN DELETE bir deyim.

DELETE p, pa
      FROM pets p
      JOIN pets_activities pa ON pa.id = p.pet_id
     WHERE p.order > :order
       AND p.pet_id = :pet_id

Alternatif olarak kullanabilirsiniz...

DELETE pa
      FROM pets_activities pa
      JOIN pets p ON pa.id = p.pet_id
 WHERE p.order > :order
   AND p.pet_id = :pet_id

...sadece pets_activities silmek için

http://dev.mysql.com/doc/refman/5.0/en/delete.html bkz

Henüz tutarlılığı ile tek masa siler,,,, vs VAR, VAR DEĞİL yapmanın başka yolları da vardır. Ama fıkra önce takma isimle silmek için hangi belirtin nerede yukarıda bir çok sıkı bir kaç leke daha kolay olabilir. Vakaların ™ oranında VAROLAN bir ulaşmak eğilimindedir ve bu MySQL sözdizimi gün aldığı 1'i var.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Gan Eden Productions

    Gan Eden Pro

    11 HAZİRAN 2011
  • Julia Graf

    Julia Graf

    6 Mayıs 2006
  • Paste Magazine

    Paste Magazi

    28 AĞUSTOS 2008