Thiết kế cơ sở dữ liệu logicMô tả dữ liệu Các thông tin trong hệ thống cần được mô tả một cách đúng đắn, rõ ràng và đầy đủ để phục vụ cho việc phân tích hệ thống và phục vụ cho các trao
Trang 1Thiết kế cơ sở dữ liệu logic
Mô tả dữ liệu
Các thông tin trong hệ thống cần được mô tả một cách đúng đắn, rõ ràng và đầy đủ
để phục vụ cho việc phân tích hệ thống và phục vụ cho các trao đổi sau này
Các công cụ để mô tả dữ liệu là các cách trừu tượng hoá thành phần dữ liệu và các mối quan hệ bên trong dữ liệu theo những chuẩn mực chung để con người có thể trao đổi với nhau
Một số công cụ mô tả dữ liệu thường dùng:
1) Mã hoá dữ liệu (Coding),
2) Từ điển dữ liệu (Data Dictionary),
3) Mô hình thực thể liên kết (Entity-Relationship Model) và
3) Mô hình quan hệ (Relational Model)
Trang 2Thiết kế cơ sở dữ liệu logic
Mô tả dữ liệu: Mã hóa tên gọi
Mã hoá là phép gán tên gọi vắn tắt cho một đối tượng nào đó trong hệ thống Tên gọi phải ngắn gọn, xác định, không trùng nhau trong cùng một phạm vi và phải thể hiện được những thông tin quan trọng nhất
Mục đích sử dụng:
cho người, cho máy tính hoặc cho cả người và máy tính
Trang 3Thiết kế cơ sở dữ liệu logic
Mô tả dữ liệu: Mã hóa tên gọi
Mã hoá phục vụ người sử dụng:
có tính gợi nhớ, dễ hiểu, dễ giải mã
Ví dụ, tên viết tắt các đội bóng: VIE, THA, IND, SIN, MAL, PHI, CAM, LAO
Mã hoá phục vụ cho máy tính:
định nghĩa chặt chẽ ý nghĩa từng giá trị, vùng giá trị của mã
Ví dụ, mã số hồ sơ sinh viên gồm 11 kí tự, trong đó,
hai kí tự dành cho năm sinh, hai kí tự là năm vào trường,
kí tự chỉ giới tính, một kí tự chỉ ngành,
ba kí viết tắt họ, đệm và tên của sinh viên;
hai kí tự sau cùng dùng để phân biệt
Chẳng hạn, sinh viên Trần Việt Nga, sinh năm 1983, vào trường năm
2000, nữ, khoa Anh, có mã là 8300FETVN02.
Mã bệnh nhân, có độ dài 11 kí tự, trong đó 8 kí tự đầu là ngày tháng năm lần đến khám bệnh đầu tiên, 3 kí tự sau là số thứ tự đăng kí của bệnh nhân này trong ngày đó
Trang 4Thiết kế cơ sở dữ liệu logic
Mô tả dữ liệu: Mã hóa tên gọi
Một số phương pháp mã hoá thông dụng:
1) Mã hoá liên tiếp: Ví dụ, số thứ tự được dùng trong một danh sách
2) Mã hoá theo đoạn: Chia đoạn cho từng đối tượng Ví dụ, từ 0001 đến 9999 là vùng mã hoá dành cho sắt, từ 1000 đến 1999 là vùng mã dành cho đinh ốc
3) Mã hoá cắt lớp: Chia tập đối tượng thành từng lớp Ví dụ, biển số xe là một loại mã hoá cắt lớp, trong đó, mỗi tỉnh, thành là một lớp lớn Trong mỗi tỉnh, thành, mã lại được chia ra làm nhiều lớp nhỏ Chẳng hạn, trong biển số 29F5317 thì 29 chỉ ra số xe này thuộc lớp thành phố
Hà nội, F5 là tên một lớp con trong số các biển số của Hà nội, 317 là số thứ tự trong lớp con F5
4) Mã hoá phân cấp: Mục lục cuốn sách là một ví dụ về mã hoá phân cấp Ví dụ, 3.4.1 là mã chỉ mục 1, bài 4 trong chương 3
5) Mã hoá diễn nghĩa dùng cho xử lý thủ công Ví dụ: VIE,SIN
6) Mã hoá tổng hợp là phối hợp một số phương pháp mã
Ví dụ, tổng hợp cắt lát và thứ tự dùng để mã hoá đối tượng bệnh nhân
Mã số 20031023067 là của bệnh nhân có số đăng kí khám 67 trong ngày 23/10/2003
Trang 5Thiết kế cơ sở dữ liệu logic
Mô tả dữ liệu: Mã hóa tên gọi
Một số phương pháp mã hoá thông dụng:
1) Mã hoá liên tiếp
2) Mã hoá theo đoạn
3) Mã hoá cắt lớp
4) Mã hoá phân cấp
5) Mã hoá diễn nghĩa
6) Mã hoá tổng hợp
Lựa chọn phương pháp mã hoá:
căn cứ vào mục đích sử dụng mã sau này,
số lượng các thực thể đối với từng loại dữ liệu,
phân bố thống kê của các đối tượng và
ý kiến của người sử dụng, nếu dữ liệu đó có khâu nào đó được xử lý thủ công
Trang 6Thiết kế cơ sở dữ liệu logic
Mô tả dữ liệu: Từ điển dữ liệu
Từ điển dữ liệu là tư liệu về tên gọi các đối tượng xuất hiện trong các giai đoạn phân tích, thiết kế, cài đặt và bảo trì hệ thống:
Thông tin liên quan gồm sự kiện, luồng dữ liệu, thực thể, chức năng, xử lý, tệp dữ liệu, môđun, chương trình thường được mô tả trong Từ điển dữ liệu
Từ điển dữ liệu có thể là một tập tài liệu như một từ điển thông thường, hoặc trên máy tính, trên cơ sở một phần mềm nào đó
Từ điển dữ liệu gồm các mục từ và lời giải thích Lời giải thích thể hiện được cấu trúc của mục từ, bản chất (nội dung của mục từ), miền giá trị và phạm vi sử dụng
Một số mục từ thường được đề cập:
“Luồng dữ liệu”, “Kho dữ liệu”,
“Thuộc tính” , “Chức năng xử lý”
Trang 7Thiết kế cơ sở dữ liệu logic
Mô tả dữ liệu: Từ điển dữ liệu
Ví dụ: Luồng dữ liệu
Phiếu yêu cầu
a) Ý nghĩa:
Luồng dữ liệu chuyển từ tác nhân ngoài “Bạn đọc” đến tiến trình
“Xử lý phiếu yêu cầu”
b) Thành phần:
Số thẻ đọc, Tên tài liệu, Tên tác giả, Số cá biệt, Ngày viết phiếu
Trang 8Thiết kế cơ sở dữ liệu logic
Mô tả dữ liệu: Từ điển dữ liệu
Trang 9Thiết kế cơ sở dữ liệu logic
Mụ tả dữ liệu: Từ điển dữ liệu
b)Thụng tin vào:
Phiếu yờu cầu, Kho tài liệu, Dữ liệu mượn trả, Bản ghi Bạn đọc.c)Thụng tin ra:
Phiếu yờu cầu bị trả lại hoặc Phiếu yờu cầu đó được duyệt
Phiếu yêu cầu
đã xử lýSÁCH
Phiếu yêu cầu
Xử lý Phiếu yêu cầu
M ợn trả
Trang 10Thiết kế cơ sở dữ liệu logic
Mô tả dữ liệu: Từ điển dữ liệu
c)Kí hiệu: Ngày KB d)Cấu trúc:
11 chữ số, trong đó, 4 chữ số cho năm, 2 chữ số cho tháng và 2 cho ngày, 3 chữ số chỉ số thứ tự đăng ký
e)Ví dụ: 20130907314 – Bệnh nhân thứ 314 trong ngày 07/09/2013f)Các xử lý liên quan: Tạo mã bệnh nhân, Tìm bệnh nhân
Trang 11Thiết kế cơ sở dữ liệu logic
Quy trình thiết kế một CSDL
1 Xem mỗi loại hồ sơ gốc (Phiếu mượn, thẻ ghi tài liệu,
hồ sơ bạn đọc) như 1 kiểu thực thể Lập danh sách kiểu thực thể, cùng các thuộc tính.
2 Chính xác hóa các thuộc tính của các kiểu thực thể
Thống nhất tên các thuộc tính trong “TỪ ĐIỂN DỮ
LIỆU” Xác định các thuộc tính tên gọi.
3 Xác định các thuộc tính khóa, thuộc tính lặp trong các kiểu thực thể.
4 Chuẩn hóa các kiểu thực thể (đạt chuẩn 3NF).
5 Tích hợp các quan hệ đã được chuẩn hóa, xác định các khóa (chính, phụ).
6 Vẽ sơ đồ quan hệ.
Trang 12Thiết kế cơ sở dữ liệu logic
Mục tiêu:
Xuất phát từ mô hình dữ liệu quan hệ đã được chuẩn hóa (3NF), xây dựng một cấu trúc các kiểu bản ghi phù hợp với yêu cầu truy cập của các chức năng xử lý trong hệ thống
Đặc điểm:
Có thể xuất hiện dư thừa, phá vỡ chuẩn 3NF
Xét từng truy cập để bổ sung bảng/thuộc tính
Trang 13Thiết kế cơ sở dữ liệu logic
1 Bổ sung các bảng và thuộc tính
Lý do bổ sung:
Phục vụ tra cứu, tránh tính toán nhiều, tránh kết nối nhiều bảng dữ liệu – tốn thời gian xử lý Mục tiêu:
Tiện lợi, nhanh chóng, không xử lý phức tạp.
Trang 14Thiết kế cơ sở dữ liệu logic
Sơ đồ quan hệ Hệ thống quản lý thư viện X
Trang 15Thiết kế cơ sở dữ liệu logic
Bổ sung bảng dữ liệu:
Trang 16Thiết kế cơ sở dữ liệu logic
Bổ sung bảng dữ liệu:
Trang 17Thiết kế cơ sở dữ liệu logic
Bổ sung thuộc tính (có thể phá vỡ chuẩn 3):
BẠN ĐỌC (BD)
Số thẻ,Password
Họ tên Đơn vị
Hạn SD (sử dụng)
SÁCH (S)
Số CB (cá biệt) Tên sách
Tên TG (tác giả) Năm XB (xuất bản) Nhà XB
Tình trạng
PHIẾU MƯỢN (PM)
Số thẻ
Số CB NgàyVP(viết phiếu)
DU (đáp ứng)
T/đXL
Trang 18Thiết kế cơ sở dữ liệu logic
Trang 19Thiết kế cơ sở dữ liệu logic
2 Nghiên cứu các yêu cầu truy nhập
Trang 20Thiết kế cơ sở dữ liệu logic
Một số loại yêu cầu truy nhập:
1 Biết một số trường (thuộc tính), tìm một
số trường (thuộc tính) – cùng bảng, hoặc
khác bảng
2 Biết một số trường (thuộc tính), xác
định câu trả lời (thông tin) phục vụ công
tác nghiệp vụ
Trang 21Thiết kế cơ sở dữ liệu logic
1 Biết một số trường (thuộc tính), tìm một
số trường (thuộc tính) – cùng bảng, hoặc
khác bảng
Ví dụ:
1) Biết Số thẻ, tìm Đơn vị của BĐ
2) Biết Số thẻ, tìm Năm XB các sách mà BĐ có Số thẻ đã mượn3) Biết Số CB, tìm Đơn vị của những người đã mượn
Trang 22Thiết kế cơ sở dữ liệu logic
2 Biết một số trường (thuộc tính), xác
định câu trả lời (thông tin) phục vụ công
tác nghiệp vụ
Ví dụ:
1) Biết Số thẻ, Số CB, đồng ý cho mượn có hợp lệ hay không?
2) Biết Số thẻ, Số CB, giao sách, ghi sổ MƯỢN/TRẢ có hợp lệ hay không?3) Biết Tên sách, kiểm tra tính đúng đắn của đề nghị mua sắm
Trang 23Thiết kế cơ sở dữ liệu
Hệ thống đào tạo theo phương thức
tích lũy tín chỉ
Trang 24Mô hình
QUẢN LÝ
SINH VIÊN
CHƯƠNG TRÌNH ĐÀO TẠO
THỜI KHÓA BIỂU
ĐĂNG KÝ HỌC TẬP
Ngành, k/
q học tập
Thời khoá biểu
Tiến trình học tập
Trang 25Dự kiến các bảng dữ liệu
Hồ sơ sinh viên
Mã SVAccountPasswordNăm VT
Mã SV
Mã MHĐiểm 1Điểm 2
QUẢN LÝ SINH
VIÊN
Trang 26Dự kiến các bảng dữ liệu
TKB
Mã Lớp
Mã MHThứKípSS_TTSS_TĐSS
THỜI KHOÁ BIỂU
Trang 28Dự kiến các bảng dữ liệu
ĐĂNG KÝ
Mã SV
Mã LớpT/đ ĐK
ĐĂNG KÝ (ĐK)
Trang 29Dự kiến các bảng dữ liệu
ĐĂNG KÝ
Mã SV
Mã LớpT/đ ĐK
Trang 30TIẾN TRÌNH XỬ LÝ ĐĂNG KÝ
ĐK
Mã SV
Mã Lớp T/đ ĐK
Mã MH
Mã Nhóm
Số TC Loại
Mã SV Account Password Năm VT
Mã SV
Mã MH Điểm 1 Điểm 2
1 Sinh viên đăng nhập;
2 for each Mã lớp