欢迎来到代码驿站!

Mysql

当前位置:首页 > 数据库 > Mysql

调用MySQL中数据库元数据的方法

时间:2020-11-14 11:20:40|栏目: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)

上一篇:MySQL主从同步延迟的原因及解决办法

栏    目:Mysql

下一篇:数据库中的sql完整性约束语句解析

本文标题:调用MySQL中数据库元数据的方法

本文地址:http://www.codeinn.net/misctech/22265.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有