Kalle_B: Prüfen, ob eine MySQL-Tabelle vorhanden ist

Beitrag lesen

Hallo André,

danke für dein Script.

Bei JEDER Prüfung eines Tabellennamens greifst du aber auf die DB zu, ohne neue Informationen zu bekommen.

Ausgehend von deinem Vorschlag, müsste dies hier die TURBO-VERSION sein:

// TABELLEN-NAMEN AUS ZIELDATENBANK LESEN
// ++++++++++++++++++++++++++++++++++++++
$q      = "SHOW TABLES";
$tables = mysql_query( $q, $db[1]['conn_id'] );

function TableExists( $tabelle ) {
  global $tables;
  mysql_data_seek ( $tables, 0 );
  $ergebnis = FALSE;
  while ( $row = mysql_fetch_array( $tables )) {
//  echo $row[0]."<br>";
    if ( $row[0] == $tabelle ) {
      $ergebnis = TRUE;
      break;
    }
  }
  return $ergebnis;
}

if ( TableExists( "neu_tm_owner" )) echo "<p>BINGO: neu_tm_owner</p>"; else echo "<p>SORRY: neu_tm_owner</p>";
if ( TableExists( "alt_tm_owner" )) echo "<p>BINGO: alt_tm_owner</p>"; else echo "<p>SORRY: alt_tm_owner</p>";
// Pruefung, ob RESET funktioniert:
if ( TableExists( "neu_tm_owner" )) echo "<p>BINGO: neu_tm_owner</p>"; else echo "<p>SORRY: neu_tm_owner</p>";

Danke für deine Anregung.

Kalle