程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 調用MySQL中數據庫元數據的方法

調用MySQL中數據庫元數據的方法

編輯:關於MYSQL數據庫

 MySQL的三個信息:

  1.     查詢的結果有關的信息: 這包括由任何SELECT,UPDATE或DELETE語句產生數量的記錄。
  2.     表和數據庫有關的信息: 這包括表和數據庫的結構有關的信息。
  3.     MySQL服務器的信息: 這包括當前狀態的數據庫服務器,版本號等。

在mysql提示符下很容易獲得所有這些信息。但是,當使用Perl或PHP的API,那麼我們就需要顯式地調用各種API獲得所有這些信息。下面的部分將告訴你如何獲得這些信息。
獲取查詢所影響的行數:
PERL 實例:

在DBI腳本中,受影響的行數由do()或execute()方法返回,這取決於如何執行查詢:

# 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 實例:

在PHP中,調用mysql_affected_rows()函數找出多少行查詢改變:

$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");

表和數據庫清單(列表):

很容易列出了所有與數據庫服務器的數據庫和表。如果沒有足夠的權限結果可能是空的。

除了方法,我剛才提到下面可以使用SHOW TABLES或SHOW DATABASES查詢的表或數據庫的列表,無論是在PHP或PERL。
PERL 實例:

# Get all the tables available in current database.
my @tables = $dbh->tables ( );
foreach $table (@tables ){
  print "Table Name $table\n";
}

PHP 實例:

<?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);
?>

獲取服務器的元數據:

在MySQL可以執行下面的命令是mysql提示符下使用,或使用任何腳本,如PHP,數據庫服務器獲取各種重要信息。

2015527100023432.jpg (639×166)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved