Aller au contenu

Tester l�existence d�une table


francoisch

Sujets conseillés

Bonjour

Jécris dans des tables MySql classiquement avec des Insert, Delete, Replace, ...

Parfois, pour une raison que je peux expliquer, une table nexiste pas.

Quel ordre MySql pourrais je utiliser pour commencer par tester lexistence de la table avant dy écrire ?

Naturellement, la base existe.

Par avance merci.

Francois

Lien vers le commentaire
Partager sur d’autres sites

Quand tu fais un export de données et structures, tu peux ajouter l'énoncé "Drop if exist" ou un truc comme ca... :)

Tu peux donc le détourner pour tes besoins...

Instruction sur Table1 IF EXISTS table1

A tester :)

Autre solution, faire un "SHOW TABLES LIKE '%Ma table%'"

Si tu retrouves dans la liste de résultat, ta table, c'est qu'elle existe :)

Lien vers le commentaire
Partager sur d’autres sites

bonjour et merci de vos réponses.

Je suis en Php, ce que j'ai oublié de dire à l'origine.

J'aimerai trouver le code exact pour faire un SHOW_TABLES qui me permette de tester l'existence de la table.

Sinon, Non, je ne perd pas de tables; ma situation est diffrente mais son explication n'apporterait rien ici.

Par avance merci.

Francois

Lien vers le commentaire
Partager sur d’autres sites

J'ai trouvé une solution:

/** Vérifier si $table est dans $db */
function table_ok($db, $table){
$query = "SHOW TABLES FROM $db";
$runQuery = mysql_query($query);

$tables = array();
while($row = mysql_fetch_row($runQuery)){
$tables[] = $row[0];
}

if(in_array($table, $tables)){
return TRUE;
}
}

Merci de votre aide.

Francois

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...