Professional Documents
Culture Documents
CHƯƠNG 4:
PHÂN TÍCH HỆ
THỐNG VỀ DỮ LIỆU
NỘI DUNG
Một Phiếu xuất có nhiều Vật liệu, một Vật liệu
có thể có trong nhiều phiếu xuất.
Các thành phần
• Để xác định các kiểu liên kết phải dựa vào
các liên từ trong mệnh đề diễn tả quan
hệ. Ví dụ: có, của, thuộc vào, cho,…
• Liên kết N-N rất khó cài đặt, trên thực tế
khi xử lý mối quan hệ N-N người ta đưa
thêm vào 1 Thực thể trung gian để tách
quan hệ N-N thành 2 quan hệ 1-N và
khóa là tổ hợp khóa của các bên tham gia
Các thành phần
N N 1 N N 1
A B A A/B B
N N Môn học
Giáo viên
1 N N 1
Giáo viên Thời KB Môn học
Các thành phần
• Nếu hai thực thể có quan hệ 1 – 1 thường có ít
lý do để coi chúng như hai bảng tách biệt →
người ta thường gộp hai thực thể làm một bảng
với mỗi dòng dài hơn.
• Nếu hai thực thể có quan hệ N – N thì không có
sự khác biệt về bản chất giữa các chiều → ít khi
được sử dụng.
• Tóm lại trong 3 kiểu liên kết trên, liên kết 1 – N
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à 1 – N.
Xây dựng ER
•Bước 1: xác định các kiểu thực thể và các
định danh kiểu thực thể
Xác định các kiểu 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ữ. Tìm các kiểu thực thể
từ các nguồn:
Thông tin tài nguyên: con người, kho bãi,
tài sản (VD: nhà cung cấp, mặt hàng,
kho,…)
Xây dựng ER
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 (VD: đơ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 kiểm
soát (VD: dự toán chi tiêu, tính lương,…)
Xây dựng ER
Thông tin đã cấu trúc hóa: sổ sách, hồ sơ,
thẻ thư viện, các bảng biểu qui định,…
Kiểm tra rằng mỗi kiểu thực thể thỏa mãn:
Tên gọi là danh từ
Có nhiều thực thể
Có duy nhất một định danh
Có ít nhất một thuộc tính mô tả
Có quan hệ với ít nhất một kiểu thực thể
khác.
Xây dựng ER
•Bước 2: xác định các kiểu liên kết giữa
các kiểu thực thể
Chỉ ghi nhận các kiểu liên kết có ích trực
tiếp cho bài toán quản lý.
Để xác định được kiểu liên kết phải căn
cứ vào liên từ theo các mệnh đề mô tả
về DL, mô tả qui trình, qui phạm quản lý
và xử lý thông tin.
Xây dựng ER
Ví dụ: Quan hệ giáo viên và môn học
Nếu qui định mỗi giáo viên chỉ dạy 1
môn thì đây là quan hệ 1-N
Nếu qui định mỗi giáo viên dạy nhiều
môn học thì là quan hệ N-N
Nếu giũa 2 kiểu thực thể có quan hệ N-N
thường tách thành 2 cặp quan hệ 1-N
bằng cách đưa vào 1 thực thể trung gian
Xây dựng ER
•Bước 3: phát hiện thuộc tính
Thuộc tính khóa
Thuộc tính mô tả
Thuộc tính tên gọi
Thuộc tính kết nối
Chú ý:
Mỗi thuộc tính chỉ xuất hiện một lần trong kiểu
thực thể tương ứng.
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ó.
Ví dụ: Hệ cung ứng vật tư
•Bước 1: xác định kiểu thực thể
Kiểu thực thể mang thông tin: Dự trù,
Đơn hàng, Hóa đơn, Phiếu giao hàng,
Phiếu phát hàng
Kiểu thực thể là đối tượng quản lý hoặc
mang tính thống kê: Nhà CC, Phân xưởng,
Mặt hàng
• Bước 2: Xác định quan hệ giữa các kiểu
thực thể
Ví dụ: Hệ cung ứng vật tư
Phân xưởng 1 N Phiếu phát hàng
N N
Mặt hàng Nhà CC
1 N N 1
Dự trù Dòng dự trù Mặt hàng
Ví dụ: Hệ cung ứng vật tư
N N Mặt hàng
Hóa đơn
1 N N 1
Hóa đơn Dòng hóa đơn Mặt hàng
N N Mặt hàng
Đơn hàng
1 N N 1
Đơn hàng Dòng đơn hàng Mặt hàng
Ví dụ: Hệ cung ứng vật tư
N N Mặt hàng
Phiếu phát hàng
1 N N 1
Phiếu phát hàng Dòng phát hàng Mặt hàng
N N Mặt hàng
Phiếu giao hàng
1 N N 1
Phiếu giao hàng Dòng giao hàng Mặt hàng
Ví dụ: Hệ cung ứng vật tư
N N Mặt hàng
Nhà CC
1 N N 1
Nhà CC NCC/MH Mặt hàng
Nhà CC NCC/MH
*SHNCC *SHNCC
Tên NCC *Mã hàng
Địa chỉ
Mô Dự trù
Tên
PX
Mô tả
*SHPX
Ngày
Dòng phát hàng
hình *SHDT
*SHPX
*SHđơn
*Mã
Ngày hàng
thực Dòng dự trù DT
*SHDT
Dòng đơn hàng Số
lượng
*Mã *SHđơn
DT
thể hàng
Số
*Mã
hàng
lượng Đơn hàng Số
liên lượng
*SHđơn
*SHNCC
Ngày
kết Mặt hàng NCC/MH Nhà CC
*SHNCC
của Hệ *Mã
hàng
*SHNCC
*Mã
Tên
NCC
Tên hàng Địa chỉ
Cung Dòng hóa đơn hàng
ĐV
*Sốtính
HĐ
Phiếu giao hàng
*SHGH
Đơn
*Mã giá *SHNCC
cứng Hóa đơn
hàng
Số Dòng giao hàng
Ngày
lượng
*Số HĐ
vật tư *SHNCC
Ngày
*SHGH
*Mã
hàng
Số
lượng
Bài tập
•Một công ty thương mại Y chuyên kinh doanh
các mặt hàng điện tử, công ty nhập các mặt
hàng từ các nhà cung cấp khác nhau.
•Chi tiết về các mặt hàng gồm có: mã hàng
(duy nhất), tên hàng và các mô tả mặt hàng.
•Công ty cũng cần lưu giữ thông tin về các
nhà cung cấp như tên, địa chỉ, điện thoại,
fax.
Bài tập
•Mỗi nhà cung cấp có một mã duy nhất. Mỗi
nhà cung cấp có thể cung cấp nhiều mặt
hàng nhưng mỗi mặt hàng chỉ được cung
cấp từ một nhà cung cấp.
•Các mặt hàng được lưu giữ trong kho, mỗi
kho hàng có một diện tích khác nhau và chỉ
chứa một loại mặt hàng.
Bài tập
• Công ty có nhiều cửa hàng đại lý để bán các
mặt hàng. Hàng được cung cấp cho các cửa
hàng thông qua các phiếu xuất.
• Thông tin trên mỗi phiếu xuất cần có mã số
cửa hàng nhận hàng, ngày xuất, thông tin về
các mặt hàng được xuất như tên hàng, số
lượng, đơn giá, thành tiền.
Yêu cầu: Xây dựng mô hình thực thể liên kết của
hệ thống.
NỘI DUNG
Thành lập LDCTDL dựa vào mô hình QH
Dạng chuẩn 1NF: tiến hành tách nhóm các
thuộc tính lặp trong danh sách
Tách các thuộc tính không nằm trong
nhóm lặp thành 1 quan hệ (R1). Xác định
khóa chính của quan hệ này
Các thuộc tính của nhóm lặp và khóa
chính của quan hệ R1 tạo thành 1 quan hệ
(R2).
Thành lập LDCTDL dựa vào mô hình QH
Xác định khóa chính cho quan hệ R2 (khóa
chính của R2 sẽ là 1 khóa ghép giữa khóa
của R1 và 1 thuộc tính khác của R2)
Dạng chuẩn 2NF: loại bỏ phụ thuộc hàm
bộ phận vào khóa (chỉ áp dụng với các
quan hệ có khóa ghép)
Tách các thuộc tính tham gia vào phụ
thuộc hàm được xác định bởi 1 phần của
khóa vào 1 quan hệ mới (R3)
Thành lập LDCTDL dựa vào mô hình QH
Khóa chính của quan hệ này là thuộc tính
xác định hàm.
Phần còn lại với khóa chính của quan hệ
trên (R3) là 1 quan hệ giữ nguyên khóa
chính như quan hệ ban đầu
Ví dụ: R{A, B, C, D} và khóa là {A, B}. Tồn tại
phụ thuộc hàm A -> C thì tách thành 2 quan hệ
R1{A, C} và R2{A, B, D}
Thành lập LDCTDL dựa vào mô hình QH
Dạng chuẩn 3NF: loại bỏ phụ thuộc hàm vào
thuộc tính không khóa bằng cách:
Tách các thuộc tính tham gia và phụ thuộc
hàm giữ các thuộc tính không khóa vào 1
quan hệ R4. Khóa chính của quan hệ R4 là
thuộc tính xác định hàm.
Phần còn lại và khóa chính của quan hệ
trên (R4) là 1 quan hệ giữ nguyên khóa với
quan hệ ban đầu
Thành lập LDCTDL dựa vào mô hình QH
Bước 5: lặp lại các bước từ 1-4 trên các
danh sách xuất phát khác ta có tập lược
đồ quan hệ phân biệt với nhau.
Tuy nhiên nếu phát hiện trong tập lược đồ
DL có cùng 1 kiểu thực thể từ các danh sách
xuất phát khác nhau thì có thể gộp lại
Khi gộp lại có thể xuất hiện phụ thuộc
hàm bắc cầu cho nên khi gộp xong phải tiếp
tục cho chuẩn hóa quan hệ vừa gộp lại
Ví dụ
Xây dựng mô hình quan hệ từ mẫu phiếu
xuất của công ty Y sau đây:
Ví dụ
Bước 1:
Thành lập danh sách các thuộc tính:
Số PX, ngày xuất, số ĐL, địa chỉ, tên HH,
ĐV tính, Số lượng, đơn giá, thành tiền
Bổ sung thêm thuộc tính: Mã hàng
Bước 2:
Loại bỏ thuộc tính tính toán: Thành tiền
Nhóm thuộc tính lặp: Mã hàng, tên HH,
ĐV tính, Số lượng, đơn giá
Ví dụ
Bước 3:
Nhóm thuộc tính lặp: Mã hàng, tên HH,
ĐV tính, Số lượng, đơn giá
Các phụ thuộc hàm:
Số PX -> Ngày xuất
Số DL -> Địa chỉ
Mã hàng -> tên hàng, DV tính, đơn giá
Số PX, Mã hàng -> Số lượng
Ví dụ
Bước 4: Chuẩn hóa quan hệ
Sau khi chuẩn hóa ta có các bản ghi logic
sau:
•ĐẠI LÝ(Số ĐL, Địa chỉ)
•PHIẾU XUẤT (Số PX, Ngày xuất, Số ĐL)
•HÀNG (Mã hàng, Tên hàng, ĐV tính, Đơn
giá)
•DÒNG PHIẾU XUẤT (Số PX, Mã hàng, Số
lượng)
Hoàn thiện CSDL logic
• Sau khi tiến hành theo hai hướng khác
nhau: xây dựng mô hình thực thể liên kết
và chuẩn hóa dữ liệu chúng ta sẽ có hai
tập bản ghi logic khác nhau của cùng một
hệ thống.
• Khi đó cần phải kết hợp lại để có một mô
hình CSDL logic thống nhất cho hệ thống.
Hoàn thiện CSDL logic
•Một số nguyên tắc kết hợp:
Kiểm tra sự thống nhất về tên gọi của các
quan hệ và các thuộc tính trong hai kết
quả.
Nếu cùng tên nhưng khác nghĩa thì phải đặt
lại tên cho khác nhau. Nếu cùng nghĩa
nhưng khác tên thì phải đặt lại tên cho
giống nhau,
Lấy tất cả các quan hệ khác nhau từ hai kết
quả.
Với hai quan hệ trùng nhau thì lấy tất cả các
thuộc tính có trong hai quan hệ từ hai kết quả.
Ví dụ