banco de dados MySQLComo verificar as informações da estrutura da tabela de dados de status e número de versão?

MySQL metadados

Você pode querer saber os três tipos de informações a seguir sobre o MySQL:

  • Informações do resultado da consulta: O número de registros afetados pela instrução SELECT, UPDATE ou DELETE.
  • Informações sobre bancos de dados e tabelas de dados: Contém as informações de estrutura do banco de dados e da tabela de dados.
  • Informações do servidor MySQL: Contém o estado atual do servidor de banco de dados, número da versão, etc.

No prompt de comando do MySQL, podemos obter facilmente as informações do servidor acima.Mas se você usa uma linguagem de script como Perl ou PHP, você precisa chamar uma função de interface específica para obtê-la.A seguir, apresentaremos em detalhes.


Obtenha o número de registros afetados pela instrução de consulta

instância PERL

Em scripts DBI, o número de registros afetados pela instrução é retornado pelas funções do( ) ou 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);

instância PHP

Em PHP, você pode usar a função mysqli_affected_rows() para obter o número de registros afetados por uma consulta.

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

Lista de bancos de dados e tabelas de dados

Você pode obter facilmente uma lista de bancos de dados e tabelas no servidor MySQL.Se você não tiver permissões suficientes, o resultado retornará nulo.
Você também pode usar a instrução SHOW TABLES ou SHOW DATABASES para obter uma lista de bancos de dados e tabelas de dados.

instância PERL

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

instância PHP

O exemplo a seguir gera todos os bancos de dados no servidor MySQL:

Ver todos os bancos de dados

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

Obter metadados do servidor

As instruções de comando a seguir podem ser usadas no prompt de comando do MySQL ou em scripts, como scripts PHP.

命令描述
SELECIONAR VERSÃO ( )Informações da versão do servidor
SELECIONAR BANCO DE DADOS ( )nome do banco de dados atual (ou retornar vazio)
SELECIONAR USUÁRIO ( )nome de usuário atual
MOSTRAR ESTADOstatus do servidor
MOSTRAR VARIÁVEISVariáveis ​​de configuração do servidor