Thứ Hai, 22 tháng 6, 2015

Liên kết bảng trong MySQL bằng MySQLi (P.2)

Trong phần 1 chúng ta đã được tìm hiểu cách tạo liên kết bảng trong MySQL bằng các câu lệnh mysql. Tiếp theo chúng ta sẽ đi tìm hiểu cách tạo liên kết bảng trong MySQL bằng MySQLi khi hoc PHP.

Phần 2: Liên kết bảng trong MySQL sử dụng câu lệnh mysqli.

Để liên kết các bảng trong cơ sở dữ liệu ta sử dụng câu lệnh INNER JOIN.

Cú pháp

SELECT trường_dữ_liệu_1, trường_dữ_liệu_2,... FROM bảng_1 INNER JOIN bảng_2 ON tiêu_chí
Trong đó:

  • bảng_1: là bảng liên kết.
  • bảng_2: là bảng bị liên kết.
  • trường_dữ_liệu: là các trường dữ liệu muốn lấy.
  • tiêu_chí: là tiêu chí chung để liên kết 2 bảng.


Ví dụ: Lấy dữ liệu từ 2 bảng khach_hang và don_hang thông qua trường idCustomer (Nội dung 2 bảng các bạn tham khảo bước 1 ở ví dụ trong phần 1).

<?php
 $host = 'localhost';
 $user = 'root';
 $pass = '';
 $dbName = 'mydb';

 $conn = mysqli_connect($host, $user, $pass, $dbName);

 $sql = "SELECT * FROM khach_hang INNER JOIN don_hang ON khach_hang.idCustomer = don_hang.idCustomer";
 $query = mysqli_query($conn, $sql);

 if(mysqli_num_rows($query) > 0){
  while($row = mysqli_fetch_array($query)){
    echo $row['idCustomer']."<br />".
         $row['name']."<br />".
         $row['phone']."<br />".
         $row['products']."<br />" .
         $row['addr']."<br />"
   ;
  }
 }else{
    echo "Không có thông tin của khách hàng!";
 }

 mysqli_close($conn);
?>
Hoặc chúng ta có thể sử dụng đối tượng trong MySQLi

<?php
 $host = 'localhost';
 $user = 'root';
 $pass = '';
 $dbName = 'mydb';

 $conn = new mysqli($host, $user, $pass);
 $conn->select_db($dbName);

 $sql = "SELECT * FROM khach_hang INNER JOIN don_hang ON khach_hang.idCustomer = don_hang.idCustomer";
 $query = $conn->query($sql);

 if($query->num_rows > 0){
  while($row = $query->fetch_array()){
    echo $row['idCustomer']."<br />".
         $row['name']."<br />".
         $row['phone']."<br />".
         $row['products']."<br />" .
         $row['addr']."<br />"
   ;
  }
 }else{
    echo "Không có thông tin của khách hàng!";
 }

 $conn->close();
?>
 Xem tiếp: Liên kết bảng trong MySQL bằng PDO (P.3)

SHARE THIS

0 nhận xét:

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.