CHƯƠNG 2 NHỮNG CÁCH TIẾP CẬN MỘT CSDL
lượt xem 6
download
Bài 1: Giới thiệu Bài 2: Mô hình dữ liệu thực thể kết hợp Bài 3: Mô hình dữ liệu quan hệ của E.F.CODD Bài 4: Các bước chuyển từ mô hình thực thể kết hợp sang mô hình quan hệ KHÁI NIỆM MÔ HÌNH DỮ LIỆU • Mô hình dữ liệu là sự trừu tượng hoá môi trường thực. • Mô hình dữ liệu (Data Model) bao gồm: - Các khái niệm biểu diễn dữ liệu - Các phép toán xử lý dữ liệu Mô hình mức cao • Cung cấp các khái niệm gần gũi với người dùng • Mô...
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: CHƯƠNG 2 NHỮNG CÁCH TIẾP CẬN MỘT CSDL
- 2/13/2012 TRƯỜNG CĐKTKT PHÚ LÂM – KHOA CNTT CHƯƠNG 2 NHỮNG CÁCH TIẾP CẬN MỘT CSDL GV. Lê Thị Thu Thảo 1 NỘI DUNG Bài 1: Giới thiệu Bài 2: Mô hình dữ liệu thực thể kết hợp Bài 3: Mô hình dữ liệu quan hệ của E.F.CODD Bài 4: Các bước chuyển từ mô hình thực thể kết hợp sang mô hình quan hệ 2 1
- 2/13/2012 BÀI 1 GiỚI THIỆU 3 KHÁI NIỆM MÔ HÌNH DỮ LIỆU • Mô hình dữ liệu là sự trừu tượng hoá môi trường thực. • Mô hình dữ liệu (Data Model) bao gồm: - Các khái niệm biểu diễn dữ liệu - Các phép toán xử lý dữ liệu 4 2
- 2/13/2012 KHÁI NIỆM MÔ HÌNH DỮ LIỆU Mô hình mức cao • Cung cấp các khái niệm gần gũi với người dùng • Mô hình phải tự nhiên và giàu ngữ nghĩa • VD: mô hình thực thể kết hợp (ER) Mô hình cài đặt • Đưa ra các khái niệm người dùng có thể hiểu được nhưng không quá xa với cách dữ liệu được tổ chức thật sự trên máy tính • VD: mô hình quan hệ Mô hình mức thấp (mô hình vật lý) • Đưa ra các khái niệm mô tả chi tiết về cách thức dữ liệu được lưu trữ trong máy tính 5 KHÁI NIỆM MÔ HÌNH DỮ LIỆU • Ví dụ mô hình dữ liệu thực thể kết hợp 6 3
- 2/13/2012 KHÁI NIỆM MÔ HÌNH DỮ LIỆU • Ví dụ mô hình dữ liệu quan hệ 7 BÀI 2 MÔ HÌNH DỮ LIỆU THỰC THỂ KẾT HỢP 8 4
- 2/13/2012 GIỚI THIỆU Quy trình thiết kế một CSDL: 9 GIỚI THIỆU • Mô hình dữ liệu quan hệ được dùng trong các hệ quản trị CSDL, đây là mô hình dữ liệu ở mức vật lý. • Để thành lập được mô hình dữ liệu quan hệ, trước hết ta dùng mô hình thực thể kết hợp để để đặc tả. Đây là mô hình dữ liệu ở mức quan niệm. Sau đó mới chuyển hệ thống từ mô hình thực thể kết hợp sang mô hình dữ liệu quan hệ 10 5
- 2/13/2012 KHÁI NIỆM MÔ HÌNH THỰC THỂ KẾT HỢP Mô hình thực thể kết hợp (Entity-Relationship model) • Được xây dựng dựa trên nhận thức rằng thế giới thực muốn phản ánh là một tập hợp các đối tượng cơ sở và các mối quan hệ (còn gọi là liên kết) giữa chúng. Mô hình này dùng các khái niệm “thực thể” (entity-E) và “mối quan hệ” (Relationship-R) do đó còn được gọi là mô hình E-R; 11 KHÁI NIỆM MÔ HÌNH THỰC THỂ KẾT HỢP • Ví dụ: 12 6
- 2/13/2012 CÁC KHÁI NIỆM CỦA MÔ HÌNH THỰC THỂ KẾT HỢP • Thực thể • Loại thực thể • Thuộc tính • Khóa • Mối kết hợp • Bản số 13 Thực Thể (Entity) • Là một sự vật tồn tại và phân biệt được • Ví dụ: • Sinh viên Nguyễn Văn Thành • lớp 11CDTH01 • Môn học Cơ Sở Dữ Liệu • Xe máy có biển số đăng ký 52-0549 14 7
- 2/13/2012 Thuộc tính (attribute) • Các đặc điểm riêng của thực thể gọi là các thuộc tính. • Ký hiệu: Thuộc tính • Ví dụ: Thực thể sinh viên Nguyễn Văn Thành có các thuộc tính là: mã số sinh viên, giới tính, ngày sinh, hộ khẩu thường trú, lớp đang theo học, … 15 Thuộc tính (attribute) • Loại thuộc tính - Thuộc tính đơn: không thể tách nhỏ ra được - Thuộc tính phức hợp: có thể tách ra thành các thành phần nhỏ hơn • Loại giá trị của thuộc tính - Đơn trị: các thuộc tính có giá trị duy nhất cho một thực thể (VD: số CMND, …) - Đa trị: các thuộc tính có một tập giá trị cho cùng một thực thể (VD: bằng cấp, …) - Suy diễn được (năm sinh tuổi) 16 8
- 2/13/2012 Loại thực thể (entity type) • Là tập hợp các thực thể có cùng thuộc tính. Mỗi loại thực thể được đặt tên riêng • Ký hiệu: E • Một tập hợp các thực thể của một loại 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ể 17 Loại thực thể (entity type) • Ví dụ: • Các sinh viên có mã sinh viên:“02CĐTH019”, “02CĐTH519”,… nhóm lại thành một loại thực thể, được đặt tên là Sinhvien • Các môn học có mã môn học:“CSDL”, “NMTH”,… nhóm lại thành một loại thực thể, được đặt tên là Monhoc 18 9
- 2/13/2012 Loại thực thể (entity type) • Ví dụ: • Các sinh viên có mã sinh viên:“02CĐTH019”, “02CĐTH519”,… nhóm lại thành một loại thực thể, được đặt tên là Sinhvien • Các môn học có mã môn học:“CSDL”, “NMTH”,… nhóm lại thành một loại thực thể, được đặt tên là Monhoc 19 Khoá (key) • Khoá của loại thực thể E là một hay một tập các thuộc tính của E có thể dùng để phân biệt hai thực thể bất kỳ của E. • Ký hiệu: Thuộc tính khoá được gạch dưới bằng nét liền Thuộc tính • Ví dụ khoá của loại thực thể Sinhvien là MASV, của Lớp là MALOP, của Khoa là MAKHOA, của Monhoc là MAMH,… 20 10
- 2/13/2012 Ví dụ Bài toán quản lý điểm của sinh viên được phát biểu như sau: •Mỗi sinh viên cần quản lý các thông tin như: họ và tên (HOTENSV),ngày tháng năm sinh(NGAYSINH), giới tính (NU), nơi sinh(NOISINH), hộ khẩu thường trú (TINH). Mỗi sinh viên được cấp một mã số sinh viên duy nhất (MASV) để phân biệt với mọi sinh viên khác của trường, mỗi sinh viên chỉ thuộc về một lớp nào đó. 21 Ví dụ (tt) • Mỗi lớp học có một mã số lớp (MALOP) duy nhất để phân biệt với tất cả các lớp học khác trong trường: có một tên gọi (TENLOP) của lớp, mỗi lớp chỉ thuộc về một khoa. • Mỗi khoa có một tên gọi (TENKHOA) và một mã số duy nhất (MAKHOA) để phân biệt với các khoa khác. • Mỗi môn học có một tên gọi (TENMH) cụ thể, được học trong một số đơn vị học trình (DONVIHT) và ứng với môn học là một mã số duy nhất (MAMH) để phân biệt với các môn học khác. 22 11
- 2/13/2012 Ví dụ (tt) • Mỗi giảng viên cần quản lý các thông tin: họ và tên(HOTENGV), cấp học vị (HOCVI), thuộc một chuyên ngành (CHUYENNGANH) và được gán cho một mã số duy nhất gọi là mã giảng viên(MAGV) để phân biệt với các giảng viên khác. Mỗi giảng viên có thể dạy nhiều môn ở nhiều khoa, nhưng chỉ thuộc về sự quản lý hành chính của một khoa. • Mỗi sinh viên với một môn học được phép thi tối đa 3 lần, mỗi lần thi (LANTHI), điểm thi (DIEMTHI). • Mỗi môn học ở mỗi lớp học chỉ phân công cho một giảng viên dạy (tất nhiên là một giảng viên thì có thể dạy nhiều môn ở một lớp). 23 Ví dụ (tt) • Các loại thực thể cần quản lý như: Sinhvien, Monhọc, Khoa, Lop, Giangvien. • Loại thực thể Sinhviên quản lý các thuộc tính: MASV,HOTENSV, NU, NGAYSINH, NOISINH, TINH HOTENSV NU NGAYSINH NOISINH MASV TINH SINHVIEN 24 12
- 2/13/2012 Mối Kết Hợp (relationship) • Mối kết hợp diễn tả sự liên hệ giữa các loại thực thể trong một ứng dụng tin học. • Ví dụ mối kết hợp giữa hai loại thực thể Sinhviên và Lop, mối kết hợp giữa Sinhviên với Mônhọc,... • Mối kết hợp được biểu diễn bằng một hình thoi và hai bên là hai nhánh gắn kết với các loại thực thể liên quan, tên mối kết hợp thường là: thuộc, gồm , chứa,... 25 Mối Kết Hợp (relationship) (tt) • Ví dụ: mối kết hợp giữa hai loại thực thể Lớp và Sinh viên, giữa Sinhviên với Mônhọc Thuộc SINHVIEN LOP ketqua SINHVIEN MONHOC 26 13
- 2/13/2012 Chiều của mối kết hợp • Chiều của mối kết hợp là số tập thực thể tham gia vào mối kết hợp đó. • Mối quan hệ một chiều (đệ quy-phản xạ): mối kết hợp giữa các thực thể của cùng một tập thực thể. quanly NHANVIEN 27 Chiều của mối kết hợp (tt) • Mối quan hệ hai chiều: là sự kết nối giữa hai tập thực thể, còn gọi là mô hình nhị nguyên. Thuộc SINHVIEN LOP • Mối quan hệ nhiều chiều: mối kết hợp có số tập thực thể tham gia lớn hơn 2, còn gọi là mô hình đa nguyên. GIAOVIEN SINHVIEN day MONHOC 28 14
- 2/13/2012 Bản số của mối kết hợp • Bản số của một nhánh E trong mối kết hợp thể hiện số lượng các thực thể thuộc thực thể ở nhánh F có liên hệ với một thực thể của nhánh E. • Mỗi bản số là một cặp số (min,max), chỉ số lượng tối thiểu và số lượng tối đa của thực thể khi tham gia vào mối kết hợp đó. 29 Bản số của mối kết hợp (tt) 30 15
- 2/13/2012 Bản số của mối kết hợp (tt) • Ví dụ: mỗi sinh viên thuộc một và chỉ một lớp, mỗi lớp có thể có 1 hoặc nhiều sinh viên • Bản số bên nhánh Sinhviên là (1,1) • Bản số bên nhánh Lop là (1,n) (1,1) (1,n) Thuộc SINHVIEN LOP 31 Bản số của mối kết hợp (tt) • Mối kết hợp có thể có các thuộc tính đi kèm do đó chúng được đặt tên với ý nghĩa đầy đủ hơn. • Ví dụ giữa hai loại thực thể Monhoc và Sinhvien có mối kết hợp ketqua với ý nghĩa: “mỗi sinh viên ứng với mỗi lần thi của mỗi môn học có một kết quả điểm thi duy nhất”. (1,n) (1,n) SINHVIEN MONHOC ketqua DiemThi LanThi 32 16
- 2/13/2012 Tập thực thể yếu • Là thực thể mà khóa có được từ những thuộc tính của tập thực thể khác • Thực thể yếu (weak entity set) phải tham gia vào mối kết hợp mà trong đó có một tập thực thể chính (kiểu thực thể chủ) • Mô tả kiểu thực thể yếu bằng hình thoi và hình chữ nhật nét đôi 33 Khoá của mối kết hợp • Là hợp của các khoá của các loại thực thể liên quan. • Ví dụ: • MAGV là thuộc tính khoá của loại thực thể Giangvien • MALOP là thuộc tính khoá của loại thực thể Lop • MAMH là thuộc tính khoá của loại thực thể Monhoc • Mối kết hợp phancong (giữa các loại thực thể Giangvien, Lop, Monhoc) có khoá là {MAGV,MAMH,MALOP} • phancong là mối kết hợp 3 ngôi. 34 17
- 2/13/2012 Các bước thành lập mô hình thực thể kết hợp • B1: Xác định danh sách các loại thực thể • B2: Xác định các mối kết hợp giữa các loại thực thể để phác thảo mô hình. • B3: Lập bản số của các mối kết hợp. 35 Mô hình thực thể kết hợp cho bài toán quản lý điểm của sinh viên 36 18
- 2/13/2012 Bài tập 1: Quản lí đặt và giao hàng • Một cửa hàng chuyên bán sĩ và lẻ các mặt hàng đủ loại. Mỗi khi hết hàng, cửa hàng đặt mua thêm hàng ở các nhà cung cấp. Mỗi lần đặt hàng, cửa hàng sẽ điền một phiếu đặt hàng. Mỗi lần đặt hàng sẽ có một phiếu giao hàng. Cửa hàng muốn theo dõi việc đặt hàng và giao hàng trên. Sau đây là kết quả của việc phân tích yêu cầu ứng dụng. • Một nhà cung cấp có tên, địa chỉ và điện thoại của nhà cung cấp. Cần lưu lại thông tin về tất cả các mặt hàng mà cửa hàng có mua bán: mã mặt hàng, tên hàng, đơn vị tính, quy cách, số lượng tồn. Mỗi nhà cung cấp có thể cung ứng nhiều mặt hàng khác nhau và mỗi mặt hàng cũng có thể được cung cấp bởi nhiều nhà cung cấp khác nhau. Mỗi khi đặt hàng, cửa hàng phải điền các thông tin sau vào đơn đặt hàng: số đơn đặt hàng, ngày đặt hàng, 1 nhà cung cấp có thể cung cấp các mặt hàng cần đặt, ghi chú, số mặt hàng cần đặt. Đối với từng mặt hàng trong đơn đặt hàng, cần ghi rõ số lượng đặt và đơn giá đặt. Nhà cung cấp có thể áp dụng những đơn đặt hàng mà nhà cung cấp có cung ứng. Sau khi đặt hàng xong, nếu nhà cung cấp đến giao hàng thì phải lưu các phiếu giao hàng ứng với từng lần giao hàng. Trên phiếu giao hàng cần có các thông tin sau: số phiếu giao hàng, ngày giao, giao cho đơn đặt hàng nào. Mỗi lần đặt hàng, nhà cung cấp chỉ được giao hàng tối đa là 3 lần. Hãy vẽ mô hình thực thể kết hợp cho ứng dụng trên 37 Bài tập 2: Quản lý đề án Xây dựng cơ sở dữ liệu đề án công ty theo dõi các thông tin liên quan tới Nhân viên, Phòng ban, và đề án. • Công ty được tổ chức thành các phòng ban (PHONGBAN). Mỗi phòng ban có một tên duy nhất, mã số phòng ban duy nhất, và một nhân viên quản l{ phòng đó. Ta ghi nhận lại ngày nhận chức trưởng phòng. Mỗi phòng ban có thể có nhiều địa điểm khác nhau • Mồi phòng ban chủ trì nhiều Đề án (DEAN). Mỗi đề án có một tên duy nhất, mã số đề án duy nhất và được triển khai ở một địa điểm • Ta lưu trữ thông tin liên quan tới nhân viên (NHANVIEN) của công ty: mã nhân viên, địa chỉ, lương, phái, và ngày sinh. Mỗi nhân viên làm việc ở một phòng ban nhưng có thể tham gia nhiều đề án, trong đó đề án không nhất thiết phải do chính phòng ban của nhân viên đó chủ trì. Ta ghi nhận thời gian tham gia đề án trong tuần của nhân viên ứng với từng đề án mà nhân viên đó tham gia. Ta cũng ghi nhận người quản l{ trực tiếp của từng nhân viên. • Mỗi nhân viên có thể có nhiều thân nhân (THANNHAN). Với mỗi thân nhân, ta lưu trữ tên, phái, ngày sinh, và mối quan hệ với nhân viên trong công ty. Hãy vẽ mô hình thực thể kết hợp cho ứng dụng trên 38 19
- 2/13/2012 BÀI 3 MÔ HÌNH DỮ LIỆU QUAN HỆ 39 GIỚI THIỆU • Mô hình dữ liệu quan hệ được đề xuất bởi EF Codd năm 1970 • Mô hình này cung cấp một cấu trúc dữ liệu đơn giản, đồng bộ quan hệ - và nền tảng l{ thuyết vững chắc (đặt biệt về xử l{ và tối ưu hóa truy vấn) • Mô hình dữ liệu quan hệ là cơ sở của hầu hết các DBMS thương mại như: Oracle, Informix, DB2, Sybase, Foxpro, Microsoft SQL Server, … 40 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Kỹ thuật sử dụng ANSYS: Phần 2
77 p | 457 | 200
-
BÀI 2: TÌM HIỂU VỀ HƯỚNG ĐỐI TƯỢNG (OBJECT-ORIENTATION)
8 p | 195 | 45
-
Giáo trình Tin học văn phòng: Phần 2
17 p | 241 | 44
-
Bài giảng Nhập môn khai phá dữ liệu (PGS.TS. Hà Quang Thụy) - Chương 2. Phát hiện tri thức từ dữ liệu
44 p | 148 | 35
-
Hướng dẫn sử dụng Hyper-V trên Windows 8 (Phần 2): Cấu hình Switch ảo
10 p | 255 | 29
-
Trong 10 tiếng và tự học Excel 2003: Phần 2
150 p | 97 | 24
-
Visual basic.NET - Tự học lập trình một cách nhanh chóng và có hiệu quả nhất: Phần 2
234 p | 94 | 16
-
C# - Tự học lập trình hướng đối tượng và lập trình CSDL: Phần 2
265 p | 90 | 16
-
Giáo trình Ôtômát và ngôn ngữ hình thức: Phần 2
98 p | 94 | 10
-
Bài giảng Lập trình hệ nhúng: Chương 2 - Phạm Ngọc Hưng
23 p | 105 | 10
-
Bài giảng Tin học cơ sở 1: Phần 2
87 p | 51 | 8
-
Bài giảng Chương 2: Khái niệm quá trình - ĐH Công nghiệp TP.HCM
49 p | 61 | 6
-
Giáo trình Hệ điều hành: Phần 2 (Năm 2015)
95 p | 34 | 6
-
Ngôn ngữ lập trình C# 2005 - Tập 3: Lập trình hướng đối tượng (Phần 2)
228 p | 14 | 5
-
Giao thức TCP/IP và Internetworking (Tập 2): Phần 2
169 p | 8 | 4
-
Bài giảng Cơ sở dữ liệu: Bài 2 - ThS. Vũ Văn Định
8 p | 49 | 3
-
Bài giảng Lập trình mạng với Java - Chương 2: Giới thiệu ngôn ngữ lập trình Java
43 p | 52 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn