Le tabelle possono essere eliminate, indipendentemente dal fatto che abbiano o meno dei dati al loro interno quando viene eseguito il comando. Non so di nessun database che operi diversamente. Quindi questo significa:
1) Ottenere un elenco delle tabelle -
SELECT name
FROM sqlite_master
WHERE type = 'table'
2) iterare quella lista, utilizzando COUNT (*) per determinare se sono presenti tutte le righe di una tabella:
SELECT COUNT(*)
FROM ~table
3) Se il numero restituito è inferiore a 1, eseguire un'istruzione DROP:
DROP TABLE ~table
SQLite non ha fu supporto di stored procedure o stored - dovrai farlo dalla tua applicazione.
fonte
2010-02-19 22:44:42
Molto probabilmente può essere fatto nello script di shell o in perl. – Yada
Ho bisogno di farlo su un telefono cellulare (nessun guscio lì). Su un telefono Windows Mobile. – Pentium10
Abbiamo bisogno di sapere quali lingue sono disponibili (perchè non ne sono a conoscenza, comunque). –