"TBL_ *" ile başlayan adlar var, ama hepsini tek bir komutla bırakamam.Tüm tabloları sql geliştiricisi bırakın
Bu tabloları nasıl bırakabilirim?
"TBL_ *" ile başlayan adlar var, ama hepsini tek bir komutla bırakamam.Tüm tabloları sql geliştiricisi bırakın
Bu tabloları nasıl bırakabilirim?
Özellikle, user_tables öğesinden Table_name öğesini seçtiğiniz ve bu döngüyü yinelediğiniz ve bunları bırakmak için "anında çalıştır" komutunu kullandığınız bir komut dosyası yazabilirsiniz.
Ama bu öneririm - sql aracında
select 'drop table ' || table_name || ';' from user_tables where table_name like 'TBL_%'
Sonra bu sorgu çıktısını kopyalayıp sql düzenleyiciye yapıştırın ve yürütmek yapmak. Unutmayın, eğer editörünüz sql + ise, hepsini yapıştırırsanız, çalıştırmayı başlatacaklardır. İlk önce gözden geçirmek ve düzenlemek için not defteri kullanmak isteyebilirsiniz.
Ancak, tek bir komutta birden fazla tablonun altına düşemezsiniz. Damla masanın http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_9003.htm
BEGIN
--Bye Tables!
FOR i IN (SELECT ut.table_name
FROM USER_TABLES ut) LOOP
EXECUTE IMMEDIATE 'drop table '|| i.table_name ||' CASCADE CONSTRAINTS ';
END LOOP;
END;
ile ilişkili diğer seçenekler için bu bağlantıyı kontrol edin 3 yıl önce benim orijinal cevap> 'de bu tekniği tanımladı. Ve veriyle çalışırken tehlikeli olabileceğine dikkat çektim. Http://stackoverflow.com/a/18030453/1704458 –
Bu, kullanıcı tarafından özellikle "TBL_" ile başlayan tabloların * sorulmasından dolayı, bir düşüş yaşanıyor. hepsini sil! – theMayer