2011-02-07 25 views
69

Tek bir veritabanından tek bir komutla birden çok tablo nasıl açılır. şey gibi a, b, c veritabanı testinden elde tablolardırBirden çok tabloyu mysql içinde tek bir kareye bırakın

> use test; 
> drop table a,b,c; 

.

+11

zaten kendi adlarını (üst metin kutusu) tarafından tabloları filtreleyebilirsiniz HeidiSQL aşağıda cevapları, uygun Kendini – ajreal

+0

cevap Bir sorguya 'drop table' yazma ve çift adını eklemek için İstenen her tabloyu tıklayın Sorgu (aralarında virgül koyun) ardından yürütmek için F9 tuşuna basın. Biraz konu dışı ama bunun için buraya geldim. –

cevap

87

Örnek:

masa iki çocuk B ve C. Sonra hepimiz tabloları düşmesi aşağıdaki sözdizimini kullanabilirsiniz olduğunu varsayalım.

DROP TABLE IF EXISTS B,C,A; 

Bu, her bir tabloyu tek tek bırakmak yerine komut dosyasının başına yerleştirilebilir.

+20

Belki de tabloların hiç bir ilişkiye sahip olmalarına gerek olmadığını belirtmek gerekir. Tamamen bağımsız olabilirler ve bu sözdizimi hala çalışır. – crmpicco

56
SET foreign_key_checks = 0; 
DROP TABLE IF EXISTS a,b,c; 
SET foreign_key_checks = 1; 

Onları doğru sırada bırakma konusunda endişelenmenize gerek yok.

+2

Fkey çeklerini (y) açarak beni bir çok güçlükten kurtardın. – HungryCoder

+0

Teşekkür ederim adam, çalışıyor. – sradha

-2
declare @sql1 nvarchar(max) 
SELECT @sql1 = 
    STUFF(
     (
      select ' drop table dbo.[' + name + ']' 

      FROM sys.sysobjects AS sobjects 
      WHERE (xtype = 'U') AND (name LIKE 'GROUP_BASE_NEW_WORK_%') 
      for xml path('') 
     ), 
    1, 1, '') 

    execute sp_executesql @sql1 
İlgili konular