テーブルの存在を判定するSQL文は以下のとおりです。
SHOW TABLES LIKE 'table_name';
このうち、table_nameは存在を判定するテーブルの名前です。
テーブルが存在する場合は結果セットが返され、それ以外の場合は空の結果セットが返されます。結果セットの長さを判断することで、テーブルが存在するかどうかを判断できます。
次は、テーブルが MySQL に存在するかどうかを判断するための基本的な PHP 関数です:
function tableExists($tableName, $mysqli) { $result = $mysqli->query("SHOW TABLES LIKE '".$tableName."'"); return ($result->num_rows == 1); }
この関数は 2 つのパラメータを取ります: チェックするテーブルの名前と MySQLi 接続オブジェクト ..この関数は、先ほど述べた SQL ステートメントを使用して、テーブルが存在するかどうかを確認します。これは、テーブルが存在する場合に TRUE を返すことによって示されます。存在しない場合は FALSE を返します。
以下は、上記の関数を使用してテーブルが存在するかどうかを確認する方法を示す完全な PHP スクリプトの例です。
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 创建与MySQL数据库的连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接是否正常 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } // 要检查的表的名称 $tableName = "mytable"; // 检查表是否存在 if (tableExists($tableName, $conn)) { echo "表 ".$tableName." 存在"; } else { echo "表 ".$tableName." 不存在"; } // 关闭连接 $conn->close();
MySQL 接続オブジェクトを作成し、先ほど説明した関数を使用して確認します。上の例に示すように、テーブルがすでに存在していることを確認します。存在する場合は「テーブルが存在する」と出力し、存在しない場合は「テーブルが存在しない」と出力します。
以上がSQL ステートメントを使用してテーブルが MySQL に存在するかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。