اطلاعات پایگاه داده در MySQL – راهنمای جامع


سه نوع اطلاعات پایگاه داده MySQL وجود دارند که میتوان به دست آورد:
- اطلاعاتی در مورد نتیجه کوئریها – این اطلاعات شامل چند رکورد هستند که تحت تأثیر عبارتهای SELECT، UPDATE یا DELETE قرار گرفتهاند.
- اطلاعاتی در مورد جدولها و پایگاههای داده – این اطلاعات شامل مواردی در مورد ساختار پایگاه داده و جدولها میشود.
- اطلاعاتی در مورد سرور MySQL – این مورد نیز شامل وضعیت سرورهای پایگاه داده، شماره نسخه و مواردی از این دست است.
دریافت همه این اطلاعات در خط اعلان MySQL کار آسانی است؛ اما هنگام استفاده از PERL یا PHP باید API های مختلفی را به طور صریح فراخوانی کنیم تا همه این اطلاعات را به دست آوریم.
به دست آوردن تعداد ردیفهایی که از یک کوئری تأثیر پذیرفتهاند
در این بخش روش کسب این اطلاعات را معرفی میکنیم.
مثال PERL
در اسکریپتهای DBI، تعداد ردیفهای تأثیر پذیرفته به وسیله ()do یا از طریق دستور ()execute بازگشت مییابد و این مسئله به چگونگی اجرای کوئری وابسته است.
# Method 1 # execute $query using do( ) my $count = $dbh->do ($query); # report 0 rows if an error occurred printf "%d rows were affected\n", (defined ($count) ? $count : 0); # Method 2 # execute query using prepare( ) plus execute( ) my $sth = $dbh->prepare ($query); my $count = $sth->execute ( ); printf "%d rows were affected\n", (defined ($count) ? $count : 0);
مثال PHP
در زبان برنامهنویسی PHP، میتوان تابع ()mysql_affected_rows را برای یافتن تعداد ردیفهایی که توسط یک کوئری تغییر یافته است، فراخوانی کرد.
$result_id = mysql_query ($query, $conn_id); # report 0 rows if the query failed $count = ($result_id ? mysql_affected_rows ($conn_id) : 0); print ("$count rows were affected\n");
لیست کردن جدولها و پایگاههای داده
لیست کردن همه پایگاههای داده و جدولهای موجود در یک سرور پایگاه داده کار آسانی است. اما در صورتی که دسترسیهای کافی نداشته باشید، ممکن است با نتایج null مواجه شوید.
به جز روشی که در کد زیر برای این منظور استفاده شده است، میتوان از کوئریهای SHOW TABLES یا SHOW DATABASES برای دریافت لیستی از جدولها یا پایگاههای داده در PHP یا PERL استفاده کرد.
مثال PERL
# Get all the tables available in current database. my @tables = $dbh->tables ( ); foreach $table (@tables ){ print "Table Name $table\n"; }
مثال PHP
<?php $con = mysql_connect("localhost", "userid", "password"); if (!$con) { die('Could not connect: ' . mysql_error()); } $db_list = mysql_list_dbs($con); while ($db = mysql_fetch_object($db_list)) { echo $db->Database . "<br />"; } mysql_close($con); ?>
دریافت فراداده سرور
چند دستور مهم در MySQL وجود دارند که میتوان در اعلان MySQL یا با استفاده از اسکریپتهایی مانند PHP اجرا کرد و اطلاعات مختلفی در مورد سرور پایگاه داده به دست آورد.
دستور | توضیح |
---|---|
()SELECT VERSION | رشته معرف نسخه سرور |
()SELECT DATABASE | نام پایگاه داده جاری (در صورت نبودن، خالی است) |
()SELECT USER | نام کاربری جاری |
SHOW STATUS | نمایش وضعیت سرور |
SHOW VARIABLES | نمایش متغیرهای پیکربندی سرور |
در این نوشته برخی از دستورها و کوئریهایی که برای دریافت اطلاعاتی در مورد پایگاه داده MySQL در محیطهای مختلف وجود دارند، معرفی کردیم.
اگر این مطلب برایتان مفید بوده است، آموزشهای زیر نیز به شما پیشنهاد میشوند:
- مجموعه آموزشهای برنامهنویسی
- مفاهیم مقدماتی MySQL — راهنمای جامع
- مجموعه آموزشهای دروس مهندسی کامپیوتر
- اتصال به پایگاه داده MySQL با استفاده از زبان جاوا — آموزش گام به گام
- نصب MySQL — راهنمای گام به گام
- کوئری UPDATE در MySQL — راهنمای جامع
- MongoDB چیست؟ — راهنمای شروع با دیتابیس مانگو دی بی
==