Lấy và sử dụng MySQL Metadata



Có 3 thông tin mà bạn muốn có từ MySQL:

  • Thông tin về kết quả của các truy vấn: Bao gồm số bản ghi bị tác động bởi bất kỳ lệnh SELECT, UPDATE, DELETE nào.

  • Thông tin về các bảng và cơ sở dữ liệu: Bao gồm thông tin liên quan tới cấu trúc bảng và cấu trúc cơ sở dữ liệu.

  • Thông tin về MySQL Server: Bao gồm trạng thái hiện tại của Database Server, phiên bản, …

Thực sự dễ dàng để lấy tất cả thông tin tại dòng nhắc lệnh mysql, nhưng trong khi sử dụng PERL hoặc PHP APIs, chúng ta cần gọi các APIs đa dạng để lấy tất cả thông tin này.

Lấy số hàng bị tác động bởi một Truy vấn trong MySQL

Trong PHP, gọi hàm mysql_affected_rows() để tìm xem có bao nhiêu hàng bị ảnh hưởng bởi một truy vấn:

$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");

Liệt kê các bảng và cơ sở dữ liệu trong MySQL

Việc liệt kê các bảng và cơ sở dữ liệu có sẵn với Database Server là khá đơn giản. Kết quả của bạn có thể là NULL nếu bạn không được trao đủ quyền.

Ngoài phương thức đã liệt kê ở trên, bạn có thể sử dụng các truy vấn SHOW TABLES hoặc SHOW DATABASES để lấy danh sách các bảng hoặc cơ sở dữ liệu trong PHP.

Quảng cáo

Ví dụ

<?php
$con = mysql_connect("localhost", "userid", "password");
if (!$con)
{
  die('Khong the ket noi: ' . mysql_error());
}

$db_list = mysql_list_dbs($con);

while ($db = mysql_fetch_object($db_list))
{
  echo $db->Database . "<br />";
}
mysql_close($con);
?>

Lấy Server Metadata trong MySQL

Các lệnh sau trong MySQL có thể được thực thi hoặc tại dòng nhắc mysql hoặc bởi sử dụng bất kỳ script nào như PHP để lấy các thông tin quan trọng về Database Server.

LệnhMiêu tả
SELECT VERSION( )Phiên bản Server (dạng chuỗi)
SELECT DATABASE( )Tên cơ sở dữ liệu hiện tại (là trống nếu không có)
SELECT USER( )Username hiện tại
SHOW STATUSTrạng thái Server
SHOW VARIABLESCác biến cấu hình Server

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Follow fanpage của team https://www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Các bài học MySQL phổ biến khác tại VietJack:




Tài liệu giáo viên