11
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
SQL Server
22
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Các ràng buộc toàn vẹn dữ liệu
3
33
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Ràng buộc toàn vẹn dữ liệu -
Constraint
44
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Các quy định của công việc trong thực tếCác quy định của công việc trong thực tế
• Trong thực tế mỗi công việc đều có những quy định phải tuân theo
− Mỗi quy định trở thành một hay nhiều ràng buộc trong CSDL
− Một số quy định đơn giản, mặc nhiên thấy cũng phải mô tả trong CSDL
• Ví dụ quản lý đơn đặt hàng
− Số lượng đặt hàng phải lớn hơn 0
− Các số hoá đơn giao hàng không được trùng nhau
− Ngày dự kiến nhận hàng phải sau ngày đặt hàng
− Một đơn đặt hàng phải do một khách hành lập ra
− Mỗi một mặt hàng phải có nhà cung cấp (mỗi mặt hàng phải có xuất xứ)
− Số lượng mặt hàng giao cho khách phải nhỏ hơn hay tối đa bằng với số lượng đặt
− Hai nhà cung cấp có thể trùng tên nhưng là hai nhà cung cấp khác nhau
55
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Các ràng buộc toàn vẹn dữ liệuCác ràng buộc toàn vẹn dữ liệu
• SQL Server chia làm hai loại chính
− Loại đơn giản: sử dụng CONSTRAINT để mô tả
− Loại phức tạp: sử dụng TRIGGER để thực hiện
• Các loại ràng buộc đơn giản
− Kiểm tra duy nhất
• PRIMARY KEY, UNIQUE
− Kiểm tra khác rỗng
• NOT NULL
− Kiểm tra tồn tại
• FOREIGN KEY
− Kiểm tra miền giá trị
• CHECK, DEFAULT
66
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Nguyên tắc chung
• Một constraint luôn gắn với một bảng
• Nếu không đặt tên thì hệ thống sẽ tự động phát
sinh tên cho constraint.
• Có thể tạo constraint :
− Cùng với thời điểm tạo bảng hoặc
− Sau khi đã tạo bảng xong
• Có thể khai báo constraint ở mức cột hoặc mức
bảng.
• Có thể xem các constraint hiện có trong
Database.
77
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Khai báo constraint
CREATE TABLE [schema.]ten_bang
(cot kieu_du_lieu [DEFAULT bieu_thuc]
[constraint_muc_cot],
...
[constraint_muc_bang][,...])
CREATE TABLE nhanvien(
manhanvien NUMERIC(6),
honv NVARCHAR(20),
...
macongviec NVARCHAR(10) NOT NULL,
CONSTRAINT nv_manhanvien_pk
PRIMARY KEY (MANHANVIEN))
88
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Khai báo Constraint
• Constraint mức cột
• Constraint mức bảng
column [CONSTRAINT ten_constraint] loai_constraint
column,...
[CONSTRAINT ten_constraint]
loai_constraint tham_so
99
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Constraint NOT NULL
Đảm bảo rằng giá trị NULL sẽ không tồn tại trong cột
NOT NULL constraint
(Không dòng nào
được phép chứa giá
trị NULL cột này.)
Không tồn tại NOT
NULL constraint
(Dòng bất kỳ có thể
chứa giá trị null.)
NOT NULL
constraint
…
1010
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
CREATE TABLE nhanvien(
manhanvien NUMERIC(6),
tennv NVARCHAR(25) NOT NULL,
mucluong NUMERIC(10),
phucap NUMERIC(10),
ngayvaolam DATE
CONSTRAINT nv_ngayvaolam_nn
NOT NULL,
...
Constraint NOT NULL
Được khai báo ở mức cột
Tên của hệ
thống
Tên
người
dùng đặt
1111
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Constraint UNIQUE
EMPLOYEES
UNIQUE constraint
Thêm vào
Không cho
phép vì đã tồn
tại
Cho phép
…
1212
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Constraint UNIQUE
Khai báo ở mức bảng hoặc mức cột:
CREATE TABLE nhanvien(
manhanvien NUMERIC(6),
tennv NVARCHAR(25) NOT NULL,
email NVARCHAR(25),
mucluong NUMERIC(8,2),
...
CONSTRAINT nv_email_uk UNIQUE(email))
CREATE TABLE nhanvien(
manhanvien NUMERIC(6),
tennv NVARCHAR(25) NOT NULL,
email NVARCHAR(25) UNIQUE,
mucluong NUMERIC(8,2),
...
hoặc
1313
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Constraint PRIMARY KEY
DEPARTMENTS
PRIMARY KEY
Thêm vào bảngKhông cho phép
(giá trị Null)
Không cho phép
(50 đã tồn tại)
…
1414
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
CREATE TABLE phong(
maphong NUMERIC(4) PRIMARY KEY,
tenphong NVARCHAR(30)
CONSTRAINT phong_ten_nn NOT NULL,
manguoiquanly NUMERIC(6),
makhuvuc NUMERIC(4))
Constraint PRIMARY KEY
Khai báo ở mức cột hoặc mức bảng:
CREATE TABLE phong(
maphong NUMERIC(4),
tenphong NVARCHAR(30)
CONSTRAINT phong_ten_nn NOT NULL,
manguoiquanly NUMERIC(6),
makhuvuc NUMERIC(4),
CONSTRAINT phong_ma_pk PRIMARY KEY(maphong))
hoặc
1515
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Constraint FOREIGN KEY
PHONG
NHANVIEN
KHÓA NGOẠI
(FK)
Thêm vào
Không cho phép
(75 không tồn tại)
Cho phépCho phép
KHÓA CHÍNH
(PK)
…
…
1616
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Constraint FOREIGN KEY
CREATE TABLE nhanvien(
manhanvien NUMERIC(6),
tennv NVARCHAR(25) NOT NULL,
email NVARCHAR(25),
mucluong NUMERIC(10,
phucap NUMERIC(10),
ngayvaolame DATE NOT NULL,
...
maphong NUMERIC(4),
CONSTRAINT nv_phong_fk FOREIGN KEY (maphong)
REFERENCES phong(maphong),
CONSTRAINT nv_email_uk UNIQUE(email))
Khai báo ở mức bảng hoặc mức cột:
1717
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Cú pháp constraint FOREIGN KEY
FOREIGN KEY [( cot [ ,...n ] ) ]
REFERENCES Ten_bang_tham_chieu [ ( cot [ ,...n ] ) ]
[ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT }]
[ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT }]
1818
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Constraint CHECK
• Khai báo những qui định mà mỗi dòng đều phải
thỏa mãn
• Dùng để kiểm tra miền giá trị của dữ liệu
..., mucluong NUMERIC(10)
CONSTRAINT nv_luong_min
CHECK (mucluong >= 0),...
[CONSTRAINT ten_constraint]
CHECK (bieu_thuc_luan_ly)
1919
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Thêm Constraint mới vào bảng
ALTER TABLE bang
ADD [CONSTRAINT ten_constraint]
Loai_Constraint Tham_so
• Dùng để tạo constraint sau khi đã tạo
bảng
• Sử dụng lệnh ALTER TABLE.
2020
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Cú pháp chi tiết từng loại constraint
ALTER TABLE bang
ADD [CONSTRAINT ten_constraint]
PRIMARY KEY (danh_sach_cot_khoa_chinh)
hoặc UNIQUE (danh_sach_cot)
hoặc FOREIGN KEY (danh_sach_cot_khoa_ngoai)
REFERENCES bang_tham_chieu (ds_cot_tham_chieu)
hoặc CHECK (bieu_thuc_luan_ly)
hoặc DEFAULT gia_tri_mac_dinh FOR Ten_cot
2121
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Xóa Constraint
• Cú pháp
• Ví dụ
ALTER TABLE nhanvien
DROP CONSTRAINT nv_luong_min
ALTER TABLE ten_bang
DROP CONSTRAINT ten_constraint [,…]
2222
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Tắt kiểm tra Constraints
ALTER TABLE ten_bang
NOCHECK CONSTRAINT ALL | ten_constraint[,...]
Bật lại kiểm tra Constraints
ALTER TABLE ten_bang
CHECK CONSTRAINT ALL | ten_constraint[,...]
2323
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Xem các constraint trong một bảng
• Xem bằng SSMS.
• Xem bằng câu lệnh
• Xem từ view hệ thống sys.objects
sp_helpconstraint ‘ten_bang’
Hoặc sp_help ‘ten_bang’
SELECT * FROM sys.objects
WHERE parent_object_id IN
(SELECT object_id FROM sys.objects
WHERE name=‘Ten_bang')
2424
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Mô hình quan hệ dữ liệu
(Diagram)
2525
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Khái niệm về mô hình quan hệ dữ liệuKhái niệm về mô hình quan hệ dữ liệu
• Thể hiện mối quan hệ giữa các bảng trong
CSDL
• Có thể sử dụng để
− Thiết lập mối quan hệ khoá ngoại (FOREIGN KEY)
− Chỉnh sửa cấu trúc bảng
− Chỉnh sửa thuộc tính bảng
− Tạo bảng mới
2626
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Ví dụ mô hình quan hệVí dụ mô hình quan hệ
2727
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
TRUNG TÂM TIN HỌC
Tạo mới mô hình quan hệ dữ liệuTạo mới mô hình quan hệ dữ liệu
• Chỉ có thể tạo bằng SSMS
• Với một CSDL lớn, tạo một hay nhiều mô hình
cho các nghiệp vụ thực tế khác nhau

Bài 3 : Các ràng buộc toàn vẹn dữ liệu - SQL server

  • 1.
    11 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC SQL Server
  • 2.
    22 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Các ràng buộc toàn vẹn dữ liệu 3
  • 3.
    33 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Ràng buộc toàn vẹn dữ liệu - Constraint
  • 4.
    44 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Các quy định của công việc trong thực tếCác quy định của công việc trong thực tế • Trong thực tế mỗi công việc đều có những quy định phải tuân theo − Mỗi quy định trở thành một hay nhiều ràng buộc trong CSDL − Một số quy định đơn giản, mặc nhiên thấy cũng phải mô tả trong CSDL • Ví dụ quản lý đơn đặt hàng − Số lượng đặt hàng phải lớn hơn 0 − Các số hoá đơn giao hàng không được trùng nhau − Ngày dự kiến nhận hàng phải sau ngày đặt hàng − Một đơn đặt hàng phải do một khách hành lập ra − Mỗi một mặt hàng phải có nhà cung cấp (mỗi mặt hàng phải có xuất xứ) − Số lượng mặt hàng giao cho khách phải nhỏ hơn hay tối đa bằng với số lượng đặt − Hai nhà cung cấp có thể trùng tên nhưng là hai nhà cung cấp khác nhau
  • 5.
    55 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Các ràng buộc toàn vẹn dữ liệuCác ràng buộc toàn vẹn dữ liệu • SQL Server chia làm hai loại chính − Loại đơn giản: sử dụng CONSTRAINT để mô tả − Loại phức tạp: sử dụng TRIGGER để thực hiện • Các loại ràng buộc đơn giản − Kiểm tra duy nhất • PRIMARY KEY, UNIQUE − Kiểm tra khác rỗng • NOT NULL − Kiểm tra tồn tại • FOREIGN KEY − Kiểm tra miền giá trị • CHECK, DEFAULT
  • 6.
    66 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Nguyên tắc chung • Một constraint luôn gắn với một bảng • Nếu không đặt tên thì hệ thống sẽ tự động phát sinh tên cho constraint. • Có thể tạo constraint : − Cùng với thời điểm tạo bảng hoặc − Sau khi đã tạo bảng xong • Có thể khai báo constraint ở mức cột hoặc mức bảng. • Có thể xem các constraint hiện có trong Database.
  • 7.
    77 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Khai báo constraint CREATE TABLE [schema.]ten_bang (cot kieu_du_lieu [DEFAULT bieu_thuc] [constraint_muc_cot], ... [constraint_muc_bang][,...]) CREATE TABLE nhanvien( manhanvien NUMERIC(6), honv NVARCHAR(20), ... macongviec NVARCHAR(10) NOT NULL, CONSTRAINT nv_manhanvien_pk PRIMARY KEY (MANHANVIEN))
  • 8.
    88 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Khai báo Constraint • Constraint mức cột • Constraint mức bảng column [CONSTRAINT ten_constraint] loai_constraint column,... [CONSTRAINT ten_constraint] loai_constraint tham_so
  • 9.
    99 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Constraint NOT NULL Đảm bảo rằng giá trị NULL sẽ không tồn tại trong cột NOT NULL constraint (Không dòng nào được phép chứa giá trị NULL cột này.) Không tồn tại NOT NULL constraint (Dòng bất kỳ có thể chứa giá trị null.) NOT NULL constraint …
  • 10.
    1010 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC CREATE TABLE nhanvien( manhanvien NUMERIC(6), tennv NVARCHAR(25) NOT NULL, mucluong NUMERIC(10), phucap NUMERIC(10), ngayvaolam DATE CONSTRAINT nv_ngayvaolam_nn NOT NULL, ... Constraint NOT NULL Được khai báo ở mức cột Tên của hệ thống Tên người dùng đặt
  • 11.
    1111 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Constraint UNIQUE EMPLOYEES UNIQUE constraint Thêm vào Không cho phép vì đã tồn tại Cho phép …
  • 12.
    1212 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Constraint UNIQUE Khai báo ở mức bảng hoặc mức cột: CREATE TABLE nhanvien( manhanvien NUMERIC(6), tennv NVARCHAR(25) NOT NULL, email NVARCHAR(25), mucluong NUMERIC(8,2), ... CONSTRAINT nv_email_uk UNIQUE(email)) CREATE TABLE nhanvien( manhanvien NUMERIC(6), tennv NVARCHAR(25) NOT NULL, email NVARCHAR(25) UNIQUE, mucluong NUMERIC(8,2), ... hoặc
  • 13.
    1313 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Constraint PRIMARY KEY DEPARTMENTS PRIMARY KEY Thêm vào bảngKhông cho phép (giá trị Null) Không cho phép (50 đã tồn tại) …
  • 14.
    1414 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC CREATE TABLE phong( maphong NUMERIC(4) PRIMARY KEY, tenphong NVARCHAR(30) CONSTRAINT phong_ten_nn NOT NULL, manguoiquanly NUMERIC(6), makhuvuc NUMERIC(4)) Constraint PRIMARY KEY Khai báo ở mức cột hoặc mức bảng: CREATE TABLE phong( maphong NUMERIC(4), tenphong NVARCHAR(30) CONSTRAINT phong_ten_nn NOT NULL, manguoiquanly NUMERIC(6), makhuvuc NUMERIC(4), CONSTRAINT phong_ma_pk PRIMARY KEY(maphong)) hoặc
  • 15.
    1515 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Constraint FOREIGN KEY PHONG NHANVIEN KHÓA NGOẠI (FK) Thêm vào Không cho phép (75 không tồn tại) Cho phépCho phép KHÓA CHÍNH (PK) … …
  • 16.
    1616 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Constraint FOREIGN KEY CREATE TABLE nhanvien( manhanvien NUMERIC(6), tennv NVARCHAR(25) NOT NULL, email NVARCHAR(25), mucluong NUMERIC(10, phucap NUMERIC(10), ngayvaolame DATE NOT NULL, ... maphong NUMERIC(4), CONSTRAINT nv_phong_fk FOREIGN KEY (maphong) REFERENCES phong(maphong), CONSTRAINT nv_email_uk UNIQUE(email)) Khai báo ở mức bảng hoặc mức cột:
  • 17.
    1717 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Cú pháp constraint FOREIGN KEY FOREIGN KEY [( cot [ ,...n ] ) ] REFERENCES Ten_bang_tham_chieu [ ( cot [ ,...n ] ) ] [ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT }] [ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT }]
  • 18.
    1818 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Constraint CHECK • Khai báo những qui định mà mỗi dòng đều phải thỏa mãn • Dùng để kiểm tra miền giá trị của dữ liệu ..., mucluong NUMERIC(10) CONSTRAINT nv_luong_min CHECK (mucluong >= 0),... [CONSTRAINT ten_constraint] CHECK (bieu_thuc_luan_ly)
  • 19.
    1919 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Thêm Constraint mới vào bảng ALTER TABLE bang ADD [CONSTRAINT ten_constraint] Loai_Constraint Tham_so • Dùng để tạo constraint sau khi đã tạo bảng • Sử dụng lệnh ALTER TABLE.
  • 20.
    2020 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Cú pháp chi tiết từng loại constraint ALTER TABLE bang ADD [CONSTRAINT ten_constraint] PRIMARY KEY (danh_sach_cot_khoa_chinh) hoặc UNIQUE (danh_sach_cot) hoặc FOREIGN KEY (danh_sach_cot_khoa_ngoai) REFERENCES bang_tham_chieu (ds_cot_tham_chieu) hoặc CHECK (bieu_thuc_luan_ly) hoặc DEFAULT gia_tri_mac_dinh FOR Ten_cot
  • 21.
    2121 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xóa Constraint • Cú pháp • Ví dụ ALTER TABLE nhanvien DROP CONSTRAINT nv_luong_min ALTER TABLE ten_bang DROP CONSTRAINT ten_constraint [,…]
  • 22.
    2222 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Tắt kiểm tra Constraints ALTER TABLE ten_bang NOCHECK CONSTRAINT ALL | ten_constraint[,...] Bật lại kiểm tra Constraints ALTER TABLE ten_bang CHECK CONSTRAINT ALL | ten_constraint[,...]
  • 23.
    2323 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xem các constraint trong một bảng • Xem bằng SSMS. • Xem bằng câu lệnh • Xem từ view hệ thống sys.objects sp_helpconstraint ‘ten_bang’ Hoặc sp_help ‘ten_bang’ SELECT * FROM sys.objects WHERE parent_object_id IN (SELECT object_id FROM sys.objects WHERE name=‘Ten_bang')
  • 24.
    2424 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Mô hình quan hệ dữ liệu (Diagram)
  • 25.
    2525 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Khái niệm về mô hình quan hệ dữ liệuKhái niệm về mô hình quan hệ dữ liệu • Thể hiện mối quan hệ giữa các bảng trong CSDL • Có thể sử dụng để − Thiết lập mối quan hệ khoá ngoại (FOREIGN KEY) − Chỉnh sửa cấu trúc bảng − Chỉnh sửa thuộc tính bảng − Tạo bảng mới
  • 26.
    2626 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Ví dụ mô hình quan hệVí dụ mô hình quan hệ
  • 27.
    2727 TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Tạo mới mô hình quan hệ dữ liệuTạo mới mô hình quan hệ dữ liệu • Chỉ có thể tạo bằng SSMS • Với một CSDL lớn, tạo một hay nhiều mô hình cho các nghiệp vụ thực tế khác nhau