首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 獲取表結構定義:SHOW CREATE TABLE 與 PHP 程式化輸出

     編輯:MySQL 資料庫相關知識

方法一:SQL 命令列直接查詢

mysql> SHOW CREATE TABLE category;

輸出包含完整 CREATE TABLE 陳述式,含欄位定義、索引、引擎、字符集等元數據。

方法二:PHP 程式化獲取(適用於管理介面開發)

$sql = "SHOW CREATE TABLE category";
$res = mysql_query($sql) or die(mysql_error());
while ($obj = mysql_fetch_object($res)) {
    print_r($obj);
    echo "
"; }

輸出範例:

stdClass Object
(
    [Table] => category
    [Create Table] => CREATE TABLE `category` (
      `CategoryID` int(10) unsigned NOT NULL default '0',
      `CategoryName` varchar(80) NOT NULL default '',
      `ParentID` int(10) unsigned NOT NULL default '0',
      `KeyWords` varchar(255) NOT NULL default '',
      `ProductCount` mediumint(6) unsigned NOT NULL default '0',
      `TradeLeadCount` mediumint(6) NOT NULL default '0',
      `CompanyCount` mediumint(6) NOT NULL default '0',
      `B2soutletcount` mediumint(6) unsigned NOT NULL default '0',
      `CategoryType` tinyint(1) NOT NULL default '0',
      `Section` tinyint(1) unsigned NOT NULL default '0',
      `IsLeaf` tinyint(1) NOT NULL default '1',
      `Link` int(10) unsigned NOT NULL default '0',
      PRIMARY KEY (`CategoryID`),
      KEY `GroupName` (`CategoryName`),
      KEY `ParentID` (`ParentID`),
      KEY `CategoryType` (`CategoryType`),
      KEY `Section` (`Section`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1
)

進階:MySQL 客戶端記錄輸出至檔案

mysql> tee outmsg.log
# 後續所有命令列輸出將同步寫入 outmsg.log

SHOW 指令家族速查

SHOW 提供豐富的中繼資料查詢,常用者包括:

指令用途
SHOW CREATE TABLE tbl_name顯示建表 SQL
SHOW COLUMNS FROM tbl_name欄位詳細定義
SHOW INDEX FROM tbl_name索引資訊
SHOW TABLE STATUS表統計資訊(行數、大小、引擎等)
SHOW DATABASES列出所有資料庫
SHOW ENGINES支援的儲存引擎
SHOW VARIABLES系統變數(含字符集、緩衝區大小等)
SHOW PROCESSLIST當前執行緒/查詢狀態

多數 SHOW 支援 LIKE 'pattern' 過濾,部分支援 WHERE 子句,靈活性極高。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved