<?php
$server = 'localhost';
$user = 'root';
$pass = '';
$dbname = 'dayanmei_com';
$conn = mysql_connect($server, $user, $pass);
if (!$conn) die("數據庫連接失敗!");
mysql_select_db($dbname) or die("選擇數據庫失敗!");
$result = mysql_query("SHOW TABLES");
while ($row = mysql_fetch_array($result)) {
echo $row[0] . "<br>";
}
mysql_free_result($result);
?>
注意:mysql_* 擴展已棄用 (PHP 5.5+) 並移除 (PHP 7.0+),**生產環境請用 mysqli 或 PDO**。
$mysqli = new mysqli("localhost", "root", "", "dayanmei_com");
$result = $mysqli->query("SHOW TABLES");
while ($row = $result->fetch_row()) {
echo $row[0] . "<br>";
}
$result->free();
$mysqli->close();
$pdo = new PDO("mysql:host=localhost;dbname=dayanmei_com;charset=utf8mb4", "root", "");
$stmt = $pdo->query("SHOW TABLES");
while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
echo $row[0] . "<br>";
}
| 命令 | 用途 | 支持 LIKE |
|---|---|---|
| SHOW DATABASES | 列出所有數據庫 | 是 |
| SHOW TABLES [FROM db_name] | 列出表/視圖 | 是 |
| SHOW COLUMNS FROM tbl [FROM db] | 表結構 (等同 DESC) | 是 |
| SHOW INDEX FROM tbl [FROM db] | 索引信息 | 否 |
| SHOW STATUS | 服務器狀態變量 | 是 |
| SHOW VARIABLES | 配置參數 | 是 |
| SHOW PROCESSLIST | 當前線程 | 否 |
| SHOW TABLE STATUS [FROM db] | 表詳細狀態 (行數、大小、引擎...) | 是 |
| SHOW GRANTS FOR user | 用戶權限 | 否 |
SHOW DATABASES LIKE '%test'; -- 以 test 結尾的庫
SHOW TABLES FROM mydb LIKE 'log_%'; -- log_ 開頭的表
db_name.tbl_name 可替代 tbl_name FROM db_name,更簡潔:SHOW COLUMNS FROM mydb.users;
用戶無表任何權限時,該表不會出現在 SHOW TABLES 結果中。