Cập nhật ngày: 4/22/2015 11:07:40 AM
Khóa ngoại(foreign key) và nối(join) bảng trong MySQL
Như trong các bài trước, chúng ta đã tạo ra các truy vấn trong một bảng cơ sở dữ liệu. Trong bài này, chúng ta sẽ tìm hiểu cách truy vấn mỗi lần được từ hai cho đến nhiều bảng và hiển thị tập hợp kết quả kết hợp – đó là nối(join) bảng. Kèm theo việc nối bảng, chúng ta cũng cần hiểu thêm về khái niệm khóa ngoại(foreign key).
B1: Khởi động WAMP, mở trình duyệt, truy cập vào phpMyAdmin theo đường dẫnhttp://localhost/phpmyadmin/
Tóm Tắt
Khóa ngoại(foreign key)
Khóa ngoại đơn giản là một trường(cột) thuộc một bảng, tuy nhiên nó cũng lại là một khóa chính ở một bảng khác.
Cú pháp
FOREIGN KEY (têntrường) REFERENCES tên bảng(têntrường được trỏ đến)
B2: Chọn thẻ SQL, chúng ta sẽ nhập câu lệnh truy vấn để tạo ra một bảng mới, có tên là cars và có một trường id_instance là khóa ngoại
Ở dòng thứ năm, chúng ta tạo ra khóa ngoại id_instance đại diện cho trường id trong bảng instance cho bảng cars với câu lệnh
FOREIGN KEY (id_instance) REFERENCES instance(id)
B3: Click Go
B4: Chúng ta sẽ tạo ra vài bản ghi cho bảng cars này. Lưu ý rằng trường id_instance phải chứa các giá trị nằm trong khoảng các giá trị mà trường id tại bảng instance chứa.
B5: Click Go
Nối bảng(join)
Cú pháp
WHERE tênbảng.têntrường = tênbảng.têntrường
B6: Bây giờ chúng ta sẽ nối 2 bảng cars và instance lại để lấy ra được một view dữ liệu mới, với mối quan hệ là trường id_instance của bảng cars và trường id của bảng instance.
B7: Click Go
Nguồn: vietobject