[MySQL] Vérifier l'existence d'une table?

Vérifier l'existence d'une table? [MySQL] - Programmation

Marsh Posté le 14-12-2001 à 18:49:24    

Y a-t-il une syntaxe pour vérifier qu'une table existe, avant de tenter une requète dedans?

Reply

Marsh Posté le 14-12-2001 à 18:49:24   

Reply

Marsh Posté le 14-12-2001 à 19:47:14    

update : sortir de la boucle for dès qu'on trouve  
// nom de la table recherchée
$nom_table_cherche = "je_sais_pas_moi";
 
$trouve = false;
// trouver le nom de toutes les tables de ta BD
$result = mysql_list_tables("ma_Base" );
// passer les noms de tables en revue pour trouver la bonne
for($i=0; $i < mysql_num_rows($result); $i++)
{
     if(mysql_tablename($result, $i)==$nom_table_cherche)
     {
          $trouve = true;
          break;  
     }
}
 
// si $trouve == true alors ta table existe

 

[edtdd]--Message édité par z0rglub--[/edtdd]


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
Reply

Marsh Posté le 14-12-2001 à 19:48:33    

on peut mettre ceci avant une requête dans un fichier.sql
DROP TABLE IF EXISTS ma_table
 
y a surement moyen de l'utiliser dans ton cas
sinon
$query="SHOW TABLES";
$result= mysql_query($query);
TROUVE= FALSE
while($row= $mysql_fetch_array($result) || !TROUVE){
  if ($row[0]=="ma_table" ) TROUVE= TRUE;
}
if (TROUVE) echo "table trouvée";
else echo "table non trouvée";
 
ou qqch dans le genre.. ;)
 
*** grilled  :jap:  ***

 

[edtdd]--Message édité par ethernal--[/edtdd]

Reply

Marsh Posté le 14-12-2001 à 20:32:12    

ok, merci a tous les deux.

Reply

Marsh Posté le 14-12-2001 à 20:34:19    

ethernal utilise la requete MySQL "SHOW TABLES" et moi j'utilise la fonction php qui utilise indirectement la requete MySQL "SHOW TABLES" c'est donc la même chose.
Bonnechance


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
Reply

Marsh Posté le 14-12-2001 à 20:37:23    

vi mais moi j'ai jamais testé :D  :lol:  
 :jap:  
je suppose que l'on sait récupérer le résultat de "show tables" (je voulais le faire avec un mysql_fetch_object() mais étant donné que je ne connais pas le nom de la variable qu'il renvoit je suis maron :( )

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed