قاعدة بيانات MySQLكيفية التحقق من معلومات بنية جدول بيانات رقم الإصدار والحالة؟

MySQL البيانات الوصفية

قد ترغب في معرفة الأنواع الثلاثة التالية من المعلومات حول MySQL:

  • معلومات نتيجة الاستعلام: عدد السجلات المتأثرة بعبارة SELECT أو UPDATE أو DELETE.
  • معلومات حول قواعد البيانات وجداول البيانات: يحتوي على معلومات هيكل قاعدة البيانات وجدول البيانات.
  • معلومات خادم MySQL: يحتوي على الحالة الحالية لخادم قاعدة البيانات ورقم الإصدار وما إلى ذلك.

في موجه أوامر MySQL ، يمكننا بسهولة الحصول على معلومات الخادم أعلاه.ولكن إذا كنت تستخدم لغة برمجة نصية مثل Perl أو PHP ، فأنت بحاجة إلى استدعاء وظيفة واجهة معينة للحصول عليها.بعد ذلك سوف نقدم بالتفصيل.


احصل على عدد السجلات المتأثرة ببيان الاستعلام

مثيل PERL

في البرامج النصية لـ DBI ، يتم إرجاع عدد السجلات المتأثرة بالبيان بواسطة الدالات do () أو التنفيذ ():

# 方法 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.إذا لم يكن لديك أذونات كافية ، فستظهر النتيجة فارغة.
يمكنك أيضًا استخدام بيان جداول البيانات أو إظهار جداول البيانات للحصول على قائمة بقواعد البيانات وجداول البيانات.

مثيل 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.

命令描述
حدد الإصدار ()معلومات إصدار الخادم
حدد قاعدة البيانات ()اسم قاعدة البيانات الحالية (أو إرجاع فارغ)
اختر المستخدم( )اسم المستخدم الحالي
حالة العرضحالة الملقم
عرض المتغيراتمتغيرات تكوين الخادم