5.1 Mô hình thực thể - liên kết
5.2 Mô hình quan hệ
5.3 Thiết kế CSDL logic
5.4 Thiết kế CSDL vật lý
5.5 Một số bài tập hệ thống ứng dụng
Cơ sở dữ liệu đóng một vai trò rất lớn trong phát triển ứng
dụng. Cơ sở dữ liệu cho phép bạn phân tích thông tin mà
bạn đã thu thập được thông qua các công cụ như báo cáo
và dữ liệu kho
• Cơ sở dữ liệu là một cơ chế được sử dụng để lưu trữ
thông tin, hoặc dữ liệu.
• Thông tin là một cái gì đó mà tất cả chúng ta đều sử
dụng trên một cơ sở hàng ngày cho một loạt các lý do.
• Với một cơ sở dữ liệu, người dùng sẽ có thể lưu trữ dữ
liệu một cách có tổ chức. Một khi dữ liệu được lưu trữ,
sẽ cần lấy thông tin ra một cách dễ dàng, và tìm kiếm
dựa trên nhiều tiêu chí.
• Dữ liệu cũng phải được dễ dàng thêm vào cơ sở dữ
liệu, sửa đổi, và loại bỏ.
87 trang |
Chia sẻ: candy98 | Lượt xem: 691 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Bài giảng Phân tích Thiết kế hệ thống - Bài 5: Phân tích và thiết kế cơ sở dữ liệu - Đào Nam Anh, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1
Phân tích và thiết kế hệ thống
System Analysis & Design
Bài giảng 5:
Phân tích và thiết kế cơ sở dữ liệu
TS Đào Nam Anh
2
Tham khảo
• Systems Analysis and Design, Alan Dennis and Barbara
Haley Wixom Fred Niederman John Wiley & Sons, Inc.
• Dao Nam Anh, "Systems Analysis And Design", Course
Book, University of Power, 201
3
Giới thiệu
Chương 5. Phân tích và thiết kế cơ sở dữ liệu
5.1 Mô hình thực thể - liên kết
5.2 Mô hình quan hệ
5.3 Thiết kế CSDL logic
5.4 Thiết kế CSDL vật lý
5.5 Một số bài tập hệ thống ứng dụng
4
Giới thiệu
Cơ sở dữ liệu đóng một vai trò rất lớn trong phát triển ứng
dụng. Cơ sở dữ liệu cho phép bạn phân tích thông tin mà
bạn đã thu thập được thông qua các công cụ như báo cáo
và dữ liệu kho
5
Giới thiệu
• Cơ sở dữ liệu là một cơ chế được sử dụng để lưu trữ
thông tin, hoặc dữ liệu.
• Thông tin là một cái gì đó mà tất cả chúng ta đều sử
dụng trên một cơ sở hàng ngày cho một loạt các lý do.
• Với một cơ sở dữ liệu, người dùng sẽ có thể lưu trữ dữ
liệu một cách có tổ chức. Một khi dữ liệu được lưu trữ,
sẽ cần lấy thông tin ra một cách dễ dàng, và tìm kiếm
dựa trên nhiều tiêu chí.
• Dữ liệu cũng phải được dễ dàng thêm vào cơ sở dữ
liệu, sửa đổi, và loại bỏ.
6
Giới thiệu
• Dữ liệu được biểu diễn dưới nhiều mô hình khác nhau:
mô hình phân cấp, mô hình mạng, mô hình quan hệ, mô
hình hướng đối tượng.
• Phần lớn các hệ quản trị cơ sở dữ liệu thương mại hiện
nay đều sử dụng các dữ liệu theo mô hình quan hệ và
sự lựa chọn hợp lý của chương này là cơ sở dữ liệu
quan hệ.
7
Giới thiệu
• Các hệ thống đều cần có một cơ sở dữ liệu (CSDL) của
mình.
• Việc phân tích và thiết kế cơ sở dữ liệu cho một hệ
thống có thể tiến hành đồng thời với việc phân tích và
thiết kế hệ thống hoặc có thể tiến hành độc lập.
• Vấn đề đặt ra là cần xây dựng một cơ sở dữ liệu giảm
tối đa sự dư thừa dữ liệu đồng thời dễ dàng khôi phục
và bảo trì.
8
Giới thiệu
Phân tích CSDL
• Bước này được tiến hành độc lập với các hệ quản trị
CSD:
• Xác định các yêu cầu về dữ liệu thông qua phân tích các
yêu cầu dữ liệu của hệ thống.
• Xây dựng mô hình thực thể liên kết biểu diễn các yêu
cầu về dữ liệu.
9
Giới thiệu
Thiết kế CSDL quan hệ.
• Quá trình thiết kế cơ sở dữ liệu gồm các bước sau đây:
• Thiết kế CSDL vật lý: dựa trên một hệ quản trị CSDL cụ
thể.
– Xây dựng các bảng trong CSDL quan hệ, quyết định
cấu trúc thực tế của các bảng lưu trữ trong mô hình
quan hệ.
– Cài đặt vật lý trong CSDL, đặt các tham số chi tiết
trong HQTCSDL lựa chọn.
10
1 Mô hình thực thể - liên kết
• Mô hình thực thể - liên kết (Entity-Relationship Diagram -
ERD) là mô hình liên hoàn các thực thể và các mối liên
kết trong hệ thống thông tin.
• Trên mô hình này sẽ thể hiện đầy đủ các tập thực thể và
mối liên kết giữa chúng trong hệ thống.
• Đây cũng chính là mô hình quan niệm về dữ liệu của hệ
thống thông tin.
11
1 Mô hình thực thể - liên kết
• Mục đích
• Mô hình thực thể - liên kết đã được sử dụng rộng rãi
trong phân tích cấu trúc và mô hình hóa.
• Cách tiếp cận ERD dễ hiểu, là công cụ mạnh để mô hình
các vấn đề thực tế và có thể dễ dàng chuyển sang sơ đồ
cơ sở dữ liệu.
• Với ERD thế giới thực là một tập hợp các thực thể
nghiệp vụ, các mối quan hệ giữa chúng và các thuộc
tính để mô tả chúng.
12
1 Mô hình thực thể - liên kết
Các thành phần
Cấu trúc điển hình của mô hình ERD bao gồm các tính
năng sau đây:
• Thực thể (entity)
• Thuộc tính (attribute) của các thực thể
• Liên kết (relation)
13
1 Mô hình thực thể - liên kết
Thực thể
• Thực thể là để chỉ một đối tượng, một nhiệm vụ, một sự
kiện trong thế giới thực hay tư duy được quan tâm trong
quản lý. Một thực thể tương đương với một dòng trong
bảng nào đó, ví dụ sinh viên Ngô Nguyên Th., đơn hàng
số XD123.
• Một cơ sở dữ liệu thường chứa những nhóm thực thể
như nhau. Ví dụ, một công ty thuê hàng trăm nhân viên
và lưu giữ những thông tin tương tự liên quan đến mỗi
nhân viên. Các thực thể nhân viên này chia sẻ các thuộc
tính giống nhau nhưng mỗi thực thể có các giá trị riêng
cho các thuộc tính đó.
14
1 Mô hình thực thể - liên kết
– Thuộc tính
• Thuộc tính (attribute) được sử dụng để mô tả thực thể.
• Mỗi một thực thể có các thuộc tính, đó là các đặc trưng
cụ thể mô tả thực thể đó. Ví dụ, một thực thể Nhânviên
được mô tả bằng Họtên, Tuổi, Địachỉ, Lương của
nhân viên đó.
• Một thực thể cụ thể sẽ có một giá trị cho mỗi thuộc tính
của nó. Ví dụ, nhân viên NV1 có các giá trị cho các
thuộc tính {Họtên, Tuổi, Địachỉ, Lương} là “ Lê Vân”, 32,
“Hà nội”, 500000.
• Mỗi thuộc tính có một tập giá trị gọi là miền giá trị của
thuộc tính đó. Ví dụ tuổi là thuộc tính được qui định là số
nguyên, trong khoảng [18..24].
15
1 Mô hình thực thể - liên kết
• Kiểu thuộc tính
• Trong mô hình ER có mặt nhiều kiểu thuộc tính: thuộc
tính đơn, thuộc tính phức hợp, thuộc tính đơn trị, thuộc
tính đa trị, thuộc tính được lưu trữ, thuộc tính suy diễn
được, thuộc tính có giá trị không xác định, thuộc tính
phức tạp.
16
1 Mô hình thực thể - liên kết
• Thuộc tính đơn là thuộc tính không thể phân chia ra
được thành các thành phần nhỏ hơn. Ví dụ, thuộc tính
Tuổi của một nhân viên là một thuộc tính đơn.
• Thuộc tính phức hợp là thuộc tính có thể phân chia
được thành các thành phần nhỏ hơn, biểu diễn các
thuộc tính cơ bản hơn với các ý nghĩa độc lập. Ví dụ,
thuộc tính Họtên của thực thể nhân viên có thể phân
chia thành các tính Họđệm và Tên. Giá trị của một thuộc
tính là sự kết hợp kết hợp các giá trị của các thuộc tính
thành phần tạo nên nó. Việc phân chia một thuộc tính
phức hợp thành các thuộc tính đơn tùy thuộc vào hoàn
cảnh cụ thể.
17
1 Mô hình thực thể - liên kết
• Những thuộc tính có giá trị duy nhất cho một thực thể cụ
thể gọi là các thuộc tính đơn trị. Ví dụ, Họtên là một
thuộc tính đơn trị của thực thể nhân viên, mỗi nhân viên
có một họ tên duy nhất.
• Trong một số trường hợp, một thuộc tính có thể có một
tập giá trị cho cùng một thực thể. Những thuộc tính như
vậy gọi là thuộc tính đa trị. Ví dụ, thuộc tính Bằngcấp
của một người. Một người có thể không có bằng cấp
nào, người khác có thể có một bằng, người khác nữa có
thể có nhiều bằng. Như vậy, các người khác nhau có thể
có một số giá trị khác nhau cho thuộc tính Bằngcấp.
Thuộc tính Bằngcấp là một thuộc tính đa trị.
18
1 Mô hình thực thể - liên kết
• Thuộc tính được lưu trữ là các thuộc tính mà giá trị của
nó được nhập vào khi cài đặt cơ sở dữ liệu. Trong một
số trường hợp, hai hay nhiều thuộc tính có giá trị liên
quan đến nhau. Ví dụ, thuộc tính Tuổi và thuộc tính
Ngàysinh của một người. Với một người cụ thể, ta có
thể tính tuổi của anh ta bằng cách lấy năm hiện tại trừ đi
năm của Ngàysinh. Thuộc tính mà giá trị của nó có thể
tính được thông qua giá trị của các thuộc tính khác gọi là
thuộc tính suy diễn được
19
1 Mô hình thực thể - liên kết
– Kiểu thực thể
• Một kiểu thực thể (entity class) là một tập hợp các thực
thể có các thuộc tính như nhau. Một kiểu thực thể trong
cơ sở dữ liệu được mô tả bằng tên và các thuộc tính. Ví
dụ: NHÂNVIÊN (Họtên, Tuổi, Lương), CÔNGTY (Tên,
Địađiểm, Giámđốc).
• Một tập hợp các thực thể của một kiểu thực thể cụ thể
trong cơ sở dữ liệu tại một thời điểm được gọi là một tập
thực thể, nó thường được tham chiếu đến bằng cách
sử dụng tên của kiểu thực thể. Ví dụ, NHÂNVIÊN để chỉ
một kiểu thực thể, vừa để chỉ tập hợp hiện tại của tất cả
các thực thể nhân viên trong cơ sở dữ liệu.
20
1 Mô hình thực thể - liên kết
– Kiểu thực thể
• Kiểu thực thể được biểu diễn bằng hình chữ nhật, và
được đặt tên bằng danh từ. Phần trên ghi tên kiểu thực
thể, phần dưới ghi các thuộc tính.
Khoa
Tên khoa
Mã khoa
Địa chỉ khoa
Điện thoại
21
1 Mô hình thực thể - liên kết
– Kiểu thực thể
• Thuộc tính khóa của một kiểu thực thể: Một ràng buộc
quan trọng trên các thực thể của một kiểu thực thể là
khóa.
• Một kiểu thực thể thường có một thuộc tính mà các giá
trị của nó là khác nhau đối với mỗi thực thể riêng biệt
trong một tập thực thể. Thuộc tính như vậy gọi là thuộc
tính khóa và các giá trị của nó có thể dung để xác định
từng thực thể một cách duy nhất.
• Ví dụ, thuộc tính Tên của kiểu thực thể CÔNGTY là
khóa của kiểu thực thể đó vì mỗi thực thể công ty có một
tên duy nhất.
22
1 Mô hình thực thể - liên kết
– Kiểu thực thể
• Thuộc tính khóa của một kiểu thực thể: Một ràng buộc
quan trọng trên các thực thể của một kiểu thực thể là
khóa.
• Đôi khi, nhiều thuộc tính kết hợp với nhau tạo thành một
khóa, nghĩa là tổ hợp các giá trị của các thuộc tính này
phải khác nhau đối với mỗi thực thể. Trong trường hợp
như vậy ta có một thuộc tính khóa phức hợp. Chú ý
rằng khóa phức hợp phải tối thiểu, nghĩa là tất cả các
thuộc tính thành phần phải có mặt trong thuộc tính phức
hợp để thỏa mãn tính chất duy nhất.
23
1 Mô hình thực thể - liên kết
– Kiểu thực thể
• Một kiểu thực thể có thể có nhiều hơn một thuộc tính
khóa.
• Ví dụ, nếu một công ty có một mã số duy nhất và một
tên duy nhất thì các thuộc tính Mãsốcông ty và
Têncôngty đều là các thuộc tính khóa.
• Một kiểu thực thể cũng có thể không có khóa. Một thực
thể không có khóa được gọi là kiểu thực thể yếu. Một
thuộc tính mà là một khóa chính của quan hệ khác được
gọi là khóa ngoại (foreign key).
24
1 Mô hình thực thể - liên kết
– Liên kết
• Liên kết đại diện cho liên hệ giữa một số thực thể. Mối
liên kết giữa các tập thực thể có thể là một mối liên kết
sở hữu hoặc phụ thuộc hoặc mô tả sự tương tác giữa
chúng. Để mô tả một mối liên kết người ta dùng một
đoạn thẳng trong đó ghi tên của mối liên kết và các
thuộc tính riêng của nó nếu có. Một mối liên kết có thể
có thuộc tính riêng.
• Một liên kết có thể là nguyên phân, nhị phân, hoặc n, tuỳ
thuộc vào việc số lượng các thực thể tham gia trong mối
liên kết là 2, 3 hoặc nhiều hơn.
25
1 Mô hình thực thể - liên kết
– Liên kết
• Một liên kết có Bản số (cardinality). Đó là một cặp số
nguyên (i,j), chứa số tối thiểu và số tối đa trường hợp có
thể có của các phần tử của tập thực thể tham gia vào
mối liên kết.
• Bản số của tập thực thể nào thì được ghi trên nhánh của
tập thực thể đó. Nếu i,j nhận giá trị lớn hơn 1 thì quy
ước thay chúng bởi ký tự N.
• Các dạng một-một (1:1), một-nhiều (1: N), nhiều – nhiều
(M:N), có trong các mối liên kết giữa hai thực thể, 1:1:1,
1:1: N, 1: N: M, M: N: P trong các mối liên kết giữa ba
thực thể.
26
1 Mô hình thực thể - liên kết
– Liên kết
• Liên kết một – một (1-1)
• Mỗi thể hiện của thực thể A quan hệ với một thể hiện
của thực thể B và ngược lại. Ký kiệu bằng một đường
nối giữa hai thực thể. Ví dụ: Một sinh viên có một luận
văn. Một luận văn thuộc về một sinh viên.
Sinh viên Luận văn
27
1 Mô hình thực thể - liên kết
– Liên kết
• Liên kết một – nhiều (1-N)
• Mỗi thể hiện của thực thể A quan hệ với nhiều thể hiện
của thực thể B. Ngược lại mỗi thể hiện của thực thể B
quan hệ với chỉ một thể hiện của thực thể A. Ký kiệu:
đoạn thẳng phân nhánh tại bên “ nhiều”. Ví dụ: Một khoa
có nhiều sinh viên. Một sinh viên thuộc về một khoa.
Sinh viên
Khoa
28
1 Mô hình thực thể - liên kết
• Liên kết nhiều – nhiều (N-M)
• Mỗi thể hiện của thực thể A quan hệ với nhiều thể hiện
của thực thể B. Ngược lại mỗi thể hiện của thực thể B
quan hệ với nhiều thể hiện của thực thể A. Ký kiệu phân
nhánh tại hai đầu đoạn thẳng. Ví dụ: Một giảng viên dạy
nhiều sinh viên. Một sinh viên được dạy bởi nhiều giảng
viên.
Giảng viên
Sinh viên
29
1 Mô hình thực thể - liên kết
• Loại thành viên: là điều kiện một thể hiện của thực thể
tham gia vào liên kết với một thực thể khác. Nó có thể là
bắt buộc hay tuỳ chọn trong quan hệ. Các loại thành
viên cho biết số thể hiện nhỏ nhất của mỗi thực thể tham
gia vào liên kết với một thể hiện của một thực thể khác.
• Ký kiệu Bắt buộc và Tuỳ chọn
30
1 Mô hình thực thể - liên kết
• Ví dụ Tuỳ chọn (ít nhất 0) –“một giáo viên có thể dạy
không, một hoặc nhiều môn học.” Bắt buộc(ít nhất 1) –
“một môn học cần phải được một hoặc nhiều giáo viên
dạy.”
Giảng viên
Môn học
31
1 Mô hình thực thể - liên kết
• Lưu ý: Mô hình dữ liệu không chỉ là công cụ phân tích
thiết kế mà còn như một phương pháp kiểm tra các yêu
cầu nghiệp vụ của người sử dụng.
• 1. Liên kết một - nhiều biểu thị ràng buộc là một phần
của mô tả yêu cầu nghiệp vụ: Khi chiều một nhiều là mở,
không xác định (khách hàng có thể có nhiều đơn hàng)
thì chiều từ nhiều sang một là hoàn toàn xác định (một
đơn hàng phải thuộc về một khách hàng).
• 2. Nếu hai thực thể có quan hệ một - một thường có ít lý
do để coi chúng như hai bảng tách biệt. Do đó thường
gộp hai thực thể làm một bảng với mỗi dòng dài hơn.
32
1 Mô hình thực thể - liên kết
• Lưu ý: Mô hình dữ liệu không chỉ là công cụ phân tích
thiết kế mà còn như một phương pháp kiểm tra các yêu
cầu nghiệp vụ của người sử dụng.
• 3. Nếu hai thực thể có quan hệ nhiều - nhiều thì không
có sự khác biệt về bản chất giữa các chiều (không nói
lên được kẻ thống trị). Do đó ít khi được sử dụng.
33
1 Mô hình thực thể - liên kết
• Tóm lại trong ba kiểu liên kết trên, liên kết một nhiều là
quan trọng hơn cả và hầu như các mối quan hệ trong
mô hình thực thể liên kết đều là một nhiều.
• Mô hình thực thể - liên kết là mô hình liên hoàn các tập
thực thể và các mối liên kết trong hệ thống thông tin.
• Trên mô hình này sẽ thể hiện đầy đủ các tập thực thể và
mối liên kết giữa chúng trong hệ thống. Đây cũng chính
là mô hình quan niệm về dữ liệu của hệ thống thông tin.
34
1 Mô hình thực thể - liên kết
Xây dựng mô hình thực thể liên kết của hệ thống
Gồm có ba bước sau đây:
• Xác định các thực thể và các định danh thực thể
• Xác định liên kết giữa các thực thể
• Xác định các thuộc tính mô tả cho các thực thể
35
1 Mô hình thực thể - liên kết
Xây dựng mô hình thực thể liên kết của hệ thống
1. Xác định các thực thể và các định danh thực thể
• Xác định các thực thể là các mục thông tin cần thiết cho
hệ thống và hệ thống cần lưu giữ. Các thực thể được
tìm từ các nguồn:
• Thông tin tài nguyên: con người, kho bãi, tài sản. Ví dụ
nhà cung cấp, mặt hàng, kho...
• Thông tin giao dịch: là các luồng thông tin đến từ môi
trường và kích hoạt một chuỗi hoạt động của hệ thống.
Ví dụ đơn hàng mua bán, dự trù, phiếu yêu cầu,...
• Thông tin tổng hợp: thường ở dưới dạng thống kê liên
quan đến các kế hoạch hoặc kiểm soát. Ví dụ dự toán
chi tiêu, tính lương...
36
1 Mô hình thực thể - liên kết
Xây dựng mô hình thực thể liên kết của hệ thống
1. Xác định các thực thể và các định danh thực thể
• Kiểm tra rằng mỗi thực thể thoả mãn:
» Tên gọi là danh từ
» Có nhiều thể hiện
» Có duy nhất một định danh
» Có ít nhất một thuộc tính mô tả
» Có liên kết với ít nhất một thực
thể khác.
37
1 Mô hình thực thể - liên kết
Xây dựng mô hình thực thể liên kết của hệ thống
2. Xác định liên kết giữa các thực thể
• Thiết lập sự tồn tại của liên kết. Vẽ đường thẳng và đặt
tên liên kết tại hai đầu.
• Xác định loại liên kết (1-1, 1-N, N-M) và loại thành viên
tuỳ: chọn hay bắt buộc.
• Tách liên kết N-M thành hai liên kết 1-N với một thực thể
kết hợp. Khi đó thực thể kết hợp sẽ có định danh được
tạo thành từ hai thuộc tính định danh của các thực thể
ban đầu.
38
1 Mô hình thực thể - liên kết
Xây dựng mô hình thực thể liên kết của hệ thống
2. Xác định liên
kết giữa các thực
thể
Ví dụ: liên kết
GIẢNG VIÊN-MÔN
HỌC dạng N:M
được tách ra thành
hai liên kết 1:N với
việc tạo ra một thực
thể trung gian
GIẢNG DẠY.
Giảng viên
Họ tên
Mã giảng viên
Ngày sinh
Giới tính
Dân tộc
Địa chỉ
Điện thoại
Email
Ngành dạy
Môn học
Tên môn học
Mã môn học
Số tín chỉ
Học kỳ
Học phí
Giảng viên
Họ tên
Mã giảng viên
Ngày sinh
Giới tính
Dân tộc
Địa chỉ
Điện thoại
Email
Ngành dạy
Môn học
Tên môn học
Mã môn học
Số tín chỉ
Học kỳ
Học phí
Giảng dạy
Mã giảng viên
Mã môn học
Ngày bắt đầu
39
1 Mô hình thực thể - liên kết
Xây dựng mô hình thực thể liên kết của hệ thống
3. Xác định các thuộc tính mô tả cho các thực thể
1. Mỗi thuộc tính chỉ xuất hiện một lần trong thực thể tương
ứng.
2. Nếu không chắc chắn là thuộc tính hay thực thể cần tiếp
tục nghiên cứu và phân tích nó.
3. Khi một thuộc tính của thực thể A có nhiều giá trị ta sẽ
mô hình hóa thuộc tính đó là một thực thể B có liên kết phụ
thuộc với thực thể A. Định danh của thực thể B sẽ bao
gồm các thuộc tính định danh của thực thể A và một số
thuộc tính khác của thực thể B. Liên kết giữa thực thể A và
thực thể B được gọi là liên kết phụ thuộc. [16,17,18]
40
1 Mô hình thực thể - liên kết
Xây dựng mô hình thực thể liên kết của hệ thống
3. Xác định các thuộc tính mô tả cho các thực thể
Ví dụ: Một giảng viên có thể có nhiều trình độ ngoại ngữ
với các ngôn ngữ khác nhau. Khi đó trình độ ngoại ngữ
của giảng viên không được mô hình hóa là một thuộc tính
mà được mô hình hóa là một thực thể như sau:
Ngoại ngữ
Giảng viên
41
2 Mô hình quan hệ
Cơ sở dữ liệu quan hệ (Relational Data
Model) được Edgar Frank Codd giới
thiệu vào tháng 7/1970 với bài “Mô hình
dữ liệu cho các ngân hàng dữ liệu lớn”.
Theo mô hình này, các dữ liệu sẽ được
lưu vào máy tính dưới dạng các bảng
hai chiều gọi là các quan hệ và giữa các
bảng sẽ có các mối liên hệ được định
nghĩa nhằm phản ảnh mối liên kết thực
sự của các đối tượng dữ liệu ở bên
ngoài thế giới thật.
42
2 Mô hình quan hệ
Mô hình dữ liệu này cùng với mô hình
dữ liệu thực thể kết hợp đang được sử
dụng rộng rãi trong việc phân tích và
thiết kế CSDL hiện nay.
Nền tảng cơ bản của Cơ sở dữ liệu
quan hệ là lý thuyết tập hợp trên các
quan hệ, tức là tập của các bộ giá trị
(Value Tuples). Trong mô hình dữ liệu
này những khái niệm sẽ được sử dụng
bao gồm thuộc tính (Attribute), quan hệ
(Relation), lược đồ quan hệ (Relation
Schema), bộ (Tuple), khóa (Key).
43
2 Mô hình quan hệ
Quan hệ
So sánh tương ứng giữa mô hình thực thể liên kết, mô
hình quan hệ và hệ quản trị CSDL chúng ta có bảng sau:
Mô hình thực thể
liên kết
Mô hình
quan hệ
Các bảng trong
hệ QTCSDL
Thực thể (kiểu thực
thể)
Quan hệ Bảng
Thể hiện của thực thể
(thực thể)
Bộ Dòng hay bản ghi
Thuộc tính Thuộc tính Cột hay trường
44
2 Mô hình quan hệ
Quan hệ
• Ví dụ với Mô hình thực thể liên kết
Khoa
Tên khoa
Mã khoa
Địa chỉ khoa
Điện thoại
Loại thực thể KHOA có hai thực thể:
Công nghệ thông tin
CNTT
Nhà 1C
63322332
Quản trị kinh doanh
QTKD
Nhà 2A
87787888
45
2 Mô hình quan hệ
Quan hệ
Trong Mô hình quan hệ:
• Quan hệ: KHOA (Tên khoa, Mã khoa,
Địa chỉ khoa, Điện thoại)
• Các bộ: (Công nghệ thông tin, CNTT,
Nhà 1c, 63322332)
(Quản trị kinh doanh, QTKD, Nhà 2A,
87787888)
•
Khoa
Tên khoa
Mã khoa
Địa chỉ khoa
Điện thoại
46
2 Mô hình quan hệ
Quan hệ
Trong bảng của hệ QTCSDL
Khoa
Tên khoa
Mã khoa
Địa chỉ khoa
Điện thoại
KHO
A
Tên khoa Mã
khoa
Địa chỉ
khoa
Điện thoại
Công nghệ thông
tin
CNTT Nhà 1C 63322332
Quản trị kinh
doanh
QTKD Nhà 2A 87787888
47
2 Mô hình quan hệ
Quan hệ
So sánh tương ứng giữa mô hình thực thể liên kết, mô
hình quan hệ và hệ quản trị CSDL chúng ta có bảng sau:
48
2 Mô hình quan hệ
Quan hệ
• Trong Mô hình quan hệ, các bộ trong một quan hệ
không được trùng nhau.
• Thuộc tính được xác định bởi tên, thứ tự của các thuộc
tính trong quan hệ là không quan trọng.
• Trong một quan hệ, tên các thuộc tính phải khác nhau,
các miền giá trị của các thuộc tính không nhất thiết khác
nhau.
49
2 Mô hình quan hệ
Khóa
• Khóa chính của một quan hệ (Primary Key - PK) là một
hoặc một nhóm thuộc tính, xác định duy nhất một bộ
tron