database MySQLBagaimana cara memeriksa informasi struktur tabel status dan nomor versi?

MySQL metadata

Anda mungkin ingin mengetahui tiga jenis informasi berikut tentang MySQL:

  • Informasi hasil kueri: Jumlah record yang dipengaruhi oleh pernyataan SELECT, UPDATE atau DELETE.
  • Informasi tentang database dan tabel data: Berisi informasi struktur database dan tabel data.
  • Informasi server MySQL: Berisi status server database saat ini, nomor versi, dll.

Pada command prompt MySQL, kita dapat dengan mudah mendapatkan informasi server di atas.Tetapi jika Anda menggunakan bahasa scripting seperti Perl atau PHP, Anda perlu memanggil fungsi antarmuka tertentu untuk mendapatkannya.Selanjutnya akan kami perkenalkan secara detail.


Dapatkan jumlah catatan yang terpengaruh oleh pernyataan kueri

contoh PERL

Dalam skrip DBI, jumlah record yang dipengaruhi oleh pernyataan dikembalikan oleh fungsi do() atau 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);

Contoh PHP

Di PHP, Anda dapat menggunakan fungsi mysqli_affected_rows() untuk mendapatkan jumlah record yang terpengaruh oleh kueri.

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

Daftar database dan tabel data

Anda dapat dengan mudah mendapatkan daftar database dan tabel di server MySQL.Jika Anda tidak memiliki izin yang memadai, hasilnya akan kembali nol.
Anda juga dapat menggunakan pernyataan SHOW TABLES atau SHOW DATABASES untuk mendapatkan daftar database dan tabel data.

contoh PERL

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

Contoh PHP

Contoh berikut menampilkan semua database di server MySQL:

Lihat semua database

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

Dapatkan metadata server

Pernyataan perintah berikut dapat digunakan pada prompt perintah MySQL atau dalam skrip, seperti skrip PHP.

命令描述
PILIH VERSI ( )Informasi versi server
PILIH DATABASE ( )nama database saat ini (atau kembali kosong)
PILIH PENGGUNA ( )nama pengguna saat ini
TAMPILKAN STATUSstatus server
TAMPILKAN VARIABELVariabel Konfigurasi Server