Hệ thống CSDL của một ứng dụng tin học là 1 tập hợp dữ
liệu được tổ chức 1 cách chọn lọc, ghi trên các thiết bị trữ
tin, nhằm phục vụ đồng thời cho nhiều người, với nhiều mục
đích xử lý và khai thác khác nhau.
54 trang |
Chia sẻ: lylyngoc | Lượt xem: 1626 | Lượt tải: 3
Bạn đang xem trước 20 trang tài liệu Thiết kế cơ sở dữ liệu - Chương 1: Giới thiệu tổng quan, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐH CÔNG NGHỆ THÔNG TIN
Số tiết lý thuyết: 45 tiết
Số tiết thực hành: 30 tiết
1
GVHD: Dương Khai Phong – Email khaiphong@gmail.com
2
Chương 1: Giới thiệu tổng quan
Chương 2: Mô hình dữ liệu và các phụ thuộc dữ liệu
Chương 3: Phương pháp chuẩn hóa Lược đồ CSDL
Chương 4: Lý thuyết đồ thị quan hệ
Chương 5: Thiết kế CSDL ở mức vật lý
Nội dung môn học:
Nội dung đánh giá
Tỷ lệ
điểm
Ghi chú
BÀI TẬP TẠI LỚP
30%
Bài tập có thể làm
việc theo nhóm
(từ 2-3 sv)BÀI TẬP THỰC HÀNH
THI HẾT MÔN 70% Theo lịch thi PĐT
3
Hình thức đánh giá:
4
Chương 1: Giới thiệu tổng quan
Chương 2: Mô hình dữ liệu và các phụ thuộc dữ liệu
Chương 3: Phương pháp chuẩn hóa Lược đồ CSDL
Chương 4: Lý thuyết đồ thị quan hệ
Chương 5: Thiết kế CSDL ở mức vật lý
Nội dung môn học:
5
Các giai đoạn thiết kế CSDL
Chương 1: Giới thiệu tổng quan
Giới thiệu
Chu kỳ sống của một CSDL
6
Khái niệm Hệ thống cơ sở dữ liệu:
Chương 1: Giới thiệu tổng quan
Hệ thống CSDL của một ứng dụng tin học là 1 tập hợp dữ
liệu được tổ chức 1 cách chọn lọc, ghi trên các thiết bị trữ
tin, nhằm phục vụ đồng thời cho nhiều người, với nhiều mục
đích xử lý và khai thác khác nhau.
Ví dụ: Trong một công ty phần mềm:
Bộ phận quản lý tiền lương có nhu cầu lập bảng
lương cho đơn vị vđi các thông tin ghi trên bảng lương
như sau: STT, họ tên, hệ số lương, tiền lương, Chữ ký
Trong đó, Tiền lương = hệ số lương X 500000; hệ số
lương được phân chia dựa trên học vị.
Bộ phận quản lý dự án có nhu cầu lập danh sách
phân công nhân viên cho các dự án, với các thông tin:
STT, họ tên, chuyên môn, dự án.
Trong đó, nhân viên được phân công phải có chuyên
môn phù hợp vđi yêu cầu chuyên môn của từng dự án.
7
Khái niệm Hệ thống cơ sở dữ liệu:
Chương 1: Giới thiệu tổng quan
Hệ thống CSDL của một ứng dụng tin học là 1 tập hợp dữ
liệu được tổ chức 1 cách chọn lọc, ghi trên các thiết bị trữ
tin, nhằm phục vụ đồng thời cho nhiều người, với nhiều mục
đích xử lý và khai thác khác nhau.
Ví dụ: Trong một công ty phần mềm:
Hệ thống CSDL được xây dựng sao cho có thể phục vụ
cho các mục tiêu trên của các phòng ban?
8
Khái niệm Hệ thống cơ sở dữ liệu:
Chương 1: Giới thiệu tổng quan
Hệ thống CSDL của một ứng dụng tin học là 1 tập hợp dữ
liệu được tổ chức 1 cách chọn lọc, ghi trên các thiết bị trữ
tin, nhằm phục vụ đồng thời cho nhiều người, với nhiều mục
đích xử lý và khai thác khác nhau.
Ví dụ: Trong một công ty phần mềm:
Bộ phận quản lý tiền lương có nhu cầu lập bảng
lương cho đơn vị vđi các thông tin ghi trên bảng lương
như sau: STT, họ tên, hệ số lương, tiền lương, Chữ ký
Trong đó, Tiền lương = hệ số lương X 500000; hệ số
lương được phân chia dựa trên học vị.
Bộ phận quản lý dự án có nhu cầu lập danh sách
phân công nhân viên cho các dự án, với các thông tin:
STT, họ tên, chuyên môn, dự án.
Trong đó, nhân viên được phân công phải có chuyên
môn phù hợp vđi yêu cầu chuyên môn của từng dự án.
Môi trường CSDL
CT QLTL
CT QLDA
Bảng
Lương
Bảng
Phân công
Danh mục
HSL
Danh mục
Dự án
Nhân viên
9
Mục tiêu chính của thiết kế CSDL:
Chương 1: Giới thiệu tổng quan
Làm thế nào chuyển đổi nhu cầu lưu trữ và khai thác dữ
liệu của người dung thành một hệ thống CSDL hiệu quả?
Tính hiệu quả được thể hiện cụ thể bởi các tính chất:
Tính không trùng lắp.
Tính nhất quán dữ liệu.
Tính dễ khai thác.
Dễ kiểm tra các qui tắc quản lý bởi các ràng buộc toàn
vẹn.
Dễ cập nhật và nâng cấp hệ thống.
10
Mục tiêu chính của thiết kế CSDL:
Chương 1: Giới thiệu tổng quan
Ví dụ: Thiết kế CSDL dữ liệu cho công ty phần mềm trên, với
cùng các nhu cầu lưu trữ và khai thác dữ liệu, có thể có
nhiều cấu trúc CSDL khác nhau:
o Thiết kế 1:
NhanVien(MaNV, HoTen, ChuyenMon, HSLg, TienLuong,
ChuKy)
DanhMucDuAn( MaDA, TenDuAn,...)
o Thiết kế 2:
NhanVien(MaNV, HoTen, ChuyenMon, Hocvi)
DMHSLuong(Hocvi, HeSoLuong)
DanhMucDuAn( MaDA, TenDuAn,...)
PhanCong(MaDA, MaNV)
11
Tiêu chuẩn để lựa chọn một cấu trúc CSDL hiệu quả:
Chương 1: Giới thiệu tổng quan
• Thời quan truy xuất dữ liệu đáp ứng cho một yêu cầu
khai thác?
• Thời gian phục hồi CSDL khi có sự cố ?
• Chi phí tổ chức và cài đặt CSDL ?
• Dễ bảo trì, nâng cấp, sửa đổi khi phát sinh những nhu
cầu mới hay không?
12
Các thông tin vào / ra quy trình thiết kế:
Chương 1: Giới thiệu tổng quan
(1) Yêu cầu về thông tin: dùng CSDL cho vấn đề gì?
Xuất phát từ người sử dụng có nhu cầu và quan điểm?
(2) Yêu cầu về xử lý: mỗi nhóm người sử dụng sẽ nêu
ra các yêu cầu xử lý của riêng mình; Tần suất xử lý và
khối lượng dữ liệu.
(3) Đặc trưng kỹ thuật của hệ quản trị CSDL cần sử
dụng để cài đặt CSDL.
(4) Cấu hình thiết bị tin học gì để đáp ứng với (1), (2)
và (3).
Thông
tin vào
Thông
tin ra
(1) Cấu trúc quan niệm CSDL.
(2) Cấu trúc Logic CSDL.
(3) Cấu trúc Vật lý CSDL.
13
Các thông tin vào / ra quy trình thiết kế:
Chương 1: Giới thiệu tổng quan
Quy trình TK CSDLL
Y/c
Thông tin
Y/c
Xử lý
Phần
mềm
Phần
cứng
CTQN
CSDL
CTLG
CSDL
CTVL
CSDL
14
Các giai đoạn thiết kế CSDL
Chương 1: Giới thiệu tổng quan
Giới thiệu
Chu kỳ sống của một CSDL
15
Chu kỳ sống của một CSDL:
Chương 1: Giới thiệu tổng quan
Một ứng dụng tin học được triển khai thực hiện trải qua các
giai đoạn:
E
F
G
Giai đoạn xây dựng CSDL
Giai đoạn thử nghiệm
và khai thác
16
Chu kỳ sống của một CSDL:
Chương 1: Giới thiệu tổng quan
Giai đoạn xây dựng CSDL
(A) Phân tích các nhu cầu của người sử dụng.
(B) Thiết kế CSDL ở mức quan niệm: nghĩa là xác định nội dung CSDL (chứa
những thông tin gì ?). Chỉ quan tâm ở mức dữ liệu.
(C) Thiết kế CSDL ở mức Logic: Chia vấn đề cần xử lý ra thành nhiều bước. Ở
đây chỉ chú ý đến các xử lý đặt ra, nhưng chưa chú ý đến phần mềm và phần
cứng.
(D) Thiết kế CSDL ở mức vật lý: Cài đặt CSDL như thế nào? Giải quyết những
vấn đề mang tính kỹ thuật.
Ví dụ: Sử dụng phần mềm nào? Với cấu hình máy ra sao?.
Giai đoạn thử nghiệm và khai thác
(E) Cài đặt và chạy thử nghiệm: Nếu có sai sót thì phải hiệu chỉnh lại cấu trúc
CSDL ở các mức quan niệm; logic; vật lý.
(F) Đưa cho người sử dụng khai thác.
(G) Thích ứng CSDL theo những nhu cầu mới.
17
Các giai đoạn thiết kế CSDL
Chương 1: Giới thiệu tổng quan
Giới thiệu
Chu kỳ sống của một CSDL
18
Các giai đoạn thiết kế CSDL:
Chương 1: Giới thiệu tổng quan
Cấu trúc vật lý CSDL
Quy trình thiết kế CSDL
Phân tích nhu cầu
Bản đặc tả các nhu cầu
Thiết kế quan niệm
Cấu trúc quan niệm CSDL
Thiết kế logic
Cấu trúc logic CSDL
Thiết kế vật lý
Y/c
Thông tin
Y/c
Xử lý
Đặc trưng
kỹ thuật
phần mềm
Đặc trưng
kỹ thuật
phần cứng
19
Chương 1: Giới thiệu tổng quan
Phân tích nhu cầu Đây là bước khó nhất trong quá trình thiết kế vì nó
được thực hiện thông qua sự tiếp xúc giữa người thiết kế
và người sử dụng.
Nội dung:
• Thu thập thông tin về dữ liệu và xử lý từ người sử
dụng, từ các tài liệu, chứng từ, biểu mẫu thống kê
liên quan đến CSDL và cả những tài liệu của CSDL
cũ (nếu có).
• Sau khi thu thập phải tổng hợp và phân tích những
nhu cầu đó. Kiểm tra xem có những mâu thuẩn
giữa các nhu cầu không?
Yêu cầu xác định:
• Mục tiêu sử dụng, khai thác.
• Nội dung, yêu cầu chi tiết cần thực hiện.
• Thời gian đáp ứng và hình thức xử lý.
• Khối lượng dữ liệu, tần suất khai thác
• Yêu cầu về tính an toàn và bảo mật.
Các giai đoạn thiết kế CSDL:
20
Chương 1: Giới thiệu tổng quan
Ví dụ: Thiết kế CSDL cho các dịch vụ
Cách thực hiện:
• Phỏng vấn tực tiếp.
• Phỏng vấn gián tiếp: tự lập ra các câu hỏi trên giấy
để User trả lời.
• Đối tượng phỏng vấn Ban giám đốc, các phòng ban
có liên quan.
DỊCH VỤ
BÁN VÉ
DỊCH VỤ
MƯỢN SÁCH
THƯ VIỆN
TÍNH
LƯƠNG
SẢN XUẤT
T
ÍN
H
C
H
Ấ
T - Xử lý tức thời
- Xử lý riêng
từng trường
hợp.
- Có độ trễ
- Xử lý riêng
từng trường
hợp.
- Có định kỳ
- Xử lý chung
toàn bộ.
Phân tích nhu cầu
Các giai đoạn thiết kế CSDL:
21
Chương 1: Giới thiệu tổng quan
Kết quả:
• Lập sơ đồ: luân chuyển thông tín giữa những User
liên quan hoặc những nhóm Users liên quan.
• Đưa ra những dữ liệu cần thiết nhất.
• Phải có bộ hồ sơ hệ thống hoá những nhu cầu và
viết theo ngôn ngữ bình thường để người dùng đọc
lại và bổ sung những yêu cầu của họ.
• Bộ hồ sơ này còn được dùng để nghiệm thu CSDL.
Phân tích nhu cầu
Các giai đoạn thiết kế CSDL:
22
Chương 1: Giới thiệu tổng quan
Mục đích:
• Xác định nội dung dữ liệu, mối quan hệ giữa các dữ
liệu bên trong CSDL.
• Xác định đúng và đầy đủ dữ liệu, loại bỏ các dữ liệu
thừa (Chưa cần quan tâm cách cài đặt).
• Công cụ: Dùng một mô hình dữ liệu nào đó để biểu
diễn tùy người thiết kế.
Cách thực hiện:
• Phân chia các nhu cầu ra thành từng mảng. Điều
đó dẫn đến sẽ có nhiều mô hình quan niệm dữ liệu,
mỗi mô hình liên quan đến 1 mảng.
• Cuối cùng cần tích hợp các mô hình đó lại. Khi tổng
hợp, cần phải xác định tất cả các ràng buộc toàn
vẹn và tạo ra từ điển dữ liệu.
Phân tích nhu cầu
Thiết kế quan niệm
Các giai đoạn thiết kế CSDL:
23
Chương 1: Giới thiệu tổng quan
Ví dụ: Thiết kế CSDL quản lý một công ty gồm có 2 đối
tượng: nhóm người quản trị kinh doanh và nhóm người
quản lý kho
Phân tích nhu cầu
Thiết kế quan niệm
Đối với người quản trị kinh doanh: chỉ quan
tâm đến các thành phẩm: Mã thành phẩm,
tên, số lượng tồn, đơn giá bán.
Đối với người quản lý kho: ngoài thông tín
thành phẩm, người quản lý kho còn quan
tâm đến các chứng từ liên quan đến các
thành phẩm: số đợt, giá thành, số lượng.
Các giai đoạn thiết kế CSDL:
24
Chương 1: Giới thiệu tổng quan
Mục đích:
• Dựa trên nhu cầu xử lý, nghiên cứu cách sử dụng
dữ liệu thông qua xử lý các thông tin cần: tần suất,
khối lượng ...
• Trong giao đoạn thiết kế quan niệm, dữ liệu cần loại
bỏ những thông tin trùng lắp. Nhưng ở giai đọan
thiết kế logic, cần phải cân nhắc, dựa trên hiệu quả
xử lý, để quyết định có hay không có cài đặt thông
tin trùng lắp.
Cách thực hiện:
• Chọn cấu trúc logic gần vđi phần mềm sẽ sử dụng
cài đặt CSDL.
• Ở giai đọan này , người ta thường thể hiện thông
tin theo mô hình Quan hệ.
Phân tích nhu cầu
Thiết kế quan niệm
Thiết kế logic
Các giai đoạn thiết kế CSDL:
25
Chương 1: Giới thiệu tổng quan
Mục đích:
• Xây dựng một cấu trúc vật lý phụ thuộc vào phần
mềm và cấu hình phần cứng mà ta đã lựa chọn để
cài đặt CSDL.
Giai đoạn này, đơn giản hay phức tạp tùy thuộc vào
đặc trưng kỹ thuật của phần mềm và phần cứng..
Cách thực hiện:
• Chọn lựa phần mềm phù hợp với độ phức tạp của
dự án.
• Chọn lựa cấu hình phần cứng.
• Quyết định những vấn đề liên quan đến an toàn dữ
liệu (cấp phát quyền truy cập) và phục hồi dữ liệu.
• Cài đặt vật lý: danh mục quan hệ (có thể gộp hay
không gộp các quan hệ khác biệt so với giai
đoạn thiết kế ban đầu), xác định quan hệ chính,
phụ,…
Phân tích nhu cầu
Thiết kế quan niệm
Thiết kế logic
Thiết kế vật lý
Các giai đoạn thiết kế CSDL:
ĐH CÔNG NGHỆ THÔNG TIN
26
27
Chương 1: Giới thiệu tổng quan
Bài 1
Hãy thiết kế CSDL cho bài toán quản lý bán hàng dựa trên các mô tả và các quy
tắc như sau:
a) Cửa hàng có cho khách hàng mua hàng đăng ký làm thành viên, thông tin
đăng ký: họ tên, ngày sinh, cmnd, doanh số và sau đó cửa hàng cung cấp một
mã ID cho khách hang đã đăng ký.
b) Các nhân viên làm việc được lưu trữ các thông tin: mã nhân viên, họ tên,
ngày sinh, địa chỉ, ngày vào làm việc và lương.
c) Mỗi sản phẩm được bán có thể cung cấp bởi nhiều nhà cung ứng (thông tin
về mỗi mặt hàng bao gồm: mã sản phẩm, tên sản phẩm, giá và đơn vị tính).
Mỗi nhà cung ứng cần lưu tên công ty, địa chỉ, số phone, số fax.
d) Mỗi khách hàng mua hàng thì chọn lựa hàng và sau đó đến quầy tính tiền.
Ở quầy tính tiền sẽ in ra 1 bill gồm số hóa đơn, ngày lập hóa đơn, tên khách
mua, tên người bán và danh sách các mặt hàng mua kèm theo đơn giá bán.
Câu hỏi : Liệt kê các quan hệ cần quản lý trên.
28
Chương 1: Giới thiệu tổng quan
Bài 2
(Mã số
giảng viên)
MS_GV
(Mã số
môn học)
MS_MH
(Tên
Giảng viên)
TEN_GV
(Học hàm
Giảng viên)
HH_GV
(Mức lương
Giảng viên)
ML_GV
(Tổng số
sinh viên)
TSSV
3217 CA01 Ng.V.A GVC 425 87
3217 CA02 Ng.V.A GVC 425 32
4096 MA03 Tr.T.B PGS 500 49
4371 CA11 Lê.V.C GS 600 36
4371 CA21 Lê.V.C GS 600 37
4371 CA41 Lê.V.C GS 600 32
4589 MA11 Võ.V.X GVC 425 47
4589 MA13 Võ.V.X GVC 425 69
4672 CA22 Hồ.T.Y GVC 425 28
4672 CA01 Hồ.T.Y GVC 425 96
Cho dữ liệu của việc quản lý thông tin giảng dạy tại một Trường như sau:
Xây dựng bản đặc tả cho các CSDL dựa trên các thông tin trên.
29
Chương 1: Giới thiệu tổng quan
Bài 3
Hãy thiết kế CSDL cho bài toán quản lý giáo vụ của một trường dựa trên các mô
tả và các quy tắc như sau:
a) Lưu trữ thông tin: Học viên , giáo viên, môn học
b) Xếp lớp cho học viên, chọn lớp trưởng cho lớp.
c) 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.
d) 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.
Câu hỏi : Liệt kê các quan hệ cần quản lý trên.
ĐH CÔNG NGHỆ THÔNG TIN
30
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Thuộc tính
Là một tính chất riêng biệt của một đối
tượng cần được lưu trữ trong CSDL,bao
gồm:
• Tên gọi: dãy ký tự (gợi nhớ)
• Kiểu dữ liệu: Số, Chuỗi, Thời gian,
Luận lý, OLE.
• Miền giá trị: tập giá trị mà thuộc
tính có thể nhận. Ký hiệu miền giá
trị của thuộc tính A là Dom(A).
08:11:33 8
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Quan hệ
Là một tập hữu hạn các thuộc tính.
Ký hiệu: Q(A1,A2,..,AN)
Trong đó Q là tên quan hệ,
Q+(A1,A2,..,AN) là tập các thuộc tính
của quan hệ Q
08:11:33 9
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Bộ
Là các thông tin của một đối tượng
thuộc quan hệ, được gọi là mẫu tin
(record), dòng.
Quan hệ là một bảng (table) với các
cột là các thuộc tính và mỗi dòng
được gọi là bộ.
Một bộ của quan hệ Q(A1,A2,..,AN) là
q(a1,a2,..,aN) với ai Dom(Ai)
Ví dụ:
HOCVIEN(Mahv, Hoten, Ngsinh,
Noisinh) có q=(1003,Nguyen Van
Lam, 1/1/1987,Dong Nai) nghĩa là
học viên có mã số là 1003, họ tên là
Nguyen Van Lam, sinh ngày
1/1/1987 ở Dong Nai.
08:11:33 10
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Thể hiện của quan hệ
Là tập hợp các bộ giá trị của quan hệ
tại một thời điểm nhất định.
Ký hiệu:
Thể hiện của quan hệ Q là TQ
08:11:33 11
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Tân từ
Là một quy tắc dùng để mô tả một
quan hệ.
Ký hiệu: ||Q||
08:11:33 12
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Phép chiếu
Là phép dùng để trích giá trị của một
số thuộc tính trong danh sách các
thuộc tính của quan hệ.
Ký hiệu: phép chiếu quan hệ R lên
tập thuộc tính A là R[A] hoặc R.A.
Chiếu của một bộ lên tập thuộc tính:
dùng để trích chọn các giá trị cụ thể
của bộ giá trị đó theo các thuộc tính
được chỉ ra trong danh sách thuộc
tính của một quan hệ.
Ký hiệu: chiếu của một bộ giá trị t
lên tập thuộc tính A của quan hệ R
là tR[A] hoặc t[A].
Nếu A có 1 thuộc tính tR.A
08:11:33 13
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Khoá
Siêu khóa (super key)
Khóa (key)
Khóa chính (primary key)
Khóa ngoại (foreign key)
08:11:33 14
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Khoá
Siêu khoá: là một tập con các thuộc
tính của tập thuộc tính Q+ mà giá trị
của chúng có thể phân biệt 2 bộ khác
nhau trong cùng 1 thể hiện TQ bất kỳ.
Nghĩa là: t1, t2 TQ, t1[K]
t2[K] K là siêu khóa của Q.
Một quan hệ có ít nhất một siêu
khóa (Q+) và có thể có nhiều siêu
khóa.
08:11:33 15
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Khoá
Khoá: là khóa của quan hệ R, thỏa
mãn 2 điều kiện:
- K là một siêu khóa.
- K là siêu khóa “nhỏ nhất” (chứa
ít thuộc tính nhất và khác rỗng)
nghĩa là ¬K1 K, K1 , K1 là
siêu khóa.
- Thuộc tính tham gia vào một
khóa gọi là thuộc tính khóa,
ngược lại là thuộc tính không
khóa.
08:11:33 16
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Khoá
Khoá chính: khi cài đặt trên một
DBMS cụ thể, nếu quan hệ có nhiều
hơn một khóa, ta chỉ được chọn một
và gọi là khóa chính
Ký hiệu: các thuộc tính nằm trong
khóa chính khi liệt kê trong quan hệ
phải được gạch dưới.
08:11:33 17
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Khoá
Khoá ngoại: cho R(U), S(V). K1U là
khóa chính của R,K2V
Ta nói K2 là khóa ngoại của S tham
chiếu đến khóa chính K1 của R nếu
thỏa các điều kiện sau:
- K1 và K2 có cùng số lượng thuộc
tính và ngữ nghĩa của các thuộc
tính trong K1 và K2 cũng giống
nhau.
- Giữa R và S tồn tại mối quan hệ
1-n trên K1 và K2,
- s S, !r R sao cho
r.K1=s.K2
08:11:33 18
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Lược đồ quan hệ
Là lược đồ nhằm mục đích mô tả
cấu trúc của một quan hệ và các
mối liên hệ giữa các thuộc tính trong
quan hệ đó.
Cấu trúc của một quan hệ là tập
thuộc tính hình thành nên quan hệ
đó.
Một lược đồ quan hệ gồm:
- Một tập thuộc tính của quan hệ
- Mô tả bằng tân từ để xác định ý
nghĩa và mối liên hệ giữa các
thuộc tính
08:11:33 19
MÔ HÌNH DỮ LIỆU QUAN HỆ
MÔ
HÌNH
Thuộc tính
Quan hệ
Bộ giá trị
Thể hiện của quan hệ
Tân từ
Phép chiếu
Khóa
Lược đồ quan hệ và lược đồ
CSDL
Lược đồ CSDL
Là tập hợp gồm các lược đồ quan hệ
và các mối liên hệ giữa chúng trong
cùng một hệ thống quản lý.
Các CSDL
Hệ Quản
Trị CSDL
Các quan hệ
08:11:33 20
MÔ HÌNH DỮ LIỆU QUAN HỆ
ĐH CÔNG NGHỆ THÔNG TIN
44
CÁC NGÔN NGỮ LIÊN QUAN CSDL
Chọn kết hợp các cặp câu sau cho phù hợp:
Select G#,TG
From G
WHERE year(NVL) = 2013
1
dD (d.SL = count(s.S#)
Với sS (s.D# = d.D#)
2
Tìm giáo viên hướng dẫn
các đề tài
3
G[G#] –
(D:(year(NB)=2010))[G#]
4
Ngôn ngữ tự nhiên
a
Ngôn ngữ đại số quan hệ
b
Ngôn ngữ SQL
c
Ngôn ngữ tân từ
d
08:11:33 24
Cho CSDL QLDETAI (Quản lý đề tài) gồm các quan hệ:
G Giáo viên: G# Mã giáo viên, TG tên giáo viên, GT
giới tính, DC địa chỉ, NVL ngày vào làm
D Đề tài: D# mã đề tài, TD tên đề tài, NB ngày bắt
đầu, NK ngày kết thúc, G# giáo viên hướng dẫn, SL số
lượng sinh viên
S Sinh viên: S# mã sinh viên, TS tên sinh viên, D# mã
đề tài
08:11:33 25
CÁC NGÔN NGỮ LIÊN QUAN CSDL
Cho CSDL QLDIEM (Quản lý điểm) gồm các quan hệ:
S sinh viên: S# Mã sinh viên, TS tên sinh viên, GT giới
tính, K khoá, SoMonDat số môn đạt, DTB điểm trung
bình
M Môn học: M# mã môn học, TM tên môn học, SoTC
số tín chỉ
K Kết quả thi: S#, M#, D điểm thi
08:11:33 26
CÁC NGÔN NGỮ LIÊN QUAN CSDL
Bài tập trên 1 quan hệ
Cho CSDL QLDETAI, viết các câu truy vấn sau bằng NN ĐSQH:
1. Liệt kê giáo viên (mã giáo viên, tên giáo viên) vào làm trong