你可能想知道mysql以下三種資訊:
查詢結果資訊: select, update 或 delete語句影響的記錄數。
資料庫和資料表的資訊: 包含了資料庫及資料表的結構資訊。
mysql伺服器資訊: 包含了資料庫伺服器的當前狀態,版本號等。
在mysql的命令提示符中,我們可以很容易的獲取以上伺服器資訊。 但如果使用perl或php等指令碼語言,你就需要呼叫特定的介面函式來獲取。 接下來我們會詳細介紹。
獲取查詢語句影響的記錄數
perl 例項
在 dbi 指令碼中, 語句影響的記錄數通過函式 do( ) 或 execute( )返回:
# 方法 1
# 使用do( ) 執行 $query
my $count = $dbh->do ($query);
# 如果發生錯誤會輸出 0
printf "%d rows were affected\n", (defined ($count) ? $count : 0);
# 方法 2
# 使用prepare( ) 及 execute( ) 執行 $query
my $sth = $dbh->prepare ($query);
my $count = $sth->execute ( );
printf "%d rows were affected\n", (defined ($count) ? $count : 0);
php 例項
在php中,你可以使用 mysql_affected_rows( ) 函式來獲取查詢語句影響的記錄數。
$result_id = mysql_query ($query, $conn_id);
# 如果查詢失敗返回
$count = ($result_id ? mysql_affected_rows ($conn_id) : 0);
print ("$count rows were affected\n");
資料庫和資料表列表
你可以很容易的在mysql伺服器中獲取資料庫和資料表列表。 如果你沒有足夠的許可權,結果將返回 null。
你也可以使用 show tables 或 show databases 語句來獲取資料庫和資料表列表。
perl 例項
# 獲取當前資料庫中所有可用的表。
my @tables = $dbh->tables ( );
foreach $table (@tables ){
print "table name $table\n";
php 例項
$con = mysql_connect("localhost", "userid", "password");
if (!$con)
die('could not connect: ' . mysql_error());
$db_list = mysql_list_dbs($con);
while ($db = mysql_fetch_object($db_list))
echo $db->database . "
";mysql_close($con);
獲取伺服器元資料
以下命令語句可以在mysql的命令提示符使用,也可以在指令碼中 使用,如php指令碼。
命令描述
select version( )
伺服器版本資訊
select database( )
當前資料庫名 (或者返回空)
select user( )
當前使用者名稱
show status
伺服器狀態
show variables
伺服器配置變數
mysql 元資料 MySQL 元資料
mysql 元資料 你可能想知道mysql以下三種資訊 查詢結果資訊 select,update 或 delete語句影響的記錄數。資料庫和資料表的資訊 包含了資料庫及資料表的結構資訊。mysql伺服器資訊 包含了資料庫伺服器的當前狀態,版本號等。在mysql的命令提示符中,我們可以很容易的獲取以上...
mysql元資料同步 MySQL 元資料
mysql 元資料 你可能想知道mysql以下三種資訊 查詢結果資訊 select,update 或 delete語句影響的記錄數。資料庫和資料表的資訊 包含了資料庫及資料表的結構資訊。mysql伺服器資訊 包含了資料庫伺服器的當前狀態,版本號等。在mysql的命令提示符中,我們可以很容易的獲取以上...
mysql 元資料修改 Mysql 元資料操作
記錄幾個mysql元資料操作的語句,以備後用 安裝好mysql之後在例項下缺省會有 mysql information schema performation schema mysql 配置資訊 使用者資訊 慢日誌 server資訊 information schema 記錄全域性 database...