MySQL 数据库信息

MySQL 数据库信息

获取和使用MySQL元数据

你想从MySQL中获得三种类型的信息。

  • 查询结果信息 - 包括任何SELECT、UPDATE或DELETE语句影响的记录数。

  • 表和数据库信息 - 包括与表和数据库结构相关的信息。

  • MySQL服务器信息 - 包括数据库服务器的状态、版本号等。

在MySQL提示符下很容易获取所有这些信息,但在使用PERL或PHP API时,我们需要显式调用各种API来获取所有这些信息。

获取查询影响行数

现在我们来看如何获取这些信息。

PERL示例

在DBI脚本中,受影响行数由 do()execute() 命令返回,具体取决于你如何执行查询。

# Method 1
# execute query using do( )
mycount = 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);
mycount = 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");

列出表格和数据库

非常容易列出数据库服务器上可用的所有数据库和表格。如果没有足够的权限,你的结果可能为空。

除了下面代码块中显示的方法外,你也可以在PHP或PERL中使用 SHOW TABLESSHOW DATABASES 查询,以获得表格或数据库的列表。

PERL示例

# Get all the tables available in current database.
my @tables = dbh->tables ( );

foreachtable (@tables ){
   print "Table Name $table\n";
}

PHP示例

尝试以下示例以获取数据库信息 −

将以下示例复制并粘贴为mysql_example.php

<html>
   <head>
      <title>Getting MySQL Database Info</title>
   </head>
   <body>
      <?php
         dbhost = 'localhost';dbuser = 'root';
         dbpass = 'root@123';dbname = 'TUTORIALS';
         mysqli = new mysqli(dbhost, dbuser,dbpass, dbname);tutorial_count = null;

         if(mysqli->connect_errno ) {
            printf("Connect failed: %s<br />",mysqli->connect_error);
            exit();
         }
         printf('Connected successfully.<br />');

         if (result = mysqli_query(mysqli, "SELECT DATABASE()")) {
            row = mysqli_fetch_row(result);
            printf("Default database is %s<br />", row[0]);
            mysqli_free_result(result);
         }
         $mysqli->close();
      ?>
   </body>
</html>

输出

访问部署在Apache Web服务器上的mysql_example.php文件,并验证输出结果。

Connected successfully.
Default database is tutorials

获取服务器元数据

MySQL中有一些重要的命令可以在MySQL提示符下执行,也可以使用像PHP这样的脚本来获取关于数据库服务器的各种重要信息。

序号 命令和描述
1 SELECT VERSION( ) 服务器版本字符串
2 SELECT DATABASE( ) 当前数据库名称(如果没有则为空)
3 SELECT USER( ) 当前用户名
4 SHOW STATUS 服务器状态指示器
5 SHOW VARIABLES 服务器配置变量

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程