Bài giảng Hệ thống thông tin quản lý - Chương 3: Thiết kế hệ thống thông tin quản lý - Lê Thị Ngọc Diệp

Thiết lập CSDL từ sơ đồ ERD

Kiểu quan hệ Một – Nhiều của quan hệ bậc 2: ta tạo hai tệp dữ liệu mô tả hai thực thể. Xác định trường khóa chính, trường mô tả cho mỗi tệp. Trường quan hệ bắt buộc phải thuộc tệp tương ứng với thực thể đầu “Nhiều”, giá trị của nó được xác định từ các giá trị của trường khóa chính của tệp tương ứng với thực thể đầu “Một”.

 Ví dụ: Xét hai thực thể là “Lớp học” và “Sinh viên” với quan hệ “Có/ Thuộc”. Ta tạo hai tệp dữ liệu: “Lophoc” và “Sinhvien”, trong tệp “Sinhvien” có trường quan hệ là MaLH.

Thiết lập CSDL từ sơ đồ ERD

Kiểu quan hệ Nhiều – Nhiều của quan hệ bậc 2: ta tạo ba tệp dữ liệu, hai tệp mô tả hai thực thể, tệp thứ ba mô tả quan hệ giữa hai thực thể đó.

- Đối với hai tệp tương ứng với hai thực thể: xác định trường khóa chính, trường mô tả.

- Đối với tệp thứ ba – tệp quan hệ: Hai trường quan hệ được xác định từ giá trị của hai trường khóa chính tương ứng với hai tệp thực thể. Tổ hợp của cả hai trường quan hệ này sẽ là trường khóa chính của tệp quan hệ. Sau đó xác định các trường mô tả của tệp quan hệ này.

 

ppt95 trang | Chia sẻ: trungkhoi17 | Lượt xem: 419 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Hệ thống thông tin quản lý - Chương 3: Thiết kế hệ thống thông tin quản lý - Lê Thị Ngọc Diệp, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
í dụ: mối quan hệ giữa khách hàng và một hóa đơn, mối quan hệ giữa một sản phẩm và một nhà cung cấp sản phẩm. Quan hệ “Mỗi Sinh viên học nhiều Môn học”www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp192. Mối quan hệ giữa các thực thể Biểu diễn mối quan hệ trên mô hình thực thể: - hình thoi bên trong ghi tên quan hệ, - các đoạn thẳng nối từ hình thoi với các hình chữ nhật ghi tên các thực thể.ABRA, B: Hai thực thể R : Quan hệ giữa A&BX,Y: Kiểu q.hệ giữa A&BX1,Y1Biểu diễn mối quan hệ giữa hai thực thểX2,Y2www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp202. Mối quan hệ giữa các thực thể Mối quan hệ tự nhiên giữa các thực thể tồn tại ở nhiều dạng: ♦ Mối quan hệ giữa hai thực thể A và B có thể được mô tả bằng một thuộc tính quan hệ ở một thực thể, thuộc tính này là thuộc tính định danh ở thực thể kia. Ví dụ: Quan hệ “Mỗi sinh viên thuộc một lớp học”: + Thực thể “Sinh viên” có các thuộc tính: #Mã Sinh viên, Họ và tên, , Mã Lớp học + Thực thể “Lớp học” có các thuộc tính: #Mã Lớp học, Khóa học, Ngành, Khoawww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp212. Mối quan hệ giữa các thực thể ♦ Mối quan hệ giữa hai thực thể có những thuộc tính riêng, tạo thành một thực thể quan hệ . Ví dụ: “Mỗi sinh viên sau mỗi lần thi một môn học sẽ có một điểm xác định cho lần thi đó”. Có 2 thực thể “Sinh viên” và “Môn học” quan hệ “Thi” liên kết 2 thực thể này.Sinh viênMôn họcLần thiTHIĐiểm11NNThực thể quan hệ “Thi”Mã SVMã MHwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp22a/ Các kiểu quan hệ Có ba kiểu quan hệ chính được sử dụng dưới các dạng đơn giản nhất của Mô hình thực thể: - Quan hệ Một – Một - Quan hệ Một – Nhiều - Quan hệ Nhiều – Nhiều Ba kiểu này liên quan tới mỗi cá thể của một thực thể không liên kết hoặc có liên kết với một hoặc nhiều cá thể của chính nó hoặc của các thực thể khác. Đầu tiên - xét trường hợp mối quan hệ giữa hai thực thể A và Bwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp23a/ Các kiểu quan hệ ♦ Quan hệ Một – Một: Người ta nói thực thể A có quan hệ 1-1 với thực thể B nếu mỗi cá thể của thực thể A hoặc là không liên kết hoặc là liên kết với chỉ một cá thể của thực thể B và ngược lại, mỗi cá thể của thực thể B hoặc là không liên kết hoặc là liên kết với chỉ một cá thể của thực thể A. ABRA, B: Hai thực thể R : Quan hệ 1-1 giữa A&BX, Y có thể có giá trị 0 hoặc 1X,1Biểu diễn mối quan hệ 1-1 giữa hai thực thể A&BY,1thể hiện sự liên kết mỗi cá thể của A với mỗi cá thể của Bthể hiện sự liên kết mỗi cá thể của B với mỗi cá thể của Awww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp24a/ Các kiểu quan hệ ♦ Quan hệ Một – Một:Ví dụ: Mỗi độc giả tại một thời điểm chỉ được đọc một quyển sách và mỗi cuốn sách có thể không có ai đọc hoặc có người đọc thì chỉ có một người đọc mà thôi.Độc giảSáchĐọc0,11Mối quan hệ giữa hai thực thể Đọc giả và Sáchwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp25a/ Các kiểu quan hệ ♦ Quan hệ Một – Nhiều (1-N): Người ta nói thực thể A có quan hệ 1-N với thực thể B nếu mỗi cá thể của thực thể A liên kết với nhiều cá thể của thực thể B và mỗi cá thể của thực thể B chỉ liên kết với một cá thể của thực thể A.ABR1Biểu diễn mối quan hệ 1-N giữa hai thực thể A&BNthể hiện sự liên kết một cá thể của A với nhiều cá thể của Bthể hiện sự liên kết một cá thể của B với một cá thể của AABwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp26a/ Các kiểu quan hệ ♦ Quan hệ Một – Nhiều:Ví dụ: Xét mối quan hệ giữa 2 thực thể Khách hàng và Hóa đơn. Một khách hàng có thể có nhiều hóa đơn mua hàng, nhưng trong mỗi hóa đơn chỉ ghi tên của một khách hàng.Khách hàngHóa đơnCó1Mối quan hệ giữa hai thực thể Khách hàng và Hóa đơn NKhách hàngHóa đơnwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp27a/ Các kiểu quan hệ ♦ Quan hệ Nhiều – Nhiều (N-N): Người ta nói thực thể A có quan hệ N-N với thực thể B nếu mỗi cá thể của thực thể A liên kết với nhiều cá thể của thực thể B và mỗi cá thể của thực thể B liên kết với nhiều cá thể của thực thể A. Khái niệm “nhiều cá thể” ở đây có thể là 0, 1 hay nhiều cá thể.ABRNNthể hiện sự liên kết một cá thể của A với nhiều cá thể của Bthể hiện sự liên kết một cá thể của B với nhiều cá thể của AABwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp28a/ Các kiểu quan hệ ♦ Quan hệ Nhiều – Nhiều (N-N):Ví dụ: Xét mối quan hệ giữa thực thể Sinh viên và thực thể Môn học. Một sinh viên học nhiều môn học và mỗi môn học có nhiều sinh viên tham gia học tập.Sinh viênMôn họcHọcNMối quan hệ giữa hai thực thể Sinh viên và Môn học NSinh viênMôn họcwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp29b/ Bậc của quan hệ Bậc của quan hệ chỉ số lượng thực thể tham gia vào quan hệ đó. - Quan hệ bậc 1 là quan hệ của một cá thể với các cá thể khác thuộc cùng một thực thể. - Quan hệ bậc 2 là quan hệ giữa 2 thực thể. Đây là quan hệ thường gặp trong thực tế. - Quan hệ bậc 3 trở lên được gọi quan hệ bậc cao. Người ta đã chứng minh được rằng mọi quan hệ bậc cao đều biến đổi được về quan hệ bậc 2. Trong mỗi bậc quan hệ đều tồn tại các kiểu quan hệ như đã trình bày ở trên. www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp30b/ Bậc của quan hệAQuan hệ bậc 1R1XYABR2XQuan hệ bậc 2 YABCR3NNNNQuan hệ bậc 3www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp31b/ Bậc của quan hệ  Quan hệ bậc 1 ♦ Kiểu quan hệ 1-1, quan hệ bậc 1: một cá thể không có quan hệ hoặc chỉ quan hệ với một cá thể khác thuộc cùng một thực thể. Nhân dânQuan hệ kết hôn trong xã hộiVí dụ: Tình trạng hôn nhân của mỗi người có thể là độc thân hoặc đã kết hôn.Nếu người đó đã kết hôn thì chỉ được kết hôn với duy nhất một người khác.Kết hôn0,10,1www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp32b/ Bậc của quan hệ ♦ Kiểu quan hệ 1-N, quan hệ bậc 1: Trong cùng một thực thể, có hai loại cá thể, loại thứ nhất: mỗi cá thể có quan hệ với nhiều cá thể, loại thứ hai: mỗi cá thể chỉ có quan hệ với duy nhất một cá thể khác mà thôi.Nhân viênQuan hệ Phụ trách trong cơ quanVí dụ: Xét thực thể là Nhân viên của một cơ quan. Một nhân viên có thể phụ trách nhiều nhân viên khác, nhưng tại một thời điểm, một nhân viên chỉ chịu sự phụ trách của một nhân viên – là người phụ trách - khác mà thôi.Phụ trách1Nwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp33b/ Bậc của quan hệ ♦ Kiểu quan hệ N-N, quan hệ bậc 1: một cá thể đều có quan hệ với nhiều cá thể khác thuộc cùng một thực thể.Đượccấu thànhSản phẩmQuan hệ “Được cấu thành” trong thực thể Sản phẩmVí dụ: Xét thực thể là Sản phẩm, trong đó một sản phẩm được cấu thành từ một số sản phẩm và nó cũng có thể là thành phần của nhiều sản phẩm khác.NNwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp34b/ Bậc của quan hệ  Quan hệ bậc 2 (xem các slide từ 23 đến 28)  Quan hệ bậc 3: Ta xét 3 thực thể là Nhà cung cấp, Hàng hóa và Siêu thị. Quan hệ được xét là nhà cung cấp cung cấp hàng hóa cho các siêu thị. Nhà cung cấpHàng hóaSiêu thịCung cấpNNNNQuan hệ bậc 3 giữa Nhà cung cấp, Hàng hóa và Siêu thịwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp35b/ Bậc của quan hệ Quan hệ bậc 3:Nhà cung cấpHàng hóaChứaNNBiến đổi quan hệ bậc 3 thành quan hệ bậc 2Kho hàngGửi hàngNSiêu thịChuyển đếnNNNwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp36III. THIẾT KẾ CÁC TỆP DỮ LIỆU TỪ SƠ ĐỒ QUAN HỆ - THỰC THỂĐể thiết kế các tệp dữ liệu từ sơ đồ Quan hệ - Thực thể, chúng ta phải thực hiện theo 2 bước:1. Xây dựng sơ đồ Quan hệ - Thực thể ERD (Entity Relation Diagram)2. Thiết lập cơ sở dữ liệu từ sơ đồ Quan hệ - Thực thểwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp371. Xây dựng sơ đồ Quan hệ - Thực thể ERD Sau khi đã nghiên cứu các thực thể và mối quan hệ giữa các thực thể, chúng ta có thể xây dựng Sơ đồ Quan hệ - Thực thể ERD. Các bước xây dựng Sơ đồ ERD:Xác địnhcác thực thểXác định quan hệ giữa các thực thểXác định các thuộc tính của thực thể, quan hệXác định kiểu và bậc của quan hệwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp381. Xây dựng sơ đồ Quan hệ - Thực thể ERD1. Xác định các thực thể- nên chọn danh từ để đặt tên cho thực thể2. Xác định quan hệ giữa các thực thể. Tên của quan hệ thường được diễn tả bằng động từ để chỉ các hành động, sự kiện liên kết3. Xác định các thuộc tính của thực thể và quan hệ. Tên các thuộc tính thường là danh từ - kết hợp với một số ký hiệu:- Thuộc tính định danh (Khóa): #Tên thuộc tính- Thuộc tính quan hệ: Tên thuộc tính QH- Riêng đối với thực thể quan hệ: Khóa được tạo thành từ hai thuộc tính quan hệ ở hai thực thể (Thuộc tính QH 1, Thuộc tính QH 2)4. Xác định kiểu và bậc cho mỗi quan hệ.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp391. Xây dựng sơ đồ Quan hệ - Thực thể ERD Ví dụ: Bộ GD&ĐT tổ chức khảo sát các trường Đại học. Mỗi trường Đại học có nhiều Khoa, mỗi Khoa có nhiều Bộ môn, mỗi Bộ môn có nhiều Giảng viên. Để nâng cao chất lượng đào tạo, các trường quy định mỗi giảng viên chỉ giảng một môn học, mỗi môn học chỉ do một giảng viên phụ trách. Tại các trường, mỗi Khoa đều quản lý nhiều lớp, mỗi lớp có nhiều Sinh viên. Mỗi sinh viên phải học nhiều môn học, mỗi Môn học có nhiều Sinh viên tham gia. Hãy vẽ sơ đồ Quan hệ - Thực thể (ERD) để làm cơ sở thiết kế sơ đồ cấu trúc dữ liệu nhằm quản lý trường đại học.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp401.Xây dựng sơ đồ Quan hệ - Thực thể ERD Dựa vào nội dung của báo cáo khảo sát, ta xác định được: ♦ Các thực thể: Trường, Khoa, Bộ môn, Giảng viên, Môn học, Lớp, Sinh viên. ♦ Mối quan hệ giữa các thực thể: - Giữa Trường và Khoa thể hiện bằng “Mã trường” ở thực thể “Khoa”, - Giữa Khoa và Bộ môn thể hiện bằng “Mã khoa” ở thực thể “Bộ môn”... - Giữa Sinh viên và Môn học có những thuộc tính riêng là “Lần thi”, “Điểm thi” nên cần tạo thêm một thực thể quan hệ “Sinh viên – Môn học”www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp411.Xây dựng sơ đồ Quan hệ - Thực thể ERD Thực thểThuộc tínhTrường#Mã trường, Tên trường, Đơn vị chủ quảnKhoa#Mã khoa, Tên khoa, , Mã trườngBộ môn#Mã bộ môn, Tên bộ môn, , Mã khoaGiảng viên#Mã giảng viên, Họ tên GV, Ngày sinh, Địa chỉ,, Mã bộ mônMôn học#Mã môn học, Tên môn học, SoDVHT,, Mã giảng viênLớp#Mã lớp, Tên lớp, Mã khoaSinh viên#Mã sinh viên, Họ và tên SV, Ngày sinh, Địa chỉ, , Mã lớpSVMHMã sinh viên, Mã môn học, Lần thi, Điểm thiBảng thực thể - quan hệ và thuộc tínhwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp421. Xây dựng sơ đồ Quan hệ - Thực thể ERD Tiếp tục xác định kiểu và bậc của quan hệ → vẽ sơ đồ ERDHệ đào tạoBộ mônGiảng viênTrường ĐHKhoaSinh viênLớpMôn học1N111111NNNN1NNNSơ đồ quan hệ - thực thể để quản lý trường đại họcwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp432. Thiết lập cơ sở dữ liệu (CSDL) từ sơ đồ Quan hệ - Thực thể (ERD)Việc thiết lập CSDL thực chất là xác định các tệp dữ liệu có liên quan đến nhau để phục vụ cho công tác quản lý của một tổ chức.Sơ đồ ERDCSDLcáctệp dữ liệuTrường khóa chínhTrường mô tảTrường quan hệLưu ý: - không đi sâu nghiên cứu về cách tạo lập các tệp dữ liệu - chỉ nghiên cứu thủ tục xây dựng các tệp dữ liệu nhằm đảm bảo tính chuẩn hóa theo nghĩa thông tin không thiếu, không thừa, không được trùng lặpwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp442. Thiết lập CSDL từ sơ đồ ERDSự khác nhau về tên gọi các thành phần thuộc thực thể và tệp dữ liệuThực thểTệp dữ liệuKý hiệu/ Ví dụThuộc tínhTrường (Field)Tên có thể viết bằng tiếng Việt, có dấuTên viết bằng tiếng Việt, không dấu hoặc tiếng AnhThuộc tính “Họ và tên”Trường dữ liệu “Hovaten”Th.tính định danh (1a)Trường khóa chính (1b)Dấu # và gạch chân dưới tên(1a) #Mã cán bộ (1b) #MacanboTh.tính mô tả (2a)Trường mô tả (2b)(2a) Địa chỉ (2b) DiachiTh.tính quan hệ (3a)Trường quan hệ (3b)Gạch chân dưới tên(3a) Mã vợ chồng (3b) Mavochong www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp452. Thiết lập CSDL từ sơ đồ ERD Phương pháp thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ Một – Một của quan hệ bậc 1: ta tạo một tệp dữ liệu duy nhất, xác định trường khóa chính, trường mô tả và trường quan hệ. Nếu cá thể X có quan hệ với cá thể Y thì giá trị trường quan hệ của X được xác định duy nhất bằng giá trị của trường khóa chính của Y. Ví dụ: Xét thực thể “Cán bộ” với quan hệ “Là vợ/chồng”. Ta tạo một tệp “Canbo” với trường khóa chính là #Macanbo, các trường mô tả là Hovaten, Ngaysinh, Diachi, ; trường quan hệ Mavochong.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp462. Thiết lập CSDL từ sơ đồ ERD#MacanboHovatenMavochongA001Nguyễn Văn AB005B005Lê Thị BA001Tệp dữ liệu Cán bộ và quan hệ Vợ/Chồngwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp472. Thiết lập CSDL từ sơ đồ ERD♦ Kiểu quan hệ 1-N của quan hệ bậc 1: ta tạo một tệp dữ liệu duy nhất, xác định trường khóa chính, trường mô tả và trường quan hệ. Giá trị của trường quan hệ được xác định không duy nhất từ giá trị của trường khóa chính. Ví dụ: Xét thực thể “Nhân viên” với quan hệ “Phụ trách”. Ta tạo một tệp “Nhanvien” với trường khóa chính là #Manhanvien, các trường mô tả là Hovaten, Ngaysinh, Diachi, ; trường quan hệ Maphutrach.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp482. Thiết lập CSDL từ sơ đồ ERDTệp dữ liệu Nhân viên và quan hệ Phụ trách#ManhanvienHovatenNgaysinhMaphutrachA001Nguyễn Văn AnB002Lê Thanh BìnhH004H004Trần Thu HàA001H012Vũ Ngọc HoaH004www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp492. Thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ N-N của quan hệ bậc 1: ta tạo hai tệp dữ liệu, một tệp mô tả thực thể, một tệp mô tả quan hệ. - Đối với tệp thực thể: xác định trường khóa chính, trường mô tả. - Đối với tệp quan hệ: xác định trường quan hệ, trường mô tả. Giá trị của trường quan hệ được xác định không duy nhất từ giá trị của trường khóa chính của tệp thực thể. Ví dụ: Xét thực thể “Sản phẩm” với quan hệ “Được cấu thành từ”. Ta tạo hai tệp:- Tệp “Sanpham” với các trường #MaSP, TenSP, Donvitinh, Dongia.- Tệp “Quanhe” với các trường MaSP, MaSPNL; Soluong.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp502. Thiết lập CSDL từ sơ đồ ERDCác tệp Sanpham và tệp Quanhe#MaSPTenSPDonvitinhDongiaLm02Lúa mạchBm01Bột mỳBa05Bánh mỳMaSPMaSPNLSoluong...Bm01Lm025Ba05Bm011www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp512. Thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ Một – Một của quan hệ bậc 2: ta tạo hai tệp dữ liệu mô tả hai thực thể. Xác định trường khóa chính, trường mô tả cho mỗi tệp. Trường quan hệ có thể thuộc tệp này hoặc tệp kia. Cả hai trường hợp thông tin thu được đều như nhau. Ví dụ: Xét hai thực thể là “Trưởng phòng” và “Phòng công tác” với quan hệ “Lãnh đạo”. Ta tạo hai tệp theo hai trường hợp sau:- Tr.hợp 1: Tệp “Phongcongtac” chứa trường quan hệ là MaTP- Tr.hợp 2: Tệp “Truongphong” chứa trường quan hệ là MaphongCTwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp522. Thiết lập CSDL từ sơ đồ ERDCác tệp dữ liệu Truongphong và Phongcongtac (Trường hợp 1) #MaTPHovatenTPQL01Đỗ Văn AnQL02Vũ Ngọc ThuQL03Lê Xuân Hà#MaphongCTTenphongCTMaTPPCT01Tổ chức CBQL02PCT02Kế toánQL01PCT03Kế hoạch- ĐTQL03www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp532. Thiết lập CSDL từ sơ đồ ERDCác tệp dữ liệu Truongphong và Phongcongtac (Trường hợp 2) #MaTPHovatenTPMaphongCTQL01Đỗ Văn AnPCT02QL02Vũ Ngọc ThuPCT01QL03Lê Xuân HàPCT03#MaphongCTTenphongCTPCT01Tổ chức CBPCT02Kế toánPCT03Kế hoạch- ĐTwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp542. Thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ Một – Nhiều của quan hệ bậc 2: ta tạo hai tệp dữ liệu mô tả hai thực thể. Xác định trường khóa chính, trường mô tả cho mỗi tệp. Trường quan hệ bắt buộc phải thuộc tệp tương ứng với thực thể đầu “Nhiều”, giá trị của nó được xác định từ các giá trị của trường khóa chính của tệp tương ứng với thực thể đầu “Một”. Ví dụ: Xét hai thực thể là “Lớp học” và “Sinh viên” với quan hệ “Có/ Thuộc”. Ta tạo hai tệp dữ liệu: “Lophoc” và “Sinhvien”, trong tệp “Sinhvien” có trường quan hệ là MaLH.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp552. Thiết lập CSDL từ sơ đồ ERDCác tệp dữ liệu Lophoc và Sinhvien #MaLHTenLHD07QT1D07QTKD1D07QT2D07QTKD2C08QTC08QTKD#MaSVHovatenSVMaLHQT0015Lê Thu HàD07QT1QT0037Vũ Văn NamD07QT1QT0174Trần Đình ChiếnD07QT2QT0185Nguyễn Thu ThanhD07QT2QT0291Trần Thanh BìnhC08QTwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp562. Thiết lập CSDL từ sơ đồ ERD♦ Kiểu quan hệ Nhiều – Nhiều của quan hệ bậc 2: ta tạo ba tệp dữ liệu, hai tệp mô tả hai thực thể, tệp thứ ba mô tả quan hệ giữa hai thực thể đó. - Đối với hai tệp tương ứng với hai thực thể: xác định trường khóa chính, trường mô tả. - Đối với tệp thứ ba – tệp quan hệ: Hai trường quan hệ được xác định từ giá trị của hai trường khóa chính tương ứng với hai tệp thực thể. Tổ hợp của cả hai trường quan hệ này sẽ là trường khóa chính của tệp quan hệ. Sau đó xác định các trường mô tả của tệp quan hệ này.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp572. Thiết lập CSDL từ sơ đồ ERDTệp dữ liệu mô tả thực thể 1Tệp dữ liệu mô tả thực thể 2Tệp dữ liệu mô tả quan hệCác trường mô tả 2Trường khóa chính 2Các trường mô tả 1Trường khóa chính 1Các trường mô tảTrường quan hệ 1Trường quan hệ 2Trường khóa chính của tệp QHwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp582. Thiết lập CSDL từ sơ đồ ERDVí dụ: Xét hai thực thể “Sinh viên”, “Môn học” và quan hệ “Sinh viên và Môn học”. Quan hệ này là quan hệ N-N với các thuộc tính riêng là lần thi và điểm thi. Từ đó, ta tạo 3 tệp dữ liệu:- Tệp Sinhvien với trường khóa chính là #MaSV, các trường mô tả là Hovaten, - Tệp Monhoc với trường khóa chính là #MaMH, các trường mô tả là TenMH, - Tệp SVMH với trường khóa chính là tổ hợp của 2 trường quan hệ: MaSV, MaMH; các trường mô tả là Lanthi, Diemthi.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp59Tệp dữ liệu Monhoc2. Thiết lập CSDL từ sơ đồ ERDTệp dữ liệu Sinhvien #MaSVHovatenSVQT0015Lê Thu HàQT0037Vũ Văn NamQT0174Trần Đình ChiếnQT0185Bùi Thu Thanh#MaMHTenMHCB01Toán cao cấpQT05Kinh tế vi môCB12Lịch sử ĐảngTệp dữ liệu SVMH MaSVMaMHLanthiDiemthiQT0015CB0118QT0037CB0119QT0174CB1226QT0185QT0519www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp603. Chuẩn hóa dữ liệua/ Khái niệm chuẩn hóa dữ liệu: - là quá trình rà soát tất cả các danh sách thuộc tính của các thực thể, áp dụng một tập các quy tắc phân tích để chuyển chúng thành dạng sao cho: + Tối thiểu việc lặp lại, tránh dư thừa thông tin. + Không có khóa chính nào bị rỗng. + Không để xảy ra tình trạng một thuộc tính chưa được hiểu rõ hoặc hiểu theo nhiều nghĩa khác nhau. - Quá trình chuẩn hóa được thực hiện dựa trên khái niệm “phụ thuộc hàm”www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp613. Chuẩn hóa dữ liệub/ Khái niệm phụ thuộc hàm: “Thuộc tính B phụ thuộc hàm vào thuộc tính A, viết là A → B nếu với mỗi giá trị của A tương ứng với một giá trị duy nhất của B”. Nói cách khác tồn tại một ánh xạ từ tập hợp các giá trị của A đến tập hợp các giá trị của B. Trong một thực thể, mỗi thuộc tính đều phụ thuộc hàm vào khóa(một thuộc tính hoặc hai hay nhiều hơn nữa các thuộc tính khác - tạo thành bộ khóa).www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp623. Chuẩn hóa dữ liệub/ Khái niệm phụ thuộc hàm: Ví dụ: Xét thực thể “Hóa đơn” với các thuộc tính Số hóa đơn, Tên khách hàng, Tên hàng hóa, Tiền mua hàng. Ta thấy có các sự phụ thuộc hàm sau đây: → và → Ứng với mỗi giá trị của khóa → một bộ giá trị duy nhất của các thuộc tính còn lại.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp633. Chuẩn hóa dữ liệuc/ Các dạng chuẩn và quá trình chuẩn hóa dữ liệu: Thực thể “chưa được chuẩn hóa”Thực thể có dạngchuẩn 1 (1NF)Thực thể có dạngchuẩn 2 (2NF)Q.tắc k.tra thứ haiQ.tắc k.tra thứ baThực thể có dạngchuẩn 3 (3NF)Q.tắc k.tra thứ nhấtQuá trình chuẩn hóa dữ liệuwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp643. Chuẩn hóa dữ liệu ThựcthểbanđầuThực thể có dạngchuẩn hoàntoàn(3NF)rà soát và loại các th.tính thứ sinh hoặc không quan trọngThực thể “chưa được chuẩn hóa”Quá trình chuẩn hóawww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp653. Chuẩn hóa dữ liệu Thực thể có dạng1NFQ.tắc k.tra thứ nhất:Có th.tính lặp không?Nếu có th.tính lặp:- tách chúng ra thành danh sách con, gán một tên, tìm một th.tính định danh, kết hợp với th.tính định danh của thực thể gốc tạo thành một khóa.Không có th.tính lặpwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp663. Chuẩn hóa dữ liệu Thực thể có dạng2NFQ.tắc k.tra thứ hai:Xuất phát từ 1NF, k.tracác th.tính không phải là khóa đều phụ thuộc hàm vào toàn bộ khóa chính? Nếu có th.tính chỉ phụ thuộc vào một phần của khóa: tách thành thực thể mới, lấy bộ phận của khóa làm th.t. đ.danh cho thực thể mới, gán một cái tên phù hợp.Các th.tính không phải là khóa phụ thuộc hàm toàn bộ vào khóa www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp673. Chuẩn hóa dữ liệu Thực thể có dạng3NFQ.tắc k.tra thứ ba:Xuất phát từ 2NF, k.trakhông được tồn tại sự phụ thuộc bắc cầu giữa các thuộc tính Nếu có sự phụ thuộc bắc cầu A→ B→ C thì tách chúng ra làm 2 thực thể: thực thể thứ nhất chứa quan hệ A và B, thực thể thứ hai chứa quan hệ B và C. Không có sự phụ thuộc bắc cầu giữa các th.tínhwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp683. Chuẩn hóa dữ liệu Ví dụ 1: Chúng ta cần thiết kế các tệp dữ liệu để quản lý các hóa đơn bán hàng. Bước 1: Xác định các thông tin liên quan như danh sách khách hàng, danh mục hàng hóa, phiếu xuất kho Bước 2: Liệt kê tất cả các thuộc tính liên quan đến hóa đơn bán hàng, xác định các thuộc tính lặp (R) và thuộc tính thứ sinh (S). Đặt tên cho thực thể ban đầu là “Hóa đơn” với các thuộc tính sau: Số hóa đơn, Liên số, Mã KH, Họ và tên KH, Địa chỉ KH, Số tài khoản, Mã số thuế, Ph.thức thanh toán, Stt (R), Tên hàng hóa (R), Đơn vị tính (R), Đơn giá (R), Số lượng (R), Thành tiền (R) & (S), Tổng cộng (S), Thuế VAT (S), Tổng tiền thanh toán (S), Viết bằng chữ (S), Ngày bán, Người bán, Người mua. www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp69HÓA ĐƠN BÁN HÀNGSố: 123/HĐ Liên số: 2Mã khách hàng: A045 Họ và tên khách hàng: Nguyễn Văn Anh Địa chỉ khách hàng: Học viện Công nghệ BCVT Số tài khoản: 011001432 Mã số thuế: 0100684378082 Phương thức thanh toán: Tiền mặtStt Tên hàng hóa Đơn vị tính Đơn giá Số lượng Thành tiền 1 Máy in Laser Chiếc 4.500.000 1 4.500.000 2 Máy in HP Chiếc 2.350.000 3 7.050.000 Tổng cộng 11.550.000Thuế VAT: 1.155.000 đồngTổng tiền thanh toán: 12.705.000 đồngViết bằng chữ: Mười hai triệu bảy trăm linh năm nghìn đồng./. Ngày 18 tháng 5 năm 2009 Người mua Người bán V.Anh K.Liênwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp703. Chuẩn hóa dữ liệu Bước 3: - Loại bỏ các thuộc tính thứ sinh (Thành tiền, Tổng cộng, Thuế VAT, Tổng tiền thanh toán, Viết bằng chữ) - Loại bỏ các thuộc tính ít có ý nghĩa trong quản lý (Liên số, Stt). Ta còn lại các thuộc tính sau: Số hóa đơn, Mã KH, Họ và tên KH, Địa chỉ KH, Số tài khoản, Mã số thuế, Ph.thức thanh toán, Tên hàng hóa (R), Đơn vị tính (R), Đơn giá (R), Số lượng (R), Ngày bán, Người bán, Người mua.www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp713. Chuẩn hóa dữ liệu Bước 4: a) Thực hiện chuẩn hóa mức 1 (1NF): áp dụng quy tắc kiểm tra thứ nhất Có th.tính lặp:- tách chúng ra thành danh sách con gán một tên tìm một th.t đ.danh kết hợp với th.t đ.d của thực thể gốc tạo thành một khóaTên hàng hóa, Đơn vị tính, Đơn giá, Số lượngHàng muaMã HH Mã HH, Số hóa đơn Số hóa đơn www.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp723. Chuẩn hóa dữ liệuSau khi chuẩn hóa mức 1, ta được 2 thực thể:Số HĐMã KHHọ tên KHĐịa chỉ KHSố TKMã số thuếPh.thth.t.Ngày bánNg. bánNg. muaSố HĐMã HHTên HHĐơn vị tínhĐơn giáSố lượngHóa đơnHàng muawww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp733. Chuẩn hóa dữ liệu Bước 4: b) Thực hiện chuẩn hóa mức 2 (1NF): áp dụng quy tắc kiểm tra thứ hai Mã KH → Họ và tên KH, Địa chỉ KH, Số tài khoản, Mã số thuế Khách hàng Số hóa đơn Trong thực thể “Hóa đơn” có các thuộc tính chỉ phụ thuộc vào một phần của khóa: tách thành thực thể mới lấy bộ phận của khóa → th.t. đ.d cho thực thể mới gán một cái tên phù hợpMã KHwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp743. Chuẩn hóa dữ liệuSau khi chuẩn hóa mức 2, ta được 4 thực thể:Hóa đơnKhách hàngHàng muaHàng hóa#Số hóa đơnMã KH Ph.thức thanh toánNgày bánNgười bánNgười mua#Mã KH Họ và tên KH Địa chỉ KHSố tài khoảnMã số thuếSố hóa đơnMã hàng hóaSố lượng#Mã hàng hóaTên hàng hóaĐơn vị tínhĐơn giáwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp753. Chuẩn hóa dữ liệu Bước 4: c) Thực hiện chuẩn hóa mức 3 (3NF) 4 thực thể trên không có sự phụ thuộc bắc cầu giữa các thuộc tính → thỏa mãn yêu cầu của chuẩn hóa mức 3. Bước 5: Xây dựng các tệp dữ liệu tương ứng với 4 thực thể đã được chuẩn hóa. HOADON: #Sohoadon, MaKH, Phthucthanhtoan, Ngayban, Nguoiban, Nguoimua KHACHHANG: #MaKH, HovatenKH, ĐiachiKH, Sotaikhoan, Masothue HANGMUA: Sohoađon, MaHH, Soluong HANGHOA: #Mahanghoa, Tenhanghoa, Đonvitinh, Đongiawww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp763. Chuẩn hóa dữ liệu Ví dụ 2: Công ty Văn phòng phẩm Hồng Hà có hệ thống đại lý ở các quận trên địa bàn Thành phố Hà Nội. Mỗi quận có một đại lý, mỗi đại lý có duy nhất một người phụ trách bán hàng và ngược lại mỗi người bán hàng chỉ phụ trách duy nhất một đại lý. Mỗi khách hàng bán lẻ lấy hàng ở một đại lý. Nếu chúng ta xây dựng thực thể “Khách hàng – Người phụ trách” như sau thì sẽ có sự phụ thuộc bắc cầu giữa các thuộc tính: (1) Mã KH → Họ tên KH, Họ tên người bán hàng, Đại lý (2) Họ tên người bán hàng → Đại lý Ta có: Mã KH → Họ tên người bán hàng → Đại lýwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp773. Chuẩn hóa dữ liệu Thực thể “Khách hàng – Người phụ trách”Mã KHHọ tên KHHọ tên người bán hàngĐại lý231Trần Đình ChiếnLê Ngọc HàĐống Đa179Nguyễn Mai HoaLê Ngọc HàĐống Đa167Lê Kim NhungNguyễn Văn NamCầu Giấy106Vũ Thúy HòaNguyễn Văn NamCầu Giấy370Phan Thu ThủyHoàng Văn HảiHai Bà Trưngwww.ptit.edu.vnGiảng viên: Lê Thị Ngọc Diệp783. Chuẩn hóa dữ liệu Để xóa bỏ phụ thuộc bắc cầu → chia bảng thành 2 bảng nhỏ:#Mã KHHọ tên KHHọ tên người bán hàng231Trần Đình Chiến

Các file đính kèm theo tài liệu này:

  • pptbai_giang_he_thong_thong_tin_quan_ly_chuong_3_thiet_ke_he_th.ppt