2017-01-20 15 views
1

this質問があります。sqliteデータベースからすべてのテーブルを削除するコマンドがあります。例外を追加することは可能ですか?つまり、テーブルX YとZ以外のすべてのテーブルを削除しますか?sqliteで例外を含むすべてのテーブルを削除します

おかげ

EDITは、私もそれがSQLに可能であることを見ました。このスクリプトはsqliteに翻訳可能ですか?

答えて

2
PRAGMA writable_schema = 1; 
DELETE FROM sqlite_master WHERE type = 'table' AND name NOT IN ('X', 'Y', 'Z'); 
PRAGMA writable_schema = 0; 
VACUUM; 

または、DDLを取得する:

SELECT 'DROP TABLE ' || name || ';' FROM sqlite_master 
    WHERE type = 'table' AND name NOT IN ('X', 'Y', 'Z'); 
関連する問題