Xây dựng lược đồ ER cho CSDL CÔNG TY như sau:
Giả sử rằng sau khi tập hợp các yêu cầu và phân tích, hoạt động của
công ty được ghi chép lại như sau:
1. Công ty được tổ chức thành các đơn vị (đv). Mỗi đv có 1 tên duy nhất, 1
mã số duy nhất, 1 nhân viên (nv) cụ thể quản lý đơn vị. Việc nv quản lý
đơn vị được ghi lại bằng ngày nv đó bắt đầu quản lý. Một đơn vị có thể có
nhiều địa điểm.
2. Mỗi đơn vị kiểm soát 1 số dự án. Một dự án có 1 tên duy nhất, 1 mã số
duy nhất và 1 địa điểm.
3. Với mỗi nv chúng ta lưu giữ lại Họ tên, Mã số duy nhất, địa chỉ, lương,
giới tính, ngày sinh. Một nv chỉ làm việc cho 1 đơn vị nhưng có thể làm
việc trên nhiều dự án do nhiều đơn vị kiểm soát. Chúng ta lưu giữ lại số
giờ làm việc của mỗi nv trên một dự án. Mỗi nv có thể có 1 người giám sát
trực tiếp, người đó cũng là 1 nv.
4. Mỗi nv có những người con. Những người này được hưởng bảo hiểm
theo nv. Với mỗi người con của nv, chúng ta lưu giữ Họ tên, giới tính,
ngày sinh;
82 trang |
Chia sẻ: thucuc2301 | Lượt xem: 1075 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Bài giảng Cơ sở dữ liệu - Chương 1: Tổng quan về CSDL - Cao Thị Kim Tuyến, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1CƠ SỞ DỮ LIỆU
GV : CAO THỊ KIM TUYẾN
Email : tuyenctk@uit.edu.vn
2Nội dung
(Thời lượng: 45LT)
Chương 1: Tổng quan về CSDL
Chương 2: Mô hình dữ liệu quan hệ
Chương 3: Đại số quan hệ
Chương 4: Ngôn ngữ SQL
Chương 5 Ràng buộc toàn vẹn
Chương 6: Phụ thuộc hàm và các dạng chuẩn
Ôn tập
3THÔNG TIN KHÓA HỌC
1. Thông tin liên lạc:
- E-mail: tuyenctk@uit.edu.vn
- Moodle
2. Bài giảng: Moodle
3. Đánh giá:
- Kiểm tra giữa kỳ: 20%
- Kiểm tra cuối kỳ: lý thuyết (50%) + thực hành (30%)
- Quá trình.
4TÀI LIỆU THAM KHẢO
1. Slides bài giảng
2. Giáo trình tham khảo trong đề cương môn học
3. Nguyễn Đăng Tỵ, Đỗ Phúc, Giáo trình Cơ sở Dữ liệu, Đại
học Quốc gia TP. HCM, 2003;
3. Trần Nguyên Phong, Giáo trình thực hành SQL;
4. Silberschatz, A., Henry F. Korth and Sudarshan, S.,
Database System Concepts, Fourth Edition. McGraw Hill,
2004;
5. Elmasri, R. and Shamkant B. Navathe, Fundamentals of
Database Systems, Fourth Edition, Addison-Wesley,
2004.
5Chương 1:
Tổng quan về CSDL
1. Giới thiệu
2. Hệ thống tập tin (File System)
3. Định nghĩa một CSDL
4. Các đối tượng sử dụng CSDL
5. Hệ quản trị CSDL
6. Các mức của một CSDL
7. Các mô hình dữ liệu
61. Giới thiệu
Tại sao phải học cơ sở dữ liệu (CSDL)?
- Hữu ích
- Khoa học máy tính,
-
72. Hệ thống tập tin
Là tập hợp các tập tin riêng lẻ phục vụ cho một
mục đích của đơn vị sử dụng.
Ưu điểm:
Triển khai ứng dụng nhanh, đơn giản;
Đáp ứng nhanh chóng, kịp thời (vì chỉ phục vụ cho mục
đích hạn hẹp).
Khuyết điểm:
Phụ thuộc dữ liệu – chương trình
Trùng lắp dữ liệu lãng phí, dữ liệu không nhất quán;
Chi phí bảo trì chương trình cao;
Chia sẽ dữ liệu kém; Thời gian phát triển lâu.
8 Program – Data dependence/ Data dependence;
Cấu trúc dữ liệu thay đổi thì chương trình ứng dụng sử
dụng dl này cũng bị thay đổi theo;
Mỗi chương trình ứng dụng phải có mã lệnh cho siêu DL
của mỗi tập tin;
Mỗi chương trình ứng dụng phải có các chương trình con
xử lý để đọc, thêm, sửa và xóa DL;
Không có các điều khiển chung và phối hợp;
Các dạng thức tập tin không có cùng chuẩn.
Phụ thuộc dữ liệu –
chương trình
9 Duplication of data
Tốn vùng nhớ để lưu trữ DL dư thừa;
Gây ra các vấn đề khó về bảo trì DL.
Vấn đề chính:
Việc cập nhật DL của một tập tin có thể dẫn đến các
mâu thuẫn DL;
Vi phạm tính toàn vẹn DL (data integrity);
Vi phạm tính toàn vẹn siêu DL (metadata integrity);.
Trùng lắp dữ liệu
10
Duplicate Data
Trùng lắp dữ liệu
11
3. Cơ sở dữ liệu
Định nghĩa:
- Database
- CSDL là sự tập hợp có tổ chức các dữ liệu có liên quan
luận lý với nhau;
- Dữ liệu (data): sự biểu diễn của các đối tượng và sự
kiện được ghi nhận và được lưu trữ trên các phương tiện
của máy tính;
Dữ liệu có cấu trúc: số, ngày, chuỗi ký tự,
Dữ liệu không có cấu trúc: hình ảnh, âm thanh, đoạn
phim,
- Có tổ chức (organized): người sử dụng có thể dễ dàng
lưu trữ, thao tác và truy xuất dữ liệu;
12
Dữ liệu
Định nghĩa (tt):
- Có liên quan luận lý (logically related): DL mô tả 1 lãnh
vực mà nhóm người sử dụng quan tâm và được dùng để
trả lời các câu hỏi liên quan đến lãnh vực này;
Hay: CSDL là 1 hệ thống các thông tin có cấu trúc,
được lưu trữ trên các thiết bị lưu trữ nhằm thỏa mãn
yêu cầu khai thác thông tin đồng thời của nhiều người
sử dụng hay nhiều chương trình ứng dụng với những
mục đích khác nhau.
13
Thông tin
Information
Thông tin là DL đã được xử lý để làm tăng sự hiểu biết
của người sử dụng.
Dữ liệu trong ngữ cảnh.
Dữ liệu được tổng hợp/xử lý.
Dữ liệu
50010273 Nguyễn Trung Tiến MT00 20
50100298 Lê Việt Hùng MT01 19
59900012 Trần Hùng Việt MT99 21
50200542 Hồ Xuân Hương MT02 18
50000075 Bùi Đức Duy MT00 20
14
Thông tin: dữ liệu trong ngữ cảnh
Mã sinh viên Họ và tên sinh viên Lớp Tuổi
50010273 Nguyễn Trung Tiến MT00 20
50100298 Lê Việt Hùng MT01 19
59900012 Trần Hùng Việt MT99 21
50200542 Hồ Xuân Hương MT02 18
50000075 Bùi Đức Duy MT00 20
MT00
40%
MT01
20%
MT02
20%
MT99
20%
Thông tin: dữ liệu được tổng hợp / xử lý
15
metadata
Siêu dữ liệu là DL dùng để mô tả các tính chất/ đặc tính
của DL khác (dữ liệu về dữ liệu).
Các đặc tính: định nghĩa DL, cấu trúc DL, qui tắc/ràng
buộc.
Siêu dữ liệu
Siêu dữ liệu cho Sinh_viên
Data Item Value
Name Type Length Min Max Description
MaSV Character 8 Ma sinh vien
Hoten Character 30 Ho ten sinh vien
Lop Character 3 Lop
Tuoi Number 2 17 25 Tuoi
16
Database approach
Kho DL trung tâm chứa các DL dùng chung;
DL được quản lý bởi 1 đơn vị điều khiển (controlling
agent);
DL được lưu trữ theo 1 dạng thức chuẩn & thích hợp;
Cần phải có 1 hệ quản trị CSDL.
Cách tiếp cận CSDL
17
Ưu điểm
Độc lập DL – chương trình (data - program
independence)
DBMS chứa siêu DL => các ứng dụng không cần
quan tâm đến các dạng thức của DL;
DBMS quản lý các truy vấn và cập nhật DL => ứng
dụng không cần xử lý việc truy xuất DL.
Giảm tối thiểu sự dư thừa DL (data redundancy)
Nâng cao tính nhất quán (data consistency)/toàn
vẹn dữ liệu (data integrity).
Cách tiếp cận CSDL
18
Cách tiếp cận CSDL
Ưu điểm(tt)
Nâng cao việc dùng chung DL (data sharing)
Những người sử dụng khác nhau có những cái nhìn
khác nhau về DL.
Tăng hiệu suất phát triển ứng dụng
Tuân thủ các tiêu chuẩn
Tất cả các truy xuất DL đều được thực hiện theo cùng
1 cách.
Nâng cao chất lượng của DL
Các ràng buộc (constraint), các qui tắc hợp lệ của DL
(data validation rule).
19
Cách tiếp cận CSDL
Ưu điểm(tt)
Nâng cao tính truy xuất và tính đáp ứng của DL
Sử dụng ngôn ngữ truy vấn DL chuẩn (SQL -
Structured Query Language).
Giảm chi phí bảo trì chương trình.
Bảo mật (security)
Chép lưu (backup) và phục hồi (recovery)
Điều khiển tương tranh (concurrency control).
20
Cách tiếp cận CSDL
Chi phí và rủi ro
Chi phí ban đầu
Chi phí cài đặt và quản lý
Chi phí chuyển đổi (conversion cost)
Chi phí vận hành
Cần nhân viên mới có chuyên môn.
Cần phải chép lưu và phục hồi.
Mâu thuẫn về mặt tổ chức
Rất khó thay đổi các thói quen cũ
21
3. Cơ sở dữ liệu
Những vấn đề cần giải quyết:
Tính chủ quyền dữ liệu
Tính bảo mật và quyền khai thác thông tin của
người sử dụng
Tranh chấp dữ liệu
Đảm bảo dữ liệu khi có sự cố.
22
Các loại CSDL
CSDL cá nhân
personal database
CSDL riêng.
CSDL nhóm làm việc
workgroup database
Mạng cục bộ (ít hơn 25 người sử dụng)
CSDL phòng ban
department database
Mạng cục bộ (từ 25 đến 100 người sử dụng)
CSDL xí nghiệp
enterprise database
Mạng diện rộng (hàng trăm, hàng ngàn người sử dụng)
23
Các loại CSDL
24
4. Các đối tượng sử dụng
Người sử dụng CSDL không chuyên về lĩnh vực tin
học và CSDL -> cần công cụ để họ có thể khai thác
CSDL khi cần.
Chuyên viên tin học xây dựng các ứng dụng để phục
vụ cho các mục đích quản lý
Quản trị CSDL: tổ chức CSDL, bảo mật, cấp quyền,
sao lưu, phục hồi dữ liệu, giải quyết các tranh chấp
dữ liệu
25
26
CƠ SỞ DỮ LIỆU
Chỉ mục web (Web
indexes
Tài khoản ngân hàng
(Bank accounts)
Hệ nhân sự (Personnel
systems)
Danh mục sản phẩm
(Product catalogues)
Danh bạ đt (Telephone
directories)
Train timetables
Airline bookings
Credit card details
Student records
Customer histories
Stock market prices
Discussion boards
27
HỆ CƠ SỞ DỮ LIỆU
Một hệ CSDL bao
gồm
Dữ liệu (CSDL)
Phần mềm
Phần cứng
Người dùng
Môn học: tập trung
vào Phần mềm
Hệ CSDL cho phép
người sử dụng:
Lưu trữ
Cập nhật
Tìm kiếm (Retrieve)
Tổ chức
Bảo mật (Protect)
dữ liệu của họ.
28
5. Hệ quản trị cơ sở dữ liệu
Hệ quản trị CSDL (DBMS – DataBase
Management System) là hệ thống các phần mềm hỗ
trợ tích cực cho các nhà phân tích, thiết kế và khai
thác CSDL.
Các DBMS thông dụng: Visual FoxPro, MS
Access, MS SQL Server, DB2 (IBM), Oracle,
Ingres, PostgreSQL, hầu hết các DBMS hiện
nay đều dựa trên mô hình quan hệ.
29
5. Hệ quản trị cơ sở dữ liệu
30
Chức năng của 1 DBMS:
Lưu trữ, truy xuất và cập nhật DL
Ngôn ngữ định nghĩa dl (DDL - Data Definition Language)
Ngôn ngữ thao tác dl (DML - Data Manipulation
Language)
Ngôn ngữ truy vấn dữ liệu.
Quản lý giao tác (transaction management);
Điều khiển tương tranh (concurrency control): Cơ chế
giải quyết tranh chấp dl;
Chép lưu (backup), phục hồi (restore) dl;
Bảo mật dữ liệu
Ngôn ngữ điều khiển dl (DCL - Data Control Language).
Hỗ trợ truyền thông dl;
Duy trì tính toàn vẹn/nhất quán dl;
Cung cấp các tiện ích.
31
Một DBMS phải có:
Ngôn ngữ giao tiếp giữa user và CSDL;
Từ điển DL (Data Dictionary): mô tả các ánh xạ liên kết,
ghi nhận các thành phần cấu trúc của CSDL, các chương
trình ứng dụng, mật mã, quyền hạn sử dụng,
Cơ chế giải quyết vấn đề tranh chấp dl: Cấp quyền ưu tiên
cho user; Đánh dấu yêu cầu truy xuất dl, phân chia thời gian,
user nào có yêu cầu trước thì có quyền truy xuất dl trước,
Có cơ chế sao lưu (backup), phục hồi (restore);
Có biện pháp bảo mật khi có yêu cầu;
Đảm bảo tính độc lập giữa dữ liệu và chương trình;
Cung cấp giao diện thân thiện, dễ sử dụng.
32
5. Hệ quản trị cơ sở dữ liệu
Ngôn ngữ giao tiếp:
Ngôn ngữ mô tả dl (DDL): cho phép khai báo cấu trúc CSDL,
các mối liên hệ của dl, các quy định, ràng buộc dl;
Ngôn ngữ thao tác dl (DML): cho phép thực hiện thao tác
thêm, xóa, sửa dl;
Ngôn ngữ truy vấn có cấu trúc (SQL – Structured Query
Language): cho phép người khai thác sử dụng để truy vấn
thông tin cần thiết;
Ngôn ngữ điều khiển dữ liệu (DCL): cho phép thay đổi cấu
trúc bảng, khai báo bảo mật, cấp quyền cho người sử dụng.
33
Sự phát triển của các hệ CSDL
Hệ thống tập tin (flat file): 1960 - 1980
Hệ CSDL phân cấp (hierarchical): 1970 - 1990
Hệ CSDL mạng (network): 1970 - 1990
Hệ CSDL quan hệ (relational): 1980 - nay
Hệ CSDL hướng đối tượng (object-oriented): 1990 - nay
Hệ CSDL đối tượng - quan hệ (object-relational): 1990 - nay
Kho dữ liệu (data warehouse): 1980 - nay
Web-enabled: 1990 - nay
34
6. Các mức biểu diễn 1 CSDL
Mức trong: (mức vật lý – Physical) là mức lưu trữ CSDL
(cần giải quyết vấn đề gì? Dữ liệu gì? Lưu trữ như thế nào? ở
đâu? Cần các chỉ mục gì? Truy xuất tuần tự hay ngẫu nhiên.
Dành cho người quản trị và người sử dụng chuyên môn;
Mức quan niệm: (Conception hay Logical) cần phải lưu trữ
bao nhiêu loại dữ liệu? là dữ liệu gì? mối quan hệ;
Mức ngoài: của người sử dụng và các chương trình ứng
dụng.
35
6. Các mức biểu diễn 1 CSDL
Cấu trúc
ngoài 1
t
i
Cấu trúc
ngoài 2
t
i
Cấu trúc
ngoài n
t
i
Chương trình
ứng dụng
Mức
quan
niệm
hoặc
mức
logic
Mức vật lý –
Cấu trúc vật lý
CSDL
Môi trường
thực thế giới
thực
NSD1
NSD2
36
1. Hãy nêu ví dụ về một CSDL;
2. Hãy trình bày ưu điểm của việc xây dựng 1 CSDL;
3. Hãy liệt kê các chi phí phải xem xét khi mua 1 hệ thống
CSDL;
4. Người thiết kế CSDL cần có được mối quan hệ nào với
người sử dụng CSDL?
5. Tại sao DBA phải hoạt động khăng khít với nhóm quản
lý hệ thống? Anh ta sẽ hoạt động tốt hơn khi làm việc
cho các phòng ban hay không?
6. Trình bày mối liên hệ các thành phần (giao diện) của
DBMS;
BÀI TẬP TẠI LỚP
37
7. Các mô hình dữ liệu
38
Giới thiệu
Mô hình DL là sự trừu tượng hóa của môi trường thực, biểu
diễn DL ở mức quan niệm.
Lịch sử phát triển của các mô hình DL:
Những năm 60 - thế hệ đầu tiên của CSDL: mô hình thực
thể kết hợp, mô hình mạng và mô hình phân cấp;
Những năm 70 – thế hệ thứ hai của CSDL: mô hình dl quan
hệ của EF. Codd;
Thập kỷ 80 – thế hệ thứ ba: mô hình CSDL hướng đối
tượng, mô hình CSDL phân tán, mô hình CSDL suy
diễn,
39
a. Mô hình dữ liệu mạng
Mô hình dữ liệu mạng (Network Data Model) còn
gọi tắt là mô hình mạng hoặc mô hình lưới là mô
hình được biểu diễn bởi một đồ thị có hướng.
Mẫu tin/ bản ghi (Record)
Loại mẫu tin (record Type)
Loại liên hệ (Set Type)
Bản số
40
a. Mô hình dữ liệu mạng
Mẫu tin: mô tả 1 đối tượng trong thế giới thực.
(‘NV001’,’Nguyen Lam’,’Nam’,’10/10/1970’,’Dong Nai’)
Loại mẫu tin: là 1 tập các mẫu tin có cùng tính
chất. Ví dụ: NHANVIEN
Ký hiệu:
Loại liên hệ: mô tả sự liên kết giữa 1 loại mẫu tin
chủ và 1 loại mẫu tin thành viên
Ký hiệu:
NHANVIEN
Tham gia
CONGVIEC
41
a. Mô hình dữ liệu mạng
Bản số: chỉ ra số lượng các mẫu tin tham gia trong
mối liên hệ:
(1:1) (one-to-one): mỗi mẫu tin của loại mẫu tin chủ kết
hợp với đúng 1 mẫu tin của loại mẫu tin thành viên.
(1:n) (one-to-many): mỗi mẫu tin của loại mẫu tin chủ
kết hợp với 1 hay nhiều mẫu tin thành viên.
(n:1) (many-to-one): nhiều mẫu tin của loại mẫu tin chủ
kết hợp với đúng 1 mẫu tin của loại mẫu tin thành viên.
(Recursive): một loại mẫu tin chủ cũng có thể đồng thời
là loại mẫu tin thành viên với chính nó. Loại liên hệ này
là Đệ quy.
42
a. Mô hình dữ liệu mạng
PHONG
CONGVIEC
NHANVIEN
LYLICH
gồm có
quản lý
trực tiếpcùng làm
n:1
1:1
1:n
1:n
43
a. Mô hình dữ liệu mạng
Mô hình dữ liệu mạng:
Tương đối đơn giản;
Dễ sử dụng;
Không thích hợp biểu diễn CSDL có quy mô lớn;
Khả năng diễn đạt ngữ nghĩa kém.
44
a. Mô hình dữ liệu mạng
Bài tập:
1. Xây dựng mô hình dữ liệu mạng cho CSDL quản
lý bán hàng trong một siêu thị;
2. Xây dựng mô hình mạng dựa trên việc thành lập
mối quan hệ giữa các loại mẫu tin: Môn học, lớp
học, học viên, kết quả và MH_Lớp.
45
b. Mô hình dữ liệu phân cấp
Hierachical (Data) Model;
Là 1 cây, mỗi nút của cây biểu diễn 1 thực thể, giữa nút
cha và nút con được liên hệ với nhau theo 1 mối quan hệ
xác định.
Loại mẫu tin: giống như mô hình DL mạng;
Loại mối liên hệ: phân cấp theo:
Mẫu tin thành viên chỉ đóng vai trò thành viên của 1 mối
liên hệ duy nhất (thuộc 1 chủ thể duy nhất);
Giữa 2 loại mẫu tin chỉ tồn tại 1 mối liên hệ duy nhất.
46
47
c. Mô hình thực thể mối kết hợp
i. Giới thiệu
ii. Loại thực thể, thực thể
iii. Thuộc tính của loại thực thể
iv. Khoá của loại thực thể
v. Loại mối kết hợp, mối kết hợp
vi. Thuộc tính của loại mối kết hợp
vii. Bản số
viii. Mô hình ER mở rộng
48
i. Giới thiệu
Mô hình thực thể mối kết hợp (Entity-Relationship Model viết
tắt ER): P.CHEN (1976.)
Mô hình ER: Sử dụng nhiều trong thiết kế dl ở mức quan niệm
(conceptual data model); Là công cụ giao tiếp giữa người thiết
kế CSDL & End User để x.dựng CSDL trong g.đoạn phân tích;
Được lựa chọn nhiều do
- Dễ dùng;
- Có công cụ hỗ trợ tự động;
- Thực thể và mối liên kết là những khái niệm mô hình hoá tự
nhiên trong thế giới thực.
? Hãy trình bày quá trình thiết kế một CSDL sử dụng mô hình
quan niệm bậc cao.
49
ii. Loại thực thể, Thực thể
(Entity Type, Entity)
Định nghĩa: loại thực thể (Entity Type) là những
loại đối tượng hay sự vật của thế giới thực tồn tại cụ
thể cần được quản lý
Ví dụ: HOCVIEN, LOP, MONHOC,
Ký hiệu:
HOCVIEN LOP
50
Định nghĩa: thực thể là 1 thể hiện hoặc 1 đối tượng
của một loại thực thể.
Ví dụ:
Loại thực thể là HOCVIEN có các thực thể:
(‘HV001’, ‘Nguyen Nam’, ‘1/2/1987’,’Nam’)
(‘HV002’, ‘Trần Nam’, ‘13/2/1987’, ‘Nam’)
(‘HV003’, ‘Huỳnh Mỹ’, ‘13/2/1987’, ‘Nữ’)
ii. Loại thực thể, Thực thể
(Entity Type, Entity)
51
iii. Thuộc tính của loại thực thể
(Entity Attribute)
Định nghĩa: thuộc tính là những tính chất đặc
trưng của loại thực thể cần lưu trữ.
Ví dụ: Loại thực thể HOCVIEN có các thuộc tính:
Mã học viên, họ tên, giới tính, ngày sinh, nơi sinh
Ký hiệu:
HOCVIEN
Hoten
Gioitinh
Mahv
Ngaysinh
Noisinh
HOCVIEN
Hoten
Gioitinh
Mahv
Ngaysinh
Noisinh
52
iii. Các loại thuộc tính (1)
Thuộc tính đơn (simple attribute): thuộc tính không bị phân
rã thành các thuộc tính khác.
Ví dụ: Mahv
Thuộc tính phức/đa hợp (composite attribute): thuộc tính
bị phân rã thành các thuộc tính khác
Ví dụ: DCHI(SONHA, DUONG, PHUONG, QUAN)
hay thuộc tính HOTEN(HO, TENLOT, TEN).
53
iii. Các loại thuộc tính (2)
Thuoäc tính ñôn
Thuoäc tính phức hôïp
54
iii. Các loại thuộc tính (3)
Thuộc tính đơn trị (single-valued attribute): là thuộc tính chỉ
chứa một giá trị;
Thuộc tính đa trị (multi-valued attribute): thuộc tính chứa
nhiều giá trị khác nhau thuộc 1 miền trị
Ví dụ: BANGCAP; SKILL
Thuộc tính chứa (stored attribute): là thuộc tính mà giá trị
của nó không được suy dẫn từ các thuộc tính khác;
Thuộc tính dẫn xuất (derived attribute): là thuộc tính mà giá
trị của nó được suy dẫn từ các thuộc tính khác;
Giá trị không xác định được (null values)
55
iii. Các loại thuộc tính (4)
Thuộc tính đơn trị
Thuộc tính đa trị
Thuộc tính chứa
Thuộc tính dẫn xuất
56
iii. Các loại thuộc tính (5)
Tóm lại, các thuộc tính phức/đa hợp và đa trị có thể
lồng nhau tùy ý.
Ví dụ:
Thuộc tính BANGCAP của HOCVIEN là một
thuộc tính đa hợp được ký hiệu bằng:
{BANGCAP(TRUONGCAP, NAM, KETQUA,
CHUYENNGANH)}
57
iv. Khoá của loại thực thể
(entity type key)
key/ identifier
Khóa là một thuộc tính hoặc tổ hợp các thuộc tính dùng để xác
định duy nhất 1 thể hiện của 1 kiểu thực thể;
Thuộc tính khóa và thuộc tính không khóa
Thuộc tính khóa là thuộc tính ở trong khóa.
key attribute / prime attribute / identifier attribute
Thuộc tính khóa được gạch dưới.
Thuộc tính không khóa (non-key attribute) là thuộc tính
không ở trong khóa.
Thuộc tính không khóa/ thuộc tính mô tả (descriptor).
58
iv. Khoá của loại thực thể (2)
Khóa đơn và khóa phức hợp
Khóa đơn (simple key) là khóa chỉ có 1 thuộc tính.
Khóa phức hợp (composite key) là khóa có nhiều hơn 1
thuộc tính.
Khóa dự tuyển
candidate key/ Khóa dự tuyển là khóa của 1 kiểu thực thể.
Một kiểu thực thể có ít nhất 1 khóa dự tuyển.
Khóa chính
primary key/ Khóa chính là 1 khóa tiêu biểu trong các khóa
dự tuyển của 1 kiểu thực thể.
Một kiểu thực thể chỉ có một khóa chính.
Khóa chính dùng để liên kết giữa các thực thể.
59
iv. Khoá của loại thực thể (3)
Khóa đơn
Khóa phức hợp
Thuộc tính không khóa
60
Định nghĩa: loại mối kết hợp là sự kết hợp giữa hai
hay nhiều loại thực thể;
Ví dụ: giữa hai loại thực thể HOCVIEN và LOP có
loại mối kết hợp THUOC
Ký hiệu: bằng một hình thoi hoặc hình oval
v. Loại mối kết hợp (1)
(relationship type)
ThuocHOCVIEN LOP
61
v. Loại mối kết hợp (2)
Giữa hai loại thực thể có thể tồn tại nhiều hơn một
loại mối kết hợp.
Ví dụ:
Thuộc
HOCVIEN LOP
Là trưởng lớp
62
v. Số ngôi của loại mối kết hợp
(relationship degree)
degree/ arity of relationship
Bậc/ Số ngôi của mối liên kết là số lượng kiểu thực thể
tham gia đồng thời vào mối kết hợp này
Các loại mối liên kết
Mối liên kết 1-ngôi (unary relationship)
Mối liên kết 2-ngôi (binary relationship)
Mối liên kết 3-ngôi (ternary relationship): 3 kiểu thực
thể đồng thời tham gia vào mối liên kết.
63
v. Số ngôi của loại mối kết hợp (3)
(relationship degree)
Ví dụ 1:
Loại mối kết hợp Thuộc kết hợp 2 loại thực thể
HOCVIEN và LOP nên có số ngôi là 2.
Ví dụ 2:
Loại mối kết hợp Giảng dạy kết hợp 3 loại thực
thể GIAOVIEN, MONHOC, LOP nên có số ngôi
là 3.
64
v. Số ngôi của loại mối kết hợp (3)
HOCVIEN LOP
Thuoc
LOP MONHOC
Giang day
GIAOVIEN
65
vi. Thuộc tính của loại mối kết hợp
(relationship type attribute)
Thuộc tính của loại mối kết hợp bao gồm các
thuộc tính khoá của các loại thực thể tham gia vào
loại mối kết hợp đó. Ngoài ra còn có thể có thêm
những thuộc tính bổ sung khác.
Ví dụ:
Loại mối kết hợp Giảng dạy giữa ba loại thực thể
GIAOVIEN, MONHOC và LOP có các thuộc tính
là Magv, Mamh, Malop, ngoài ra còn có thuộc tính
riêng là Hocky, Nam
66
Thuộc tính của loại mối kết hợp
LOP MONHOC
Giang day
GIAOVIEN
Hocky
Nam
67
Bản số
(relationship cardinality)
Loại mối kết hợp thể hiện liên kết giữa các thực thể,
mỗi liên kết được gọi là một nhánh.
Định nghĩa:
Bản số của nhánh là số lượng tối thiểu và số
lượng tối đa các thực thể thuộc nhánh đó tham
gia vào loại mối kết hợp.
Ký hiệu: (bản số tối thiểu, bản số tối đa)
Ví dụ:
Loại thực thể NhanVien và DeAn có loại mối kết
hợp ThamGia.
68
Bản số
Thuộc
HOCVIEN LOP
(1,1) (1,n)
69
Bản số
Thuộc
HOCVIEN LOP
Là trưởng lớp
(1,1) (1,n)
(0,1) (1,1)
70
vii. Mô hình ER mở rộng
Chuyên biệt hoá/ Tổng quát hóa
Mối kết hợp đệ quy
Loại thực thể yếu
71
Chuyên biệt hóa
GiaoVien HocVien
ConNguoi
HocVi
NgayVL
NgayNH
Khóa
SoCMND
HoTen
...
Tổng quát hóa
Xe ô tô được tổng quát hóa từ xe con và xe tải
73
Mối kết hợp đệ quy
Định nghĩa: là loại mối kết hợp được tạo thành từ
cùng một loại thực thể (hay một loại thực thể có
loại mối kết hợp với chính nó)
Ví dụ: Mỗi nhân viên có một người quản lý trực
tiếp và người quản lý đó cũng là một nhân viên
NHANVIEN QuanLy
(1,n)
(0,1)
74
Định nghĩa:
Là loại thực thể không có thuộc tính khóa
Phải tham gia trong một loại mối kết hợp xác
định trong đó có một loại thực thể chủ.
Ký hiệu:
Ví dụ: loại thực thể LANTHI có thuộc tính Lần và
tham gia trong loại mối kết hợp Thi với loại thực
thể HOCVIEN và MONHOC là loại thực thể yếu.
Thực thể
Loại thực thể yếu
75
Loại thực thể yếu
Thi
HOCVIEN LANTHI
(1,n) (1,n)
MONHOC
(1,n)
76
Bài tập
Xây dựng mô hình ER
Xây dựng mô hình ER cho CSDL quản lý học viên
của lớp học;
Xây dựng mô hình ER cho CSDL quản lý giáo vụ
gồm có các chức năng sau:
Lưu trữ thông tin: Học viên , giáo viên, môn học
Xếp lớp cho học viên, chọn lớp trưởng cho lớp
Phân công giảng dạy: giáo viên dạy lớp nào với môn học
gì, ở học kỳ, năm học nào.
Lưu trữ kết quả thi: học viên thi môn học nào, lần thi thứ
mấy, điểm thi bao nhiêu.
77
Xây dựng lược đồ ER cho CSDL CÔNG TY như sau:
Giả sử rằng sau khi tập hợp các yêu cầu và phân tích, hoạt động của
công ty được ghi chép lại như sau:
1. Công ty được tổ chức thành các đơn vị (đv). Mỗi đv có 1 tên duy nhất, 1
mã số duy nhất, 1 nhân viên (nv) cụ thể quản lý đơn vị. Việc nv quản lý
đơn vị được ghi lại bằng ngày nv đó bắt đầu quản lý. Một đơn vị có thể có
nhiều địa điểm.
2. Mỗi đơn vị kiểm soát 1 số dự án. Một dự án có 1 tên duy nhất, 1 mã số
duy nhất và 1 địa điểm.
3. Với mỗi nv chúng ta lưu giữ lại Họ tên, Mã số duy nhất, địa chỉ, lương,
giới tính, ngày sinh. Một nv chỉ làm việc cho 1 đơn vị nhưng có thể làm
việc trên nhiều dự án do nhiều đơn vị kiểm soát. Chúng ta lưu giữ lại số
giờ làm việc của mỗi nv trên một dự án. Mỗi nv có thể có 1 người giám sát
trực tiếp, người đó cũng là 1 nv.
4. Mỗi nv có những người con. Những người này được hưởng bảo hiểm
theo nv. Với mỗi người con của nv, chúng ta lưu giữ Họ tên, giới tính,
ngày sinh;
78
Thiết kế CSDL
Các bước thiết kế
Nguyên lý thiết kế
Ví dụ
Sơ đồ
các bước
chính
của thiết
kế CSDL
Lược đồ
ER của
Công ty
EER –
Chuyên
biệt hóa
82
Các file đính kèm theo tài liệu này:
- co_so_du_lieubuoi1_6495_2051756.pdf