francoisch Posté 2 Février 2009 Posté 2 Février 2009 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
Portekoi Posté 2 Février 2009 Posté 2 Février 2009 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
Kioob Posté 2 Février 2009 Posté 2 Février 2009 Hello, à ta place je chercherais à comprendre pourquoi des tables "disparaissent"... ça n'est évidement pas du tout normal !
francoisch Posté 2 Février 2009 Auteur Posté 2 Février 2009 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
francoisch Posté 3 Février 2009 Auteur Posté 3 Février 2009 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
Kioob Posté 3 Février 2009 Posté 3 Février 2009 beurk.... et si pour une fois tu regardais dans la doc ?
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant