MySQL-databaseHvordan sjekke status og versjonsnummer datatabellstrukturinformasjon?

MySQL metadata

Du vil kanskje vite følgende tre typer informasjon om MySQL:

  • Søkeresultatinformasjon: Antall poster som påvirkes av SELECT-, UPDATE- eller DELETE-setningen.
  • Informasjon om databaser og datatabeller: Inneholder strukturinformasjonen til databasen og datatabellen.
  • MySQL-serverinformasjon: Inneholder gjeldende status for databaseserveren, versjonsnummer osv.

I MySQL-ledeteksten kan vi enkelt få tak i serverinformasjonen ovenfor.Men hvis du bruker et skriptspråk som Perl eller PHP, må du kalle en spesifikk grensesnittfunksjon for å få det.Neste vil vi introdusere i detalj.


Få antall poster som er berørt av spørringssetningen

PERL-forekomst

I DBI-skript returneres antallet poster som er påvirket av setningen av funksjonene do( ) eller 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-forekomst

I PHP kan du bruke funksjonen mysqli_affected_rows( ) for å få antall poster som påvirkes av en spørring.

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

Liste over databaser og datatabeller

Du kan enkelt få en liste over databaser og tabeller i MySQL-serveren.Hvis du ikke har tilstrekkelige tillatelser, vil resultatet returnere null.
Du kan også bruke SHOW TABLES eller SHOW DATABASES-setningen for å få en liste over databaser og datatabeller.

PERL-forekomst

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

PHP-forekomst

Følgende eksempel gir ut alle databaser på MySQL-serveren:

Se alle databaser

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

Få servermetadata

Følgende kommandosetninger kan brukes ved MySQL-ledeteksten eller i skript, for eksempel PHP-skript.

kommandobeskrivelse
VELG VERSJON( )Serverversjonsinformasjon
VELG DATABASE( )gjeldende databasenavn (eller returner tom)
VELG BRUKER( )nåværende brukernavn
VIS STATUSserverstatus
VIS VARIABLERServerkonfigurasjonsvariabler