MySQL DatebankWéi de Status an Versioun Zuel Daten Dësch Struktur Informatiounen ze kontrolléieren?

MySQL metadaten

Dir wëllt vläicht déi folgend dräi Aarte vun Informatioun iwwer MySQL wëssen:

  • Query Resultat Informatioun: D'Zuel vun den records betraff vun der SELECT, UPDATE oder DELETE Ausso.
  • Informatioun iwwer Datenbanken an Datentabellen: Enthält d'Strukturinformatioun vun der Datebank an Datentabelle.
  • MySQL Server Informatioun: Enthält den aktuellen Zoustand vum Datebankserver, Versiounsnummer, etc.

An der MySQL Kommandoprompt kënne mir déi uewe genannte Serverinformatioun ganz einfach kréien.Awer wann Dir eng Skriptsprooch wéi Perl oder PHP benotzt, musst Dir eng spezifesch Interfacefunktioun nennen fir se ze kréien.Als nächst wäerte mir am Detail virstellen.


Kritt d'Zuel vun de Rekorder déi vun der Ufro Ausso betraff sinn

Perl Beispill

An DBI Scripte gëtt d'Zuel vun de Rekorder, déi vun der Ausso betraff sinn, vun de Funktiounen zréckginn do () oder 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 Beispill

An PHP kënnt Dir d'Funktioun mysqli_affected_rows ( ) benotzen fir d'Zuel vun de Rekorder ze kréien, déi vun enger Ufro betraff sinn.

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

Lëscht vun Datenbanken an Daten Dëscher

Dir kënnt einfach eng Lëscht vun Datenbanken an Dëscher am MySQL Server kréien.Wann Dir net genuch Permissiounen hutt, gëtt d'Resultat null zréck.
Dir kënnt och d'SHOW TABLES oder SHOW DATABASES Ausso benotzen fir eng Lëscht vun Datenbanken an Datentabellen ze kréien.

Perl Beispill

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

PHP Beispill

Dat folgendt Beispill gëtt all Datenbanken um MySQL Server eraus:

Kuckt all Datenbanken

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

Kréien Server Metadaten

Déi folgend Kommando Aussoen kënnen op der MySQL Kommando Prompt oder a Skripte benotzt ginn, wéi PHP Skripte.

命令Beschreiwung
SELECT VERSION ( )Server Versioun Informatiounen
SELECT DATABASE( )aktuellen Datebanknumm (oder eidel zréck)
SELECT USER ()aktuelle Benotzernumm
STATUS WEISENServer Status
WEISEN VARIABELServer Configuratioun Variablen