2009-09-19 3 views

Répondre

7

Pour détecter si une table existe en particulier, utilisez:

SELECT name 
    FROM sqlite_master 
WHERE type = 'table' 
    AND name LIKE '%your_table_name%' 
+0

meilleure réponse car il vérifie le type. – SecretDeveloper

+0

Je ne pense pas qu'il y ait un avantage à vérifier le type. S'il existe un index ou un déclencheur avec le même nom, la création de la table échoue toujours. – finnw

4

Il existe une table appelée sqlite_master qui contient le schéma de base de données. Vous pouvez exécuter une requête comme:

select count(*) from sqlite_master where name='users';

Si la requête renvoie 1, la table des « utilisateurs » existe. Vous pouvez également utiliser la if not exists construction SQL:

create table if not exists users (name, pwd);
Questions connexes