調(diào)用MySQL中數(shù)據(jù)庫元數(shù)據(jù)的方法
MySQL的三個信息:
- 查詢的結(jié)果有關(guān)的信息: 這包括由任何SELECT,UPDATE或DELETE語句產(chǎn)生數(shù)量的記錄。
- 表和數(shù)據(jù)庫有關(guān)的信息: 這包括表和數(shù)據(jù)庫的結(jié)構(gòu)有關(guān)的信息。
- MySQL服務(wù)器的信息: 這包括當(dāng)前狀態(tài)的數(shù)據(jù)庫服務(wù)器,版本號等。
在mysql提示符下很容易獲得所有這些信息。但是,當(dāng)使用Perl或PHP的API,那么我們就需要顯式地調(diào)用各種API獲得所有這些信息。下面的部分將告訴你如何獲得這些信息。
獲取查詢所影響的行數(shù):
PERL 實(shí)例:
在DBI腳本中,受影響的行數(shù)由do()或execute()方法返回,這取決于如何執(zhí)行查詢:
# Method 1 # execute $query using do( ) my $count = $dbh->do ($query); # report 0 rows if an error occurred printf "%d rows were affected\n", (defined ($count) ? $count : 0); # Method 2 # execute query using prepare( ) plus execute( ) my $sth = $dbh->prepare ($query); my $count = $sth->execute ( ); printf "%d rows were affected\n", (defined ($count) ? $count : 0);
PHP 實(shí)例:
在PHP中,調(diào)用mysql_affected_rows()函數(shù)找出多少行查詢改變:
$result_id = mysql_query ($query, $conn_id);
# report 0 rows if the query failed
$count = ($result_id ? mysql_affected_rows ($conn_id) : 0);
print ("$count rows were affected\n");
表和數(shù)據(jù)庫清單(列表):
很容易列出了所有與數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)庫和表。如果沒有足夠的權(quán)限結(jié)果可能是空的。
除了方法,我剛才提到下面可以使用SHOW TABLES或SHOW DATABASES查詢的表或數(shù)據(jù)庫的列表,無論是在PHP或PERL。
PERL 實(shí)例:
# Get all the tables available in current database.
my @tables = $dbh->tables ( );
foreach $table (@tables ){
print "Table Name $table\n";
}
PHP 實(shí)例:
<?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 . "<br />";
}
mysql_close($con);
?>
獲取服務(wù)器的元數(shù)據(jù):
在MySQL可以執(zhí)行下面的命令是mysql提示符下使用,或使用任何腳本,如PHP,數(shù)據(jù)庫服務(wù)器獲取各種重要信息。

相關(guān)文章
MySQL子查詢詳解(單行子查詢、多行子查詢與相關(guān)子查詢)
所謂子查詢是指在一個查詢中嵌套了其他的若干查詢,即在一個SELECT查詢語句的WHERE或FROM子句中包含另一個SELECT查詢語句,下面這篇文章主要給大家介紹了關(guān)于MySQL單行子查詢、多行子查詢與相關(guān)子查詢的相關(guān)資料,需要的朋友可以參考下2022-09-09
MySQL 百萬級數(shù)據(jù)的4種查詢優(yōu)化方式
本文講解了MySQL 百萬級數(shù)據(jù)的4種查詢優(yōu)化方式,大家可以根據(jù)自身需求,選擇適合自己的優(yōu)化方式2021-06-06
MySQL數(shù)據(jù)庫聚合查詢和聯(lián)合查詢詳解
聚合查詢就是在一個表里通過聚合函數(shù)進(jìn)行查詢操作,通常是求和,求平均值等操作,這篇文章主要介紹了MySQL聚合查詢和聯(lián)合查詢的相關(guān)資料,需要的朋友可以參考下2024-03-03
MYSQL初始化數(shù)據(jù)目錄的實(shí)現(xiàn)步驟
本文主要介紹了MYSQL初始化數(shù)據(jù)目錄的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-02-02
Mysql數(shù)據(jù)庫delete操作沒報錯卻刪除不了數(shù)據(jù)的解決
本文主要介紹了Mysql數(shù)據(jù)庫delete操作沒報錯卻刪除不了數(shù)據(jù)的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01

