MySQL база данниКак да проверя информацията за структурата на таблицата с данни за състоянието и номера на версията?

MySQL метаданни

Може да искате да знаете следните три вида информация за MySQL:

  • Информация за резултатите от заявката: Броят на записите, засегнати от израза SELECT, UPDATE или DELETE.
  • Информация за бази данни и таблици с данни: Съдържа информация за структурата на базата данни и таблицата с данни.
  • Информация за MySQL сървъра: Съдържа текущото състояние на сървъра на базата данни, номер на версия и др.

В командния ред на MySQL можем лесно да получим горната информация за сървъра.Но ако използвате скриптов език като Perl или PHP, трябва да извикате специфична интерфейсна функция, за да го получите.След това ще ви представим подробно.


Получете броя на записите, засегнати от оператора на заявката

PERL екземпляр

В DBI скриптовете броят на записите, засегнати от оператора, се връща от функциите do() или execute():

# 方法 1
# 使用do( ) 执行  $query 
my $count = $dbh->do ($query);
# 如果发生错误会输出 0
printf "%d 条数据被影响\n", (defined ($count) ? $count : 0);
# 方法 2
# 使用prepare( ) 及 execute( ) 执行  $query 
my $sth = $dbh->prepare ($query);
my $count = $sth->execute ( );
printf "%d 条数据被影响\n", (defined ($count) ? $count : 0);

Екземпляр на PHP

В PHP можете да използвате функцията mysqli_affected_rows(), за да получите броя на записите, засегнати от заявка.

$result_id = mysqli_query ($conn_id, $query);
# 如果查询失败返回 
$count = ($result_id ? mysqli_affected_rows ($conn_id) : 0);
print ("$count 条数据被影响\n");

Списък на бази данни и таблици с данни

Можете лесно да получите списък с бази данни и таблици в MySQL сървъра.Ако нямате достатъчно разрешения, резултатът ще върне нула.
Можете също да използвате оператора SHOW TABLES или SHOW DATABASES, за да получите списък с бази данни и таблици с данни.

PERL екземпляр

# 获取当前数据库中所有可用的表。
my @tables = $dbh->tables ( );
foreach $table (@tables ){
   print "表名 $table\n";
}

Екземпляр на PHP

Следният пример извежда всички бази данни на MySQL сървъра:

Вижте всички бази данни

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
$db_list = mysqli_query($conn, 'SHOW DATABASES');
while ($db = mysqli_fetch_object($db_list))
{
 echo $db->Database . "<br />";
}
mysqli_close($conn);
?>

Вземете метаданни на сървъра

Следните командни изрази могат да се използват в командния ред на MySQL или в скриптове, като PHP скриптове.

команда描述
ИЗБЕРЕТЕ ВЕРСИЯ( )Информация за версията на сървъра
ИЗБЕРЕТЕ БАЗА ДАННИ( )текущо име на базата данни (или върнете празно)
ИЗБЕРЕТЕ ПОТРЕБИТЕЛ ( )текущо потребителско име
ПОКАЗВАНЕ НА СТАТУСАсъстояние на сървъра
ПОКАЖИ ПРОМЕНЛИВИТЕПроменливи за конфигурация на сървъра