MySQL-データベース情報

MySQLメタデータの取得と使用

MySQLから取得したい情報には3つのタイプがあります。

  • Information about the result of queries −これには、SELECT、UPDATE、またはDELETEステートメントの影響を受けるレコードの数が含まれます。

  • Information about the tables and databases −これには、テーブルとデータベースの構造に関する情報が含まれます。

  • Information about the MySQL server −これには、データベースサーバーのステータス、バージョン番号などが含まれます。

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

テーブルとデータベースの一覧表示

データベースサーバーで使用可能なすべてのデータベースとテーブルを一覧表示するのは非常に簡単です。あなたの結果はnull 十分な権限がない場合。

次のコードブロックに示されている方法とは別に、次のコードブロックを使用できます。 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などのスクリプトを使用してデータベースサーバーに関するさまざまな重要な情報を取得することで実行できる重要なコマンドがいくつかあります。

シニア番号 コマンドと説明
1

SELECT VERSION( )

サーバーバージョン文字列

2

SELECT DATABASE( )

現在のデータベース名(ない場合は空)

3

SELECT USER( )

現在のユーザー名

4

SHOW STATUS

サーバーステータスインジケーター

5

SHOW VARIABLES

サーバー構成変数