Cơ sở dữ liệu – Database
EE4253
Vũ Hải
2016
International Research Institute MICA,
Hanoi University of Science and Technology
Ôn bài
•
•
•
•
•
Đặc điểm quản lý dữ liệu truyền thống?
Khái niệm Cơ sở dữ liệu?
Khái niệm Hệ quản trị CSDL?
Các mức trừu tượng hóa dữ liệu?
Các mức quan hệ trong mơ hình CSDL
Quan hệ ?
2
Quy trình phát triển ứng dụng CSDL
Source: Data Modeling Using Entity-Relationship Model, NGUYEN Kim Anh
3
Data modelling – Mơ hình hóa dữ liệu
• Mục đích: Biểu diễn dữ liệu thuận tiện cho
việc thiết kế, lưu trữ, xử lý.
– Mô tả dữ liệu sẽ lưu trữ trong cơ sở dữ
liệu
– Mô tả mối quan hệ giữa các dữ liệu
– Mô tả ràng buộc đối với dữ liệu
• Sử dụng 1 ngơn ngữ đặc biệt (tập các ký
hiệu thích hợp) để biểu thị dữ liệu.
4
Chương 2: Các mơ hình dữ liệu
• Mơ hình dữ liệu:
– Một sự hình thức hóa tốn học với một tập ký
hiệu để mô tả dữ liệu
– và Một tập các phép toán được sử dụng để thao
tác các dữ liệu
• Các mơ hình CSDL phổ biến:
– Mơ hình mạng (network model)
– Mơ hình thực thể-liên kết (entity-relationship model)
Những năm 60, thế kỷ 20
– Mơ hình quan hệ (relational model) Những năm 70,
– Mơ hình hướng đối tượng (object model) Những năm
80
5
Chương 2: Các mơ hình dữ liệu
2.1. Mơ hình thực thể liên kết
• Thế giới thực = tập các đối tượng cơ sở
(thực thể) + tập các liên kết giữa chúng.
• Sơ đồ thực thể liên kết:
Thực thể
Thuộc tính
Liên kết
6
2.1.1. Thực thể
• Thực thể (Entity): “Là một đối tượng cụ thể
hay trừu tượng trong thế giới thực mà nó
tồn tại và có thể phân biệt với các đối tượng
khác”
• Tập thực thể: nhóm các thực thể cùng loại
real customers
customer
surrogates
7
2.1.2. Thuộc tính
• Thuộc tính (Attribute): là các tính chất đặc
trưng của thực thể
– Mỗi thuộc tính có một giá trị, thuộc 1
miền giá trị
• Thuộc tính khóa (Key) là thuộc tính mà giá
trị của nó là duy nhất cho mỗi thực thể.
– Thuộc tính khóa có thể là 1 thuộc tính,
hoặc nhiều thuộc tính.
– Dùng để phân biệt hai thực thể cùng
loại
8
Ví dụ
• Xác định thực thể, thuộc tính, khóa
Họ tên
Mã số NV Giới tính
Tuổi
Nhân viên Ngày sinh
Nhân viên
Mã số NV
Tuổi
Họ tên
Giới tính
Ngày sinh
9
Ví dụ
• Xác định thực thể, thuộc tính, khóa
Họ tên
Tên
truy nhập
Địa chỉ
Email
Quốc gia
Mật khẩu
Tài khoản
Username
Họ tên
Password
Địa chỉ
Quốc gia
10
Bài tập
Quản lý điểm của Sinh Viên
- Thông tin về Sinh Viên: Họ và tên (HOTENSV), Ngày
Sinh (NGAYSINH), Giới tính (NU), Nơi sinh (NOISINH),
Hộ khẩu Thường trú (HK), Mã số SV (MASV)
- Thông tin về Lớp Học: Mã số lớp (MALOP), Tên lớp
(TENLOP), Thuộc về khoa/Viện (KHOA)
- Thông tin về tên Môn Học: Mã số môn học (MAMH), tên
môn học (TENMH), Số tín chỉ (TC),
- Thơng tin về Giảng Viên: Mã Giảng Viên (MAGV), Học vị
(HOCVI), Chuyên ngành (CHUYENNGANH), Thuộc
Khoa/Viện (KHOA),
- Thông tin về Điểm Thi: Mã Sinh Viên (MASV), Mã môn
thi (MAMH), Lần thi (LANTHI), Điểm thi (ĐIEMTHI)
11
Xác định các loại thực thể cần quản lý ?
2.1.2. Thuộc tính
• Các kiểu thuộc tính khác:
12
Bài tập
Xác định các kiểu thuộc tính trong loại thực thể sau:
SINH VIÊN
Họ và tên (HOTENSV)
Ngày Sinh (NGAYSINH)
Giới tính (NU)
Nơi sinh (NOISINH)
Hộ khẩu Thường trú (HK)
Mã số SV (MASV)
Môn học đăng ký (TENMH)
Số CMT (CMTID)
Xác định các kiểu thuộc tính khóa có thể có trong loại
13
thực thể trên ?
2.1.3. Liên kết
• Liên kết (Relationship): chỉ
ra mối quan hệ giữa các
thực thể với nhau.
14
Liên kết 1-1
Người
1
Sở hữu
1
Giấy CMT
• Là liên kết mà mỗi thực thể loại A chỉ có thể có quan hệ
với khơng q 1 thực thể loại B, và ngược lại
• 1-1 gọi là lực lượng của liên kết
15
Liên kết 1-1
Mối liên kết giữa hai loại thực thể Sinh Viên và Lớp học
SINH VIÊN
(1,1)
Thuộc
(1,n)
LỚP
Tên liên kết : thuộc, gồm, chứa …
Lực lượng liên kết: (min,max) : Số lượng tối thiểu và tối đa
của thực thể khi tham gia vào mối liên kết
(1,1): Mỗi sinh viên thuộc một và chỉ một lớp
(1,n): Mỗi lớp có thể có n sinh viên
16
Liên kết 1-N
Nhạc sĩ
1
Sáng tác
N
Bài hát
Mỗi thực thể loại A có thể có quan hệ với nhiều thực thể loại B,
nhưng mỗi thực thể loại B chỉ có thể có quan hệ với nhiều nhất
1 thực thể loại A
17
Liên hết N-M (nhiều-nhiều)
Bài hát
N
Dịch
M Ngôn ngữ
Mỗi thực thể loại A có thể có quan hệ với nhiều thực thể loại B, và
ngược lại
18
Liên kết tồn thể, bộ phận
• Tồn thể: Mọi thực thể ở phía liên kết tồn thể phải có
quan hệ với ít nhất 1 thực thể ở phía kia.
• Bộ phận: Thực thể ở phía liên kết bộ phận có thể không
tham gia vào liên kết.
19
Liên kết lặp/đệ quy
Là liên kết mà các thực thể cùng kiểu có quan hệ với nhau
out
Chuyến bay
Nối chuyến
Số hiệu
in
Khởi
hành
Đích
đến
20
Liờn kt ôl-mtằ / ôis-aằ
ã A l-mt B nu B là sự tổng quát hóa của A
hay A là một kiểu đặc biệt của B.
o A sẽ kế thừa mọi thuộc tính của B
o A có thêm các thuộc tính mới mà B khơng có
Thể lực
Tốc độ
Cầu thủ
Tên
Là-một
Mã NV
Lương
Nhân viên
21
Thuộc tính của liên kết
Liên kết cũng có thể có thuộc tính, tương tự như của thực thể
• Với kiểu liên kết 1-1, 1-N, thuộc tính của liên kết có thể
chuyển về thuộc tính của thực thể
• Với kiểu liên kết N-N, giữ làm thuộc tính của liên kết
22
Thực thể yếu (Weak entity)
• Là thực thể khơng có thuộc tính khố
• được xác định thơng qua việc liên kết với
một thực thể khác.
•
VD: mỗi bài hát trong một đĩa nhạc có số thứ tự khác nhau, nhưng
các bài hát trong các đĩa nhạc khác nhau có thể có cùng số thứ tự
– Bài hát trong trường hợp này là thực thể yếu
– Muốn xác định bài hát, cần xác định đĩa nhạc cụ thể
23
2.1.4. Đặc điểm của mơ hình ER
• Mơ hình ER khơng phải là duy nhất cho
mỗi bài tốn, mà mang tính chủ quan của
người thiết kế
• Các lựa chọn thay thế nhau được:
– Thực thể thuộc tính
– Thực thể liên kết
– Liên kết hai ngôi ba hay nhiều ngôi
–…
24
Thực thể hay thuộc tính ?
25