Tin tổng hợp

Khóa Ngoại Sql Server: Foreign Key (Khoá Ngoại), Khóa Ngoại Foreign Key Trong Sql Server – viettingame

Trong bài này các bạn sẽ được học cách tạo khóa ngoại Foreign Key bằng câu lệnh SQL thể hiện qua những hệ quản trị CSDL như SQL Server, Oracle, MySQL.

Đang xem: Khóa ngoại sql

Khóa ngoại là những column đặc biệc sử dụng để thể hiện mối link giữa hai bảng. Bảng A với column khóa ngoại, nó sẽ trỏ tới khóa chính của bảng B thì ta gọi A là bảng con và B là bảng thân phụ.

Giả sử ta với hai bảng như sau:

Orders (OrderID. OrderNumber, PersonID)Persons (PersonID, LastName, FirstName)

Gạch chân là khóa chính và red color là khóa ngoại. Như vậy bảng Orders là bảng con vì như thế nó với khóa ngoại PersonID trỏ tới khóa chính của bảng thân phụ là bảng Persion. giờ đây ta sẽ học cách tạo khóa ngoại nhé.

1. Tạo Foreign Key trong lệnhCREATE TABLE

Các bạn mà thậm chí tạo khóa ngoại ngay trong lệnh tạo bảng Create Table, cách làm như sau:

MySQL
CREATE TABLE Orders ( OrderID int NOT NULL, OrderNumber int NOT NULL, PersonID int, PRIMARY KEY (OrderID), FOREIGN KEY (PersonID) REFERENCES Persons(PersonID));
SQL Server / Oracle / MS Access:
CREATE TABLE Orders ( OrderID int NOT NULL PRIMARY KEY, OrderNumber int NOT NULL, PersonID int FOREIGN KEY REFERENCES Persons(PersonID));

Để đặt tên cho khóa ngoại thì ta viết như sau:

MySQL / SQL Server / Oracle / MS Access
CREATE TABLE Orders ( OrderID int NOT NULL, OrderNumber int NOT NULL, PersonID int, PRIMARY KEY (OrderID), CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID) REFERENCES Persons(PersonID));

Lúc mang tên thì sau này rất đơn giản dễ dàng quản lý và vận hành khóa ngoại, chúng ta mà thậm chí xóa khóa ngoại trải qua tên của nó.

Xem thêm: Tech-Savvy Là Gì – (Công Thức Efast)

2. Tạo Foreign Key bằng lệnh Alter Table

Lệnh Alter Table cho phép chúng ta tạo khóa ngoại, lệnh này được sử dụng sau lúc chúng ta đã tạo bảng.

MySQL / SQL Server / Oracle / MS Access
ALTER TABLE OrdersADD FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);

Hoặc sử dụng cách sau để đặt tên cho khóa ngoại.

MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE OrdersADD CONSTRAINT FK_PersonOrderFOREIGN KEY (PersonID) REFERENCES Persons(PersonID);

3. Xóa khóa ngoại

Để xóa được khóa ngoại thì nên chúng ta phải ghi nhận tên của khóa ngoại, vì như thế vậy khuyến khích chúng ta lúc tạo khóa ngoại thì hãy đặt tên cho nó nhé.

Xem thêm: Báo Cáo Tài Chính Hợp Nhất ( Consolidated Là Gì, Nghĩa Của Từ Consolidate

Để xóa thì chúng ta sử dụng đoạn code sau:

MySQL
ALTER TABLE OrdersDROP FOREIGN KEY FK_PersonOrder;
SQL Server / Oracle / MS Access
ALTER TABLE OrdersDROP CONSTRAINT FK_PersonOrder;

Một trong những lưu ý lúc xóa khóa ngoại:

Sau lúc xóa xong thì giữa hai bảng sẽ không thể ràng buộc, vì như thế vậy dữ liệu cho column khóa ngoại của bảng con được tự do, ko nên phải nằm trong phạm vi của bảng thân phụ.Phải khỏe mạnh là tên của khóa ngoại tồn tại, nếu ko thì sẽ nhận thông tin lỗi.
Bài sau Bài tiếp
Hiện tại mình xin đóng phần phản hồi, nếu như có thắc mắc thì hãy đăng chủ đề lên trang hoicode.com. Truy vấn hỏi code ngay

DANH SÁCH BÀI HỌC

Table queries Data Queries Condition & Operator Advanced
Danh sách chủ đề

MÃ GIẢM GIÁ
Unica 50% Lấy Mã
TinoHost 30% Lấy Mã
INET 30% Lấy Mã

Liên hệ

Mã tránh giá

Khóa học

Reviews

Admin Cường, quản lý và vận hành chính của website.

2020 – a.viettingame.vn. All Right Reserved Theme GoodNews, nền tảng Codeigniter, VPS sắm tại Tinohost

*

BÀI VIẾT

Nếu khách hàng phát hiện lỗi sai link, nội dung sai, hay một lỗi bất kì nào khác trên trang này thì hãy cho mình biết nhé. Cám ơn chúng ta!

Về Viettingame.com

Viettingame.com - Chuyên trang web tổng hợp những thông tin hữu ích trên internet như thông tin về game, tin tổng hợp
Xem tất cả các bài viết của Viettingame.com →

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *