10/4/2012 Nguyễn Thị Thúy Loan 17Hệ cơ sở dữ liệu Khái niệm chức một cách chọn lọc, ghi trên các thiết bị lưu trữ, nhằm phục vụ đồng thời cho nhiều người, với nhiều mục đích khác Hệ cơ s
Trang 1CƠ SỞ DỮ LIỆU
ThS Nguyễn Thị Thúy Loan
10/4/2012 Nguyễn Thị Thúy Loan 2
Cách đánh giá
Lý thuyết: 50%
Bài tập: 20%
Nội dung chương trình
Tổng quan về cơ sở dữ liệu
Tài liệu tham khảo
học Khoa học Tự nhiên Tp.HCM.
nhà xuất bản Khoa học và Kỹ thuật.
Nguyễn An Tế.
D.Ullman, Prentice Hall A First course in Database Systems, Feffrey D.Ullman, Prentice Hall.
Trang 2TỔNG QUAN VỀ
CƠ SỞ DỮ LIỆU
ThS Nguyễn Thị Thúy Loan
Chương I:
10/4/2012 Nguyễn Thị Thúy Loan 6
Nội dung chi tiết
về những sự kiện, khái niệm hay chỉ thị để
giúp con người giao tiếp, diễn giải, hay xử
lý hoặc thực hiện một cách tự động
Dữ liệu được mô tả bất kỳ dạng nào,
chẳng hạn ký tự hay số gắn liền với ngữ
nghĩa
Giới thiệu
Giai đoạn đầu
Dữ liệu không được lưu trữ trên đĩa
Lập trình viên định nghĩa cấu trúc dữ liệu logic và cấu trúc vật lý
Một tập dữ liệu một chương trình trùng lắp thông tin rất nhiều
Quá trình quản lý dữ liệu
Trang 310/4/2012 Nguyễn Thị Thúy Loan 9
CHƯƠNG TRÌNH 1
TẬP DỮ LIỆU 1 Quản lý dữ liệu 1
CHƯƠNG TRÌNH 2
TẬP DỮ LIỆU 2 Quản lý dữ liệu 2
CHƯƠNG TRÌNH 3
TẬP DỮ LIỆU 3 Quản lý dữ liệu 3
Hình 1 Một tập dữ liệu ứng với một chương tình
Quá trình quản lý dữ liệu
10/4/2012 Nguyễn Thị Thúy Loan 10
Hạn chế:
Thiếu tính bền vững
RAM: đắc và giới hạn
Hiệu suất của lập trình viên thấp
Quá trình quản lý dữ liệu
Xử lý tập tin
Dữ liệu được lưu trữ trong các tập tin
Nhiều phương thức truy xuất khác nhau
ra đời
Trong tiếp cận xử lý tập tin, mỗi ứng
dụng sử dụng các tập tin riêng của mình
Quá trình quản lý dữ liệu
CHƯƠNG TRÌNH 1
Các dịch vụ
Hệ thống thông tin
Tập tin 1 Tập tin 2
Trang 410/4/2012 Nguyễn Thị Thúy Loan 13
Chức năng của hệ thống tập tin
Ánh xạ giữa các tập tin logic và tập tin physic.
Tập các dịch vụ và một giao diện
Hạn chế:
Dữ liệu không có cấu trúc
Dữ liệu được lưu trữ trùng lắp thông tin trong
nhiều tập tin
Không có quản lý giao dịch và xử lý đồng thời
giữa nhiều người dùng,…
Quá trình quản lý dữ liệu
10/4/2012 Nguyễn Thị Thúy Loan 14
Tiếp cận CSDL
Xử lý truy vấn QL giao dịch
CHƯƠNG TRÌNH 1 Quản lý dữ liệu 1
CHƯƠNG TRÌNH 2 Quản lý dữ liệu 2
Hình 3 Tiếp cận CSDL trong việc quản lý dữ liệu
DBMS
CSDL tích hợp
Quá trình quản lý dữ liệu
Sơ đồ tổng quát về CSDL
MONHOC
SVIEN
TCTH03 TCTH02 TCTH01
MASV
TCTHA Trang
TCTHB Bảo
TCTHA Sơn
MALOP TEN
8 CSDL TCTH02
9 THVP TCTH02
7 CTDL TCTH01
6 CSDL TCTH01
8 THVP TCTH01
DIEM MAMH MASV
CTDL CSDL THVP
MAMH
TOAN 3
Toán rời rạc
CNTT 4
Cấu trúc dữ liệu
CNTT 4
Nhập môn TH
KHOA TINCHI TENMH
KQUA
LOP
TCTHC TCTHB TCTHA
MALOP
82 TCTH32C
65 TCTH32B
80 TCTH32A
SISO TENLOP
Ví dụ về CSDL
Trang 510/4/2012 Nguyễn Thị Thúy Loan 17
Hệ cơ sở dữ liệu
Khái niệm
chức một cách chọn lọc, ghi trên các thiết
bị lưu trữ, nhằm phục vụ đồng thời cho
nhiều người, với nhiều mục đích khác
Hệ cơ sở dữ liệu
Các mức biểu diễn CSDL
Mức quan niệm: Là mức mô tả tổng thể
CSDL, cho biết CSDL chứa những đối
tượng dữ liệu nào, mối quan hệ giữa các đối
VD: Mô tả thông qua các tập tin chứa dữ liệu gồm tên, cách tổ chức, cấu trúc mẫu tin, cách truy cập
Hệ cơ sở dữ liệu
Trang 610/4/2012 Nguyễn Thị Thúy Loan 21
KHUNG NHÌN NGOÀI
KHUNG NHÌN NGOÀI
LƯỢC ĐỒ QUAN NIỆM
Minh họa kiến trúc 3 mức về lược đồ
MỨC TRONG
10/4/2012 Nguyễn Thị Thúy Loan 22
Lược đồ và thể hiện
Lựợc đồ CSDL-Database Schema: Mô tả
về CSDL Bao gồm mô tả về cấu trúc CSDL và các ràng buộc trên CSDL đó
Thể hiện CSDL-Database Instance: Dữliệu hiện thời được lưu trong một CSDL ởmột thời điểm nào đó Cũng được gọi làtrạng thái CSDL
Hệ cơ sở dữ liệu
Đặc tính của môi trường CSDL
Dữ liệu được chia sẽ cho nhiều người sử
dụng khác nhau, để tiết kiệm được không
gian lưu trữ, tăng hiệu quả khai thác
Làm giảm tình trạng lưu trữ trùng lắp dữ liệu,
bảo đảm được tính nhất quán trong việc truy
xuất dữ liệu và tính toàn vẹn dữ liệu
o Độc lập logic: Nếu sửa cấu trúc CSDL thìkhông cần viết lại chương trình ứng dụng
Hệ cơ sở dữ liệu
Trang 710/4/2012 Nguyễn Thị Thúy Loan 25
Khái niệm:
Hệ QTCSDL là một môi trường phần mềm
cho phép xây dựng và khai thác CSDL của
các đề án tin học hóa
VD: Oracle, MS Access, Poxpro,…
Hệ quản trị cơ sở dữ liệu
10/4/2012 Nguyễn Thị Thúy Loan 26
Các DBMS có nhiệm vụ hỗ trợ tích cực cho các nhà phân tích thiết kế CSDL cũng như những người sử dụng khai thác CSDL
DBMS cần phải có các thành phần cho phép khai báo cấu trúc lưu dữ liệu và xây dựng các thao tác xử lý chúng
Hệ quản trị cơ sở dữ liệu
Các thành phần của DBMS:
Ngôn ngữ định nghĩa dữ liệu: Là phương tiện
cho phép khai báo cấu trúc lưu trữ dữ liệu,
khai báo các mối liên hệ giữa các loại dữ liệu,
cũng như các quy tắc quản lý áp đặt trên các
dữ liệu được lưu trữ
Hệ quản trị cơ sở dữ liệu
Các thành phần của DBMS:
Ngôn ngữ thao tác dữ liệu: Cho phép người
sử dụng xây dựng các thao tác cập nhật dữliệu (T, X, S), khai thác dữ liệu với các mục đích khác nhau
Từ điển dữ liệu: Chứa thông tin về các thành phần cấu trúc CSDL (các thuộc tính, các mối liên hệ,…), các quan hệ, RBDL
Hệ quản trị cơ sở dữ liệu
Trang 810/4/2012 Nguyễn Thị Thúy Loan 29
Định nghĩa:
Mô hình dữ liệu là một tập hợp các khái
niệm, các quy ước biểu diễn dữ liệu cần
quản lý ở mức quan niệm
Các loại mô hình dữ liệu
10/4/2012 Nguyễn Thị Thúy Loan 30
Thông qua mô hình dữ liệu, người thiết kế
sẽ mô tả toàn cảnh CSDL được thiết kế bao gồm:
o Các đối tượng, thực thể được quản lý
o Các mối quan hệ giữa các đối tượng
o Các RBDL thể hiện các quy tắc quản lý ảnh hưởng đến các đối tượng quản lý
Các loại mô hình dữ liệu
Đây là loại mô hình phổ biến để thiết kế CSDL
ở mức quan niệm
Thực thể (Entity): Là đối tượng cụ thể hay
trừu tượng trong thế giới thực
VD: Sinh viên Nguyễn Văn B Lớp CNTT3
VD: Loại thực thể Sinh Viên
Mô hình thực thể kết hợp
Trang 910/4/2012 Nguyễn Thị Thúy Loan 33
Khóa của loại thực thể: Là thuộc tính mà giá
trị của nó xác định duy nhất 1 thực thể
VD: Mã số sinh viên (MSSV), mã số nhân viên
(MSNV),…
Loại mối kết hợp: Dùng diễn tả các liên hệ
ngữ nghĩa giữa các loại thực thể
Mô hình thực thể kết hợp
10/4/2012 Nguyễn Thị Thúy Loan 34
Ký hiệu hình thức của loại thực thể:
Sinh viên MSSV HovaTen MaLop
Lớp MaLop TenLop SiSo
Sinh viên MSSV HovaTen MaLop
Lớp MaLop TenLop SiSo Thuộc
Mô hình thực thể kết hợp
Ký hiệu hình thức của mối kết hợp:
Thuộc tính của mối kết hợp: Là thuộc tính
chung của các loại thực thể tham gia mối kết
hợp
Bản số mỗi nhánh của mối kết hợp: Là một
bộ gồm hai thành phần (min, max), đây là
một RBTV về số lượng tối thiểu và tối đa của
một thực thể của nhánh đó tham gia vào các
thể hiện của mối kết hợp
Mô hình thực thể kết hợp
sohuu (0,n) (1,1)
n1 n3
c1 c2 c3
n1 n3
c1 c3
Nguoi
sohuu
Caooc
Bản số của mối kết hợp
Trang 1010/4/2012 Nguyễn Thị Thúy Loan 37
p1 p2 p3
r1 r2 r3 r4 r5
p1 p2 p3
d1 d2 d3
Nhanvien thamgia Dean
Mối kết hợp n-n
B1: Phân tích yêu cầu bài toán, chọn ra các thông tin cần quản lý hình thành từ điển dữliệu
B2: Tiến hành gom nhóm các thuộc tính theo các thực thể thật
Trang 1110/4/2012 Nguyễn Thị Thúy Loan 41
Ví dụ:
Xây dựng mô hình dữ liệu phục vụ cho việc
quản lý điểm thi các môn học để tính điểm
trung bình của từng học kỳ của sinh viên
các lớp, với các quy tắc quản lý như sau:
Mỗi môn học sinh viên được phép thi 2 lần
MONHOC MSMH TENMH SOGIOLT SOGIOTH
Thuộc
KQHT Học kì ĐL1 ĐL2
(0,n) (0,n)
Mô hình thực thể kết hợp
Một số quy định của mô hình ER
Không có các thuộc tính trùng tên giữa các thực thể
Mọi thuộc tính của thực thể phải phụ thuộc trực tiếp vào khóa của thực thể
Thuộc tính có liên quan với các thực thể của một mối kết hợp thì đặt ở mối kết hợp
Mô hình thực thể kết hợp
Trang 1210/4/2012 Nguyễn Thị Thúy Loan 45
Những người phụ trách đào tạo của Trường
cao đẳng cộng đồng núi Ayers mong muốn
tạo lập một CSDL về các môn đào tạo của
trường (như: chứng chỉ leo núi, công nghệ bay)
và học viên ghi danh vào những môn học này
Trường cũng có qui định là cùng một lúc, học
viên chỉ có thể ghi danh vào một môn học
Ví dụ 1
10/4/2012 Nguyễn Thị Thúy Loan 46
Họ chỉ quan tâm về dữ liệu của đợt ghi danh hiện tại Một khi học viên kết thúc môn học thìnhà trường sẽ không còn quan tâm đến họ vànhững học viên này phải được xóa khỏi CSDL
Thông tin cần lưu trữ về một học viên bao gồm:
Mã học viên, Tên học viên, địa chỉ, ngày sinh, số điện thoại, ngày nhập học Thông tin về môn học gồm mã môn học, tên môn học, thời lượng
Ví dụ 1
Phần đặc tả vấn đề chứa đựng các qui
tắc quản lý và dữ liệu yêu cầu của vấn
đề.
Dữ liệu của vấn đề là: chi tiết về học viên
có mã học viên, tên học viên, địa chỉ,
ngày sinh, số điện thoại và ngày nhập
học, chi tiết về môn học có mã môn học,
tên môn học và thời lượng
Phân tích
Qui tắc quản lý gồm:
Cùng một lúc, một học viên chỉ có thể ghi danh vào một môn học
môn học
viên của môn học hiện tại
Phân tích
Trang 1310/4/2012 Nguyễn Thị Thúy Loan 49
Phòng cảnh sát mong muốn quản lý lý lịch cá
nhân những người lái xe và bằng lái của họ
Một người chỉ lấy được một bằng lái và một
bằng lái chỉ thuộc về một người Thông tin về
lái xe mà phòng cảnh sát quan tâm là: mã
người lái xe, tên, địa chỉ, ngày sinh
Thông tin về bằng lái cần lưu trữ là: mã bằng
lái, loại bằng lái, ngày hết hạn
Ví dụ 2
10/4/2012 Nguyễn Thị Thúy Loan 50
Người phụ trách đào tạo Trường cao đẳng cộng đồng núi xanh mong muốn thiết lập một csdl về các môn học mà họ cung cấp (như chứng chỉ leo núi, công nghệ bay,…)
và các học viên ghi danh vào các môn học này Nhà trường qui định là một học viên được ghi danh học tối đa ba môn học trong cùng một lúc
Ví dụ 3
Họ chỉ quan tâm đến dữ liệu của môn học
hiện tại Một khi học viên kết thúc môn học,
họ sẽ không còn thuộc diện quản lý của nhà
trường và phải được xóa khỏi csdl trừ khi học
viên này ghi danh học tiếp môn mới Thông
tin về một học viên gồm: mã học viên, tên học
viên, địa chỉ, ngày sinh, số điện thoại, ngày
nhập học Thông tin về môn học gồm: mã
môn học, tên môn học, thời lượng
Ví dụ 3
Dùng các khái niệm:
Loại mẫu tin: Thay cho khái niệm loại thực thể, chứa các mẫu tin mà mỗi mẫu tin là một thực thể
Loại liên hệ: Là sự quan hệ ngữ nghĩa giữa
1 loại mẫu tin chủ và một loại mẫu tin thành viên
Mô hình dữ liệu mạng
Trang 1410/4/2012 Nguyễn Thị Thúy Loan 53
SINHVIEN
1:n
Mô hình dữ liệu mạng
Kí hiệu 1:n; diễn tả ý nghĩa 1 mẫu tin lớp có
thể gồm nhiều sinh viên
Tương tư,̣ 1 mẫu tin khoa có thể có nhiều
lớp
10/4/2012 Nguyễn Thị Thúy Loan 54
Ngoài ra còn có một số loại liên hệ khác:
Kiểu 1:1; 1 mẫu tin chủ liên hệ với 1 mẫu tin thành viên
Kiểu n:1; Mỗi thể hiện là một tập gồm nhiều mẫu tin chủ và 1 mẫu tin thành viên
Mô hình dữ liệu mạng
QT1: Mỗi thực thể hình thành 1 kiểu mẫu tin
QT2: Mối kết hợp thuộc loại (?,1) –(?,n) hay
(?,1) – (?,1) thì hình thành 1 loại liên hệ chiều
mũi tên đi từ (?,n) (?,1)
QT3: Mối kết hợp thuộc loại (?,n) – (?,n) thì
hình thành 1 kiểu mẫu tin mới, kiểu mẫu tin này
chứa các thuộc tính khóa của 2 mẫu tin liên
Trang 1510/4/2012 Nguyễn Thị Thúy Loan 57
Giống như mô hình mạng, với các khái niệm
kiểu mẫu tin và loại liên hệ Nhưng 1 kiểu
mẫu tin thành viên chỉ có thể phụ thuộc duy
nhất 1 kiểu mẫu tin cha Nghĩa là chỉ có kiểu
liên hệ 1:1, 1:n Do đó mô hình được thể
hiện như 1 rừng cây
Mô hình dữ liệu phân cấp
10/4/2012 Nguyễn Thị Thúy Loan 58
Những kiểu mẫu tin không có cha là gốc của cây Các kiểu mẫu tin cuối cùng không con tạo thành các lá của cây
Mô hình dữ liệu phân cấp
đề xuất năm 1971 Mô hình này bao gồm:
o Các khái niệm liên quan đến cấu trúc dữ liệu
dưới dạng dòng và cột như quan hệ, bộ,
thuộc tính, khóa chính, khoá ngoại, .
o Phép toán tập hợp và phép toán quan hệ
o Ràng buộc toàn vẹn quan hệ
lý thuyết mô hình quan hệ
Mô hình dữ liệu quan hệ
QT1: Chuyển mỗi loại thực thể (trừ loại thực thể yếu) thành 1 quan hệ có cùng tên và cùng thuộc tính
QT2: Mối quan hệ n – n tạo 1 quan hệ mới
có tên là tên mối liên hệ và khóa là khóa của các thực thể tham gia
Mối kết hợp 1 – n thì thêm thuộc tính khóa của bên n vào trong bên 1
Chuyển từ ER sang MHQH
Trang 1610/4/2012 Nguyễn Thị Thúy Loan 61
Mối kết hợp 1 – 1 thì thêm thuộc tính khóa
của quan hệ này vào quan hệ kia hoặc
thêm vào cả hai bên
QT3: Loại thực thể yếu chuyển thành quan
hệ thêm thuộc tính khóa của quan hệ liên
hệ
Chuyển từ ER sang MHQH
10/4/2012 Nguyễn Thị Thúy Loan 62
SINHVIEN MSSV HOTEN NGAYSINH PHAI
LOP MSLOP TENLOP
MONHOC MSMH TENMH SOGIOLT SOGIOTH
Thuộc
KQHT Học kì ĐL1 ĐL2
(0,n) (0,n)
Trang 1710/4/2012 Nguyễn Thị Thúy Loan 65
10/4/2012 Nguyễn Thị Thúy Loan 66
Mô hình này dựa trên cách tiếp cận hướng đối tượng, với các khái niệm như: Lớp (class), sự kế thừa (Inheritence), tính đóng gói (Encapsulation)… Nhưng hiện nay chưa được sử dụng rộng rãi một phần chưa cónhiều DBMS cài đặt theo kiểu này
Mô hình DL hướng đối tượng
HPhan
Ten SLuong 0 *
1 *
hoc 0 *
1 *
MHoc
Ten Khoa SoTinChi CapNhatSTC() 0 *
1
0 *
1 mo
0 *
0 *
Dieu kien +MHoc truoc
+MHoc sau
0 *
0 *
Mô hình DL hướng đối tượng
Thiết lập mô hình quan niệm dùng quản lý việc cho mượn sách tại 1 thư viện (Xem tại chỗ hoặc mang về nhà) với các quy tắc quản
lý như sau:
Sách gồm mã sách, tên sách, nguyên tác
(tiếng Việt hay nước ngoài), tác giả Sách
được phân chia theo thể loại gồm MaTL,
TenTL
Bài tập
Trang 1810/4/2012 Nguyễn Thị Thúy Loan 69
Độc giả muốn mượn sách phải lập thẻ độc
giả Thẻ ghi nhận các thông tin gồm: MaĐG,
TenĐG, địa chỉ ngày cấp, thông tin các sách
đã mượn, ngày mượn, ngày trả Hàng năm,
độc giả phải đóng lệ phí để gia hạn thẻ mới
được mượn sách, trên sổ có ghi thêm thông
tin: Ngày nộp, số tiền
Bài tập
10/4/2012 Nguyễn Thị Thúy Loan 70
SACH MASACH TENSACH NGUYENTAC TACGIA
THELOAI MSTL TENTL
THEĐG MSĐG TENĐG DIACHI NGAY
Thuộc
MUON NGMUON NGTRA
(1,n)
(0,n)
LEPHI NGNOP SOTIEN
HGNAM NAM
Trang 1910/4/2012 Nguyễn Thị Thúy Loan 73
SACH(MAS,TENS,NGTAC, TACGIA, MATL)
(1976) Đây là một mô hình mức khái niệm dựa vào việc nhận thức thế giới thực thông qua tập các đối tượng được gọi là các thực thể và các mối quan hệ giữa các đối tượng này
Trang 2010/4/2012 Nguyễn Thị Thúy Loan 77
Thông tin Mô hình ER Mô hình quan hệ
Cài đặt trên HQT CSDL
Quá trình thiết kế CSDL
Phụ thuộc HQT cụ thể Độc lập HQT
Thế giới thực Phân tích yêu cầu
Phân tích quan niệm
Thiết kế mức logic
Thiết kế mức vật lý
Các yêu cầu về dữ liệu
Lược đồ quan niệm
Lược đồ logic
Thiết kế chương trình ứng dụng
Phân tích chức năng Các yêu cầu về chức năng
Nội dung chi tiết
niệm
Biểu diễn trừu tượng cấu trúc của CSDL
Lược đồ thực thể - kết hợp (Entity-Relationship Diagram)
o Tập thực thể (Entity Sets)
o Thuộc tính (Attributes)Mối quan hệ (Relationship)
Mô hình ER
Trang 2110/4/2012 Nguyễn Thị Thúy Loan 81
Một thực thể là một đối tượng của thế giới
thực
Ví dụ: Sinh viên: Nguyễn Văn A
Tập hợp các thực thể giống nhau tạo thành
1 tập thực thể
Ví dụ: SinhVien
Một thể hiện của thực thể SinhVien bao gồm:
(SV01,Lê Văn A,10/12/93,Nam,Lê Hữu Thọ)
Tập thực thể
10/4/2012 Nguyễn Thị Thúy Loan 82
Là những đặc tính riêng biệt của tập thực thể
Ví dụ tập thực thể NHANVIEN có các thuộc tính: MaSV, TenSV, NSinh, ĐChi,…
kiểu số nguyên, kiểu số thực
Có hai loại thuộc tính:
o Thuộc tính đơn: Mã sinh viên
o Thuộc tính hợp: Tên sinh viên
Thuộc tính
Thuộc tính
Giá trị của thuộc tính:
o Đơn trị: với 1 thực thể cụ thể, giá trị của
thuộc tính là giá trị đơn
o Đa trị: với 1 thực thể cụ thể, giá trị của
Trang 2210/4/2012 Nguyễn Thị Thúy Loan 85
Là sự liên kết giữa 2 hay nhiều tập thực
thể mang một ý nghĩa nào đó
PHONGBAN có các liên kết
o Một nhân viên thuộc một phòng ban nào đó
o Một phòng ban có một nhân viên làm
trưởng phòng
Mối quan hệ
10/4/2012 Nguyễn Thị Thúy Loan 86
Bậc của mối quan hệ
mối kết hợp Loại mối kết hợp bậc 2 gọi là mối kết hợp nhị phân Hầu hết các loại mối kết hợp trong cơ sở dữ liệu là nhị phân
Là đồ thị biểu diễn các tập thực thể, thuộc
tính và mối quan hệ Bao gồm đỉnh và cạnh
Tên tập thực thể Tập thực thể
Tên thuộc tính Thuộc tính
Tên quan hệ Mối quan hệ
Trang 2310/4/2012 Nguyễn Thị Thúy Loan 89
Phu_trach
DEAN
TENDA DDIEM_DA
Ví dụ lược đồ ER
10/4/2012 Nguyễn Thị Thúy Loan 90
chứa đựng những dữ liệu cụ thể gọi là thểhiện CSDL
o Mỗi tập thực thể sẽ có tập hợp hữu hạn các thực thể
o Ví dụ: Giả sử tập thực thể SVIEN có các thực thể như SV1, SV2, …SVn
Thể hiện của lược đồ ER
o Mỗi thực thể sẽ có 1 giá trị cụ thể tại mỗi
MASV
TCTHA Trang
TCTHB Bảo
TCTHA Sơn
MALOP TEN
10 THVP TCTH03
8 CSDL TCTH02
9 THVP TCTH02
7 CTDL TCTH01
6 CSDL TCTH01
8 THVP TCTH01
DIEM MAMH MASV
CTDL CSDL THVP
MAMH
TOAN 3
Toán rời rạc
CNTT 4
Cấu trúc dữ liệu
CNTT 4
Nhập môn TH
KHOA TINCHI TENMH
KQUA
LOP
TCTHC TCTHB TCTHA
MALOP
82 TCTH32C
65 TCTH32B
80 TCTH32A
SISO TENLOP
Ví dụ về CSDL
Trang 2410/4/2012 Nguyễn Thị Thúy Loan 93
o Lược đồ ER không được lưu trữ trong
CSDL, mà chỉ mô tả khái niệm trừu tượng
o Lược đồ ER chỉ giúp ta thiết kế CSDL trước
khi chuyển qua mô hình quan hệ và chuyển
dữ liệu xuống mức vật lý
Thể hiện của lược đồ ER
10/4/2012 Nguyễn Thị Thúy Loan 94
(Tung, Nghien cuu) (Hang, Dieu hanh) (Vinh, Quan ly)
Lam_viec
relationship) giữa 2 tập thực thể E và F, tính multiplicity bao gồm
o Một-Nhiều
Trang 2510/4/2012 Nguyễn Thị Thúy Loan 97
o Một phòng ban có nhiều nhân viên
o Một nhân viên chỉ thuộc 1 phòng ban
o Một nhân viên có thể là trưởng phòng của 1 phòng ban nào đó
Trang 2610/4/2012 Nguyễn Thị Thúy Loan 101
Mối quan hệ - Vai trò
Một loại thực thể có thể tham gia nhiều lần
vào một quan hệ với nhiều vai trò khác
10/4/2012 Nguyễn Thị Thúy Loan 102
Thuộc tính trên mối quan hệ
chất cho mối quan hệ đó
những thực thể tham gia vào mối quan hệ
NHANVIEN (0,n) Phan_cong (1,n) DEAN
THGIAN
Thuộc tính khóa
Các thực thể trong tập thực thể cần phải
được phân biệt
Khóa K của tập thực thể E là một hay nhiều
thuộc tính sao cho:
o Lấy ra 2 thực thể bất kỳ e1, và e2 trong E, thì
e1 và e2 không thể có các giá trị giống nhau
tại các thuộc tính trong K
Thuộc tính khóa
o Mỗi tập thực thể phải có 1 khóa
o Một khóa có thể có 1 hay nhiều thuộc tính
o Có thể có nhiều khóa trong 1 tập thực thể,
ta sẽ chọn ra 1 khóa làm khóa chính cho tập thực thể đó
Trang 2710/4/2012 Nguyễn Thị Thúy Loan 105
Phu_trach
DEAN
TENDA DDIEM_DA
MANV
THANNHAN
TENTN PHAI NGSINH
QUANHE Co_than_nhan
(1,1) (1,n)
NGAYHD MAHD
HANG_HOA
MAHH DGIA TENHH
(1,1) (1,n)
HH_CT (1,1) (1,n) CHI_TIET SL_HH
SOTIEN
Trang 2810/4/2012 Nguyễn Thị Thúy Loan 109
Nội dung chi tiết
10/4/2012 Nguyễn Thị Thúy Loan 110
Các bước thiết kế
B1: Phân tích yêu cầu bài toán, chọn ra các thông tin cần quản lý hình thành từ điển dữliệu
B2: Tiến hành gom nhóm các thuộc tính theo các thực thể thật
Trang 2910/4/2012 Nguyễn Thị Thúy Loan 113
Ví dụ ‘Quản lý đề án công ty’
có tên duy nhất, mã phòng duy nhất, một
trưởng phòng và ngày nhận chức Mỗi
phòng ban có thể ở nhiều địa điểm khác
nhau
Đề án có tên duy nhất, mã duy nhất, do 1
một phòng ban chủ trì và được triển khai
ở 1 địa điểm
10/4/2012 Nguyễn Thị Thúy Loan 114
Ví dụ ‘Quản lý đề án công ty’
sinh, phái và lương Mỗi nhân viên làm việc ở 1 phòng ban, tham gia vào các đề
án với số giờ làm việc khác nhau Mỗi nhân viên đều có một người quản lý trực tiếp
Một nhân viên có thể có nhiều thân nhân
Mỗi thân nhân có tên, phái, ngày sinh vàmối quan hệ với nhân viên đó
MÔ HÌNH DỮ LIỆU
QUAN HỆ
ThS Nguyễn Thị Thúy Loan
Chương III:
Nguồn: Bài giảng Khoa CNTT ĐHKHTN
hệ
Nội dung chi tiết
Trang 3010/4/2012 Nguyễn Thị Thúy Loan 117
10/4/2012 Nguyễn Thị Thúy Loan 118
CSDL được tổ chức thành bảng (table) 2 chiều
Mỗi bảng được gọi là một quan hệ
Quan hệ
Nu 20/12/1976 Tham
Đao Thi NV04
Nam 23/02/1980 Hung
Ha Van NV03
Nu 12/01/1979 Binh
Tran Thi NV02
Nam 10/04/1975 An
Le Van NV01
Gioitinh Ngaysinh
TenNV Ho
Trang 3110/4/2012 Nguyễn Thị Thúy Loan 121
Tên các cột của quan hệ
Mô tả ý nghĩa cho các giá trị tại cột đó
Đao Thi NV04
Nam 23/02/1980 Hung
Ha Van NV03
Nu 12/01/1979 Binh
Tran Thi NV02
Nam 10/04/1975 An
Le Van NV01
Gioitinh Ngaysinh
TenNV Ho
MaNV NHANVIEN
Đao Thi NV04
Nam 23/02/1980 Hung
Ha Van NV03
Nu 12/01/1979 Binh
Tran Thi NV02
Nam 10/04/1975 An
Le Van NV01
Gioitinh Ngaysinh
TenNV Ho
MaNV NHANVIEN
Bộ dữ liệu
Trang 3210/4/2012 Nguyễn Thị Thúy Loan 125
của quan hệ và danh sách các thuộc tính
NHANVIEN(MANV, TENNV, HONV, NGSINH, DCHI, PHAI, LUONG, PHG)
Lược đồ
10/4/2012 Nguyễn Thị Thúy Loan 126
quan hệ
NHANVIEN(MANV, TENNV, HONV, NGSINH, DCHI, PHAI, LUONG, PHG) PHONGBAN(MAPHG, TENPHG, TRPHG, NG_NHANCHUC)
DIADIEM_PHG(MAPHG, DIADIEM) THANNHAN(MA_NVIEN, TENTN, PHAI, NGSINH, QUANHE) DEAN(TENDA, MADA, DDIEM_DA, PHONG)
Ví dụ: TENNV: string; LUONG: integer
Cho lược đồ quan hệR(A1:D1, A2:D2, …, An:Dn)
o R: là tên quan hệ
o A1, A2, …, Anlà các thuộc tính
o D1, D2, …, Dn là các miền giá trị tương ứng
o Bậc của lược đồ quan hệ là số lượng thuộc tính trong lược đồ
Ví dụ: SV(MaSV, TenSV, Phai)
Trang 3310/4/2012 Nguyễn Thị Thúy Loan 129
Định nghĩa hình thức (tt)
Quan hệ (hay thể hiện quan hệ)
o Một thể hiện r của lược đồ quan hệ R(A1, A2,
…, An), ký hiệu r(R), là một tập các bộ
r = {t1, t2, …, tm}
o Trong đó mỗi tilà 1 danh sách có thứ tự của
n giá trị ti=<v1, v2, …, vn>
vj Dj hoặc vj = Null (giá trị rỗng) là giá trị
10/4/2012 Nguyễn Thị Thúy Loan 130
Định nghĩa hình thức (tt)
Các đặc trưng của quan hệ
Miền giá trị của thuộc tính A
o DOM(A) hay MGT(A)
Giá trị tại thuộc tính A của bộ thứ t
o t.A hay t[A]
Tóm tắt các kí hiệu
Trang 3410/4/2012 Nguyễn Thị Thúy Loan 133
Các khái niệm của mô hình quan hệ
Ràng buộc của mô hình
o Siêu khóa (Super key)
o Khóa chính (Primary key)
o Tham chiếu
o Khóa ngoại (Foreign key)
Chuyển lược đồ E/R sang thiết kế quan hệ
Nội dung chi tiết
10/4/2012 Nguyễn Thị Thúy Loan 134
RBTV (Integrity Constraint)
o Là những qui tắc, điều kiện, ràng buộc cần được thỏa mãn cho mọi thể thiện của CSDL quan hệ
Siêu khóa (Super Key)
o Gọi SK là một tập con khác rỗng các thuộc
tính của R: SK là siêu khóa khi
o r,t1, t2 r, t1 ≠ t2 t1[SK] ≠ t2[SK]
Siêu khóa
o Siêu khóa là tập các thuộc tính dùng đểxác định tính duy nhất của mỗi bộ trong quan hệ
o Mọi lược đồ quan hệ có tối thiểu một siêu khóa
Siêu khóa
Trang 3510/4/2012 Nguyễn Thị Thúy Loan 137
Định nghĩa
o Gọi K là một tập con khác rỗng các thuộc
tính của R
o K là khóa nếu thỏa đồng thời 2 điều kiện
Khóa
10/4/2012 Nguyễn Thị Thúy Loan 138
Nhận xét
o Khóa là siêu khóa nhỏ nhất
o Lược đồ quan hệ có thể có nhiều khóa
o Khóa được xây dựng dựa trên ý nghĩa của một số thuộc tính
Khi cài đặt quan hệ thành bảng (table):
o Chọn khóa có ít thuộc tính hơn
o Khóa được chọn để cài đặt gọi là khóa chính:
khác null.
gạch dưới.
Khóa chính
Trang 3610/4/2012 Nguyễn Thị Thúy Loan 141
Một bộ trong quan hệ R, tại thuộc tính A
nếu nhận một giá trị từ một thuộc tính B
của quan hệ S, ta gọi R tham chiếu S
Bộ được tham chiếu phải tồn tại trước
Tham chiếu
10/4/2012 Nguyễn Thị Thúy Loan 142
o Gọi FK là tập thuộc tính khác rỗng của R
o FK là khóa ngoại (Foreign Key) của R khi
giá trị với các thuộc tính khóa chính của S.
giá trị tại khóa chính của một bộ t2S; hoặc
Trang 3710/4/2012 Nguyễn Thị Thúy Loan 145
Nhận xét
o Trong một lược đồ quan hệ, một thuộc tính
vừa có thể tham gia vào khóa chính, vừa
tham gia vào khóa ngoại
o Khóa ngoại có thể tham chiếu đến khóa
chính trên cùng 1 lược đồ quan hệ
o Có thể có nhiều khóa ngoại tham chiếu đến
Các quy tắc chuyển đổi
Trang 3810/4/2012 Nguyễn Thị Thúy Loan 149
(1,1) (1,1)
NHANVIEN(MANV, TENNV, HONV, NGSINH, DCHI, PHAI, LUONG)
PHONGBAN(TENPHG, MAPHG)
Các quy tắc chuyển đổi
10/4/2012 Nguyễn Thị Thúy Loan 150
(2) Mối quan hệ
o (2a) Nhiều-Nhiều
Tên quan hệ là tên của mối quan hệ
Thuộc tính là những thuộc tính khóa của các tập thực thể liên quan
Các quy tắc chuyển đổi
DEAN
TENDA
DDIEM_DA MADA NHANVIEN
TENNV
PHAI
LUONG HONV
MANV
Phan_cong
THOIGIAN
PHANCONG(MANV, MADA, THOIGIAN)
Các quy tắc chuyển đổi
Trang 3910/4/2012 Nguyễn Thị Thúy Loan 153
MANV
Lam_viec PHONGBAN
MAPHG TENPHG
NHANVIEN(MANV, TENNV, HONV, NGSINH, DCHI, PHAI, LUONG, MAPHG)
Các quy tắc chuyển đổi
10/4/2012 Nguyễn Thị Thúy Loan 154
(2) Mối quan hệ
o (2c) Một-Một
của quan hệ kia
MANV
La_truong_phong
PHONGBAN
MAPHG TENPHG
NG_NHANCHUC
PHONGBAN(MAPHG, TENPHG, MANV, NG_NHANCHUC)
Các quy tắc chuyển đổi
(3) Thực thể yếu
o Chuyển thành một quan hệ
quan
Các quy tắc chuyển đổi
Trang 4010/4/2012 Nguyễn Thị Thúy Loan 157
MANV
THANNHAN(MANV, TENTN, PHAI, NGSINH, QUANHE)
THANNHAN
TENTN PHAI NGSINH
QUANHE Co_than_nhan
(1,1) (1,n)
Các quy tắc chuyển đổi
10/4/2012 Nguyễn Thị Thúy Loan 158
Các quy tắc chuyển đổi
Đối với thuộc tính đa trị
MaMH
Khoa TenMH
(0,n)
Hocky Gvien Nam
NGSINH NHANVIEN
Nhanvien (0,1)
GIAMSAT
LAMVIEC NG_NHAN CHUC
SO LUONG NV
QUANLY
TENPB MAPB DIADIEM
nguoiql (0,1)
nhanvien(
1,1) phongban (4,4)
Pt_phutrach (0,N) Pb_duocql (1,1)
THOIGIAN
PHANCONG
COTHAN NHAN
THANNHAN
PHUTRACH
DEAN
TENDA MADA TENDA
nguoithan (1,1)
doan (1,N) da_duocpt (1,1)
nhanvien (0,N) giamsat
(0,N)