Nasıl MySQL birden çok tablodan silmek için? | Netgez.com
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

  • Influencer Plus

    Influencer P

    2 Ocak 2013
  • Jordie Jordan

    Jordie Jorda

    27 Ocak 2008
  • Ownage Pranks

    Ownage Prank

    13 AÄžUSTOS 2007