Cách tạo khóa ngoại trong sql server 2008

Dẫn nhập

Trong bài bác trước, bọn họ đang tìm hiểu về KHÓA CHÍNHvới cách tạo thành, xóa, đặt tên mang đến khóa bao gồm vào một Table. Dường như, Kteam đã và đang đề cập tới một yếu tố khác có chức năng tmê mẩn chiếu mang lại Table trải qua Khóa chính đó làKHÓA NGOẠI.Quý Khách đang xem: Cách tạo nên khóa ngoại trong sql hệ thống 2008

Tại sao gồm khóa chính lại còn đề nghị khóa ngoại? Khóa ngoại áp dụng để làm gì? Chúng ta sẽ cùng cả nhà mày mò về nó nhé!

Nội dung chính

Để quan sát và theo dõi tốt nhất có thể bài này, bạn nên nhìn qua bài:

Trong bài bác này, bọn họ đang cùng nhau khám phá một số trong những vấn đề sau:

Khóa nước ngoài là gì? Thao tác cùng với khóa nước ngoài. Sơ trang bị diagram.

Khóa ngoại là gì?

Các table trong một database ko trường tồn hòa bình nhưng mà còn có mối quan hệ mật thiết cùng nhau về phương diện tài liệu.

Bạn đang xem: Cách tạo khóa ngoại trong sql server 2008

Mối quan hệ tình dục này được biểu hiện trải qua ràng buộc quý hiếm dữ liệulộ diện sinh hoạt bảng này buộc phải tất cả lộ diện trước trong một bảng khác.

Mối quan hệ tình dục giữa các table trong database nhằm mục đích đảm bảo an toàn được xem đúng đắn với hợp lệcủa tài liệu trong database.

Điều khiếu nại nhằm tạo nên khóa ngoại

Khóa nước ngoài bắt buộc gồm cùng loại tài liệu, cùng số lượng ngôi trường bao gồm bố trí tương xứng khóa chính

Tác dụng

Khóa ngoại giúp đảm bảo an toàn toàn vẹn tài liệu, không có trường đúng theo tmê man chiếu mang đến dữ liệu ko vĩnh cửu.

Thao tác với khóa ngoại

Quý Khách áp dụng Database Primary_Foreign sau để thuận lợi thao tác làm việc trong quy trình theo dõi và quan sát nội dung bài viết nhé!

CREATE DATABASE Primary_ForeignGOUSE Primary_ForeignGOCREATE TABLE BoMon(MaBM CHAR(10) PRIMARY KEY,Name NVARCHAR(100) DEFAULT N"Tên cỗ môn")GOCREATE TABLE Lop(MaLop CHAR(10) NOT NULL,Name NVARCHAR(100) DEFAULT N"Tên lớp"PRIMARY KEY(MaLop))GO

Quy ước

TableKey: Table cất khóa chủ yếu được tmê man chiếu mang lại.Table Foreign: Table cất khóa ngoạiColumn K,K1,K2…: Column định danh khóa bao gồm thuộc table Key được tsi mê chiếu mang đến.Column F,F1,F2…: Column của khóa ngoại trực thuộc table Foreign.Số lượng columnFnkhớp ứng con số columnKn nhằm đảm bảo an toàn khóa ngoại gồm số trường tương xứng khóa thiết yếu tsi chiếu mang lại. (n là số)

Tạo khóa ngoại trong khi sinh sản bảng

Cú pháp:

CREATE TABLE

(

FOREIGN KEY ()

REFERENCES ()

)

Ví dụ:

CREATE TABLE GiaoVien( MaGV CHAR(10) NOT NULL, Name NVARCHAR(100) DEFAULT N"Tên giáo viên", DiaChi NVARCHAR(100) DEFAULT N"Địa chỉ giáo viên", NgaySinc DATE, Sex BIT, MaBM CHAR(10), -- Tạo khóa nước ngoài ngay trong khi chế tạo bảng FOREIGN KEY(MaBM) REFERENCES dbo.BOMON(MaBM))GOALTER TABLE dbo.GIAOVIEN Địa chỉ cửa hàng PRIMARY KEY(MaGV)

Tạo khóa nước ngoài sau thời điểm tạo thành bảng

Cú pháp:ALTER TABLE

Địa Chỉ FOREIGN KEY()

REFERENCES ()

Ví dụ:

Tương từ khóa bao gồm, khóa ngoại cũng đánh tên thông qua từ khóa CONSTRAINT. Một Table rất có thể bao gồm một hoặc các khóa thiết yếu cần nguyên tắc đặt tên sẽ sở hữu được chút ít không giống biệt

Tên khóa ngoại: FK__

Tùy theo sệt tả cùng độ phức hợp của từng Database nhưng ta có thể thay đổi giải pháp khắc tên theo muốn muốn

Cú pháp:

ALTER TABLE

Showroom CONSTRAINT

FOREIGN KEY()

REFERENCES ()

Ví dụ:

-- Tạo khóa nước ngoài sau thời điểm tạo bảngALTER TABLE dbo.HocSinc Địa chỉ cửa hàng CONSTRAINT FK_HS FOREIGN KEY(MaLop) REFERENCES dbo.Lop(MaLop)

Hủy khóa nước ngoài tất cả đặt tên

Cú pháp:ALTER TABLE DROPhường CONSTRAINT

Ví dụ:

ALTER TABLE dbo.HocSinch DROPhường. CONSTRAINT FK_KS

Sơ đồ gia dụng diagram

Với vấn đề sinh sản khóa ngoại bằng code tuy dễ dàng và đơn giản nhưng lại không cho chính mình tầm nhìn trực quan liêu về những liên kế vào Database. Vậy giúp xem quan hệ giữa khóa chủ yếu khóa nước ngoài ta đi sẽ msinh hoạt mô hình diagram nhỏng sau

Cách 1: Chọn Database bắt buộc coi >loài chuột đề nghị vào Database Diagrams > New Database Diagram


*

*

*

Trong đó:

Ký hiệu khôn cùng trỏ về Table tất cả cất Khóa nước ngoài.Ký hiệu chiếc chìa khóa trỏ về Table bao gồm đựng Khóa chủ yếu.Liên liên kết khôn cùng và chìa khóa màn biểu diễn quan hệ nam nữ tmê say chiếu của khóa ngoại từ bỏ table này mang đến khóa chủ yếu của table không giống.

Từ Diagram họ dễ ợt nắm bắt được những lên tiếng cơ phiên bản nlỗi Tên Table, Tên column, khóa thiết yếu, khóa nước ngoài,…

Kết

Trong bài này, bọn họ đã hiểu cách thức KHỞI TẠO KHÓA NGOẠI trong SQL.

Bài sau, họ đã bước đầu tìm hiểu về TRUY VẤN CƠ BẢN TRONG SQL.

Xem thêm: Dan Là Gì? 1 Dan Bằng Bao Nhiêu N Đổi Khác (Khối Lượng) Để Tấn (Kn → T)

Cảm ơn chúng ta đã theo dõi bài viết. Hãy còn lại comment hoặc góp ý của người sử dụng nhằm phát triển bài viết tốt hơn. Đừng quên “Luyện tập –Thử thách –Không ngại khó

Tải xuống

Tài liệu

Dường như, chúng ta cũng có thể kiếm tìm thấy những tài liệu được góp sức tự cộng đồng sinh hoạt mục TÀI LIỆU trên tlỗi viện ehefs.org.com

Đừng quên like cùng share nhằm cỗ vũ Kteam cùng người sáng tác nhé!


*

Thảo luận

Nếu các bạn tất cả ngẫu nhiên trở ngại tuyệt vướng mắc gì về khóa huấn luyện và đào tạo, đừng e dè đặt câu hỏi vào phần BÌNH LUẬN dưới hoặc trong mục HỎI & ĐÁPhường bên trên tlỗi viện ehefs.org.com nhằm nhận thấy sự cung ứng tự cộng đồng.

table('setting')->where("{$db->web}")->select('code_footer'); if($oh->code_footer){ # nếu có code header tùy chỉnh $code_footer = htmlspecialchars_decode($oh->code_footer); $code_footer = str_replace('[home_link]', $home, $code_footer); $code_footer = str_replace('[home_name]', $h, $code_footer); $code_footer = str_replace('[link]', $link, $code_footer); $code_footer = str_replace('[title]', $head->tit, $code_footer); $code_footer = str_replace('[des]', $head->des, $code_footer); $code_footer = str_replace('[key]', $head->key, $code_footer); $code_footer = str_replace('[image]', $head->img, $code_footer); $code_footer = str_replace('[link]', $link, $code_footer); $code_footer = str_replace('[date_Y]', date('Y'), $code_footer); echo $code_footer; } ?>