intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng môn Cơ sở dữ liệu: Chương 2 - ĐH KHTN

Chia sẻ: Vo Hoang Nhan | Ngày: | Loại File: PDF | Số trang:0

169
lượt xem
35
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chương 2: Mô hình Thực thể - Kết hợp thuộc bộ Bài giảng môn Cơ sở dữ liệu bao gồm các nội dung trình bày về quá trình thiết kế CSDL, mô hình Thực thể - Kết hợp, một số qui tắc mô hình Thực thể - Kết hợp, ví dụ. Bài giảng sẽ giúp cho sinh viên nắm được các kiến thức cơ bản của môn Cơ sở dữ liệu.

Chủ đề:
Lưu

Nội dung Text: Bài giảng môn Cơ sở dữ liệu: Chương 2 - ĐH KHTN

  1. Nội'dung'' !  Quá"trình"thiết"kế"CSDL" ' CHƯƠNG'2' !  Mô"hình"Thực"Thể"/"Kết"Hợp"" Mô'Hình'Thực'Thể'2'Kết'Hợp' !  Một"số"qui"tắc"mô"hình"Thực"Thể"/"Kết"Hợp" (En:ty2Rela:onship'Model)' !  Ví"dụ" Slide&bài&giảng&môn&Cơ&sở&dữ&liệu&& ©"Bộ"môn"Hệ"Thống"Thông"Tin"/"Khoa"Công"Nghệ"Thông"Tin"/"Trường"Đại"học"Khoa"học"Tự"nhiên""" ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 2& Quá'trình'thiết'kế'CSDL' Quá'trình'thiết'kế'CSDL' Thế giới thực Phân tích yêu cầu Các yêu cầu về chức năng Các yêu cầu về dữ liệu Phân tích chức năng Thế"giới" Động (xử lý, giao tác, hành vi, …) Phân tích quan niệm thực"" Các đặc tả chức năng Lược đồ quan niệm Tĩnh (dữ liệu) Độc lập HQT Hệ CSDL Thiết kế mức logic Phụ thuộc HQT cụ thể Quan niệm Luận lý Vật lý Lược đồ logic Thiết kế chương trình ứng dụng (gần với con (máy tính Thiết kế mức vật lý người) hiểu và thực hiện) Chương trình ứng dụng Lược đồ trong ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 3& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 4&
  2. Nội'dung'' Mô'hình'Thực'Thể'2'Kết'Hợp' !  Quá"trình"thiết"kế"CSDL" !  Entity-Relationship Model !  Mô&hình&Thực&Thể&?&Kết&Hợp&& !  Do Dr. Peter Pin-Shan Chen đề xuất 1976, !  Một"số"qui"tắc"mô"hình"Thực"Thể"/"Kết"Hợp" trong bài báo “The Entity-Relationship !  Ví"dụ" Model-Toward a Unified View of Data” !  ANSI chọn là mô hình chuẩn cho hệ thống tự điển tài nguyên thông tin (IRDSS: Information Resource Dictionary System) ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 5& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 6& Mô'hình'Thực'Thể'2'Kết'Hợp' Các'khái'niệm'cơ'bản' !  Được sử dụng rộng rãi nhất trong việc thiết !  Thực"thể" kế quan niệm dữ liệu -  Một"thực"là"một"đối"tượng"của"thế"giới"thực" !  Bao gồm hai phần: nguyên thuỷ & mở rộng -  Ví"dụ:" !  Được nhiều công cụ hỗ trợ " 1"chiếc"ôtô,"một"hoá"đơn,"một"nhân"viên,"…" !  Nguyên lý -  Phân loại thực thể: 2 loại chính " Một đối tượng tồn tại vật lý, có thể quan sát -  Một"CSDL"có"thể"được"mô"hình"hoá"như"là"một" được tập"các&thực&thể"(entities)"và"mối&kết&hợp" (relationships)"giữa"chúng – 1 sinh viên, 1 toà nhà, 1 xe ôtô, … " Một đối tượng ý niệm không trực quan – 1 công ty, 1 dự án, 1 phòng ban, … ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 7& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 8&
  3. Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Thuộc tính (attribute) !  Loại thực thể (Entity type hoặc Entity set) -  Đặc trưng của một thực thể -  Mô tả tập các thực thể giống nhau (có cấu trúc -  Mang giá trị cụ thể tương tự nhau) -  Ví dụ: -  Ví dụ: " 1 thực thể sinh viên «Nguyễn Văn A» có các " Hai thực thể «Nguyễn Văn A» và «Trần Thị thuộc tính: B» có các giá trị thuộc tính khác nhau nhưng – Họ: Nguyễn có cùng cấu trúc. Ta gọi cấu trúc này là loại thực thể SINH VIEN – Tên lót: Văn -  Ký hiệu – Tên: A – Tuổi: 20 Tên"loại"thực"thể" SINH"VIEN" XE" ©"Bộ môn HTTT -– CCNTT Khoa MND: 0123456789" - Trường ĐH KHTN" 9& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 10& Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Loại"thực"thể"/"Ví"dụ:"“Quản"lý"đề"tài"nghiên" !  Thuộc"tính" cứu"khoa"học”" -  Là"những"đặc"tính"riêng"biệt"của"loại"thực"thể." -  Một"giáo"viên"là"một"thực"thể" GIÁO VIÊN -  Ký"hiệu:""" Tên$thuộc$*nh -  Tập"hợp"các"giáo"viên"là"tập"thực"thể" -  Ví"dụ:" LƯƠNG HỌTÊN PHÁI -  Một"khoa"là"một"thực"thể" KHOA " GIÁOVIÊN -  Tập"hợp"các"khoa"là"tập"thực"thể" -  Thuộc"tính"là"những"giá"trị"nguyên"tố" " Kiểu"chuỗi" -  Một"bộ"môn"là"một"thực"thể" BỘ MÔN " Kiểu"số"nguyên" -  Tập"hợp"các"bộ"môn"là"tập"thực"thể" " Kiểu"số"thực" ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 11& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 12&
  4. Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Phân"loại"thuộc"tính" !  Thuộc"tính"đơn"trị" -  Thuộc"tính"đơn"trị" -  Chỉ chứa một giá trị -  Thuộc"tính"đa"trị" -  Ký hiệu: Tên"thuộc" -  Thuộc"tính"kết"hợp" tính" -  Thuộc"tính"dẫn"xuất"(suy"diễn)" MãSV" SINH"VIEN" Họ"tên" Ngày"sinh" ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 13& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 14& Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Thuộc"tính"đa"trị" !  Thuộc"tính"kết"hợp" -  Nhận"nhiều"giá"trị"đối"với"một"thực"thể"cụ"thể" -  Là"thuộc"tính"được"kết"hợp"từ"nhiều"thuộc"tính" -  Ký"hiệu:" thành"phần"khác."" Tên"thuộc" -  Ví"dụ:"thuộc"tính"ĐỊACHỈ"của"tập"thực"thể" tính" GIÁOVIÊN"có"thể"chia"nhỏ"thành"các"thành"phần:" SỐNHÀ,"ĐƯỜNG,"QUẬN,"THÀNHPHỐ" -  Ví"dụ:"thuộc"tính"ĐIỆNTHOẠI"của"tập"thực"thể" THÀNHPHỐ GIÁOVIÊN!là"thuộc"tính"đa"trị"mô"tả"mỗi"giáo" viên"có"thể"có"nhiều"số"điện"thoại." QUẬN GIÁOVIÊN ĐỊA CHỈ ĐƯỜNG GIÁOVIÊN ĐIỆNTHOẠI SỐNHÀ ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 15& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 16&
  5. Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Thuộc"tính"suy"diễn" !  Thuộc"tính"khoá"(hoặc"định"danh)" -  Giá"trị"của"thuộc"tính"được"tính"toán"từ"giá"trị" -  Tập&thuộc&tính&cho"phép"nhận"biết"duy&nhất" của"các"thuộc"tính"khác." một"thực"thể."" -  Ký"hiệu:" -  Ký"hiệu:" Thuộc"tính"khoá" Tên"thuộc" tính" MãSV" MãNV" Ngày"sinh" SINH"VIEN" NHAN"VIEN" SINH"VIEN" Họ"tên" Họ"tên" Tuổi" Ngày"sinh" ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 17& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 18& Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Khoá"hợp" !  Mối"kết"hợp"(Relationship)" -  Khoá"có"nhiều"thuộc"tính" -  Liên"kết"giữa"hai"hay"nhiều"thực"thể" Năm"học" -  Ví"dụ:" NV100 KHOÁ"HỌC" KT Học"kỳ" NV101 KD # Khoá"học"được"xác"định"bởi"một"năm"học"và" NV102 một"học"kỳ" " Mối"kết"hợp"một"nhân"viên"và"một"phòng"ban:" -  $"Nếu"một"thực"thể"có"nhiều"khoá"⇒"chỉ"có"một" nhân"viên"NV100"thuộc"phòng"KT,"nhân"viên" khoá"được"chọn"(khoá&chính)" NV101"cũng"thuộc"phòng"KT"và"nhân"viên" NV102"thuộc"phòng"KD." ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 19& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 20&
  6. Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Mối"kết"hợp"có"thuộc"tính:" !  Biễu"diễn"mối"kết"hợp" -  Bảng" NV100 10-09-2009 Nhan&vien& Phòng& 20-09 KT -20 NV100" KT" 10/09/2009" NV101 18-07-2008 10 KD NV100" KD" 20/09/2010" NV102 12-05-2011 NV101" KT" 18/07/2008" NV102" KD" 12/05/2011" -  Nhân"viên"NV100"làm"việc"tại"phòng"KT"có"ngày" -  Đồ"thị" bắt"đầu"10#09#2009"và"tại"phòng"KD"có"ngày"bắt" đầu"20#09#2010& NV100 10-09-2009 20-09 KT -20 NV101 18-07-2008 10 KD NV102 12-05-2011 ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 21& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 22& Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Loại"mối"kết"hợp"(Relationship"type"or"set)" !  Loại"mối"kết"hợp"–"ví"dụ:" -  Tập"hợp"các"mối"kết"hợp"tương"tự"nhau" -  Giữa"tập"thực"thể"GIÁOVIÊN"và"BỘMÔN"có"các" -  Ký"hiệu:" tập"mối"kết"hợp:" -  Một"giáo"viên"thuộc"một"bộ"môn"nào"đó" Tên"MHK" Tên MKH = động từ / cụm danh từ -  Một"bộ"môn"do"một"giáo"viên"làm"trưởng"bộ" môn." -  Ví"dụ:" Ngày"BĐ" (0,1) Là_Trưởng_ (1,1) BM NHAN"VIEN" Thuộc" PHONG" GIÁOVIÊN (1,1) Làm_Việc (1,n) BỘMÔN ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 23& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 24&
  7. Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Loại"mối"kết"hợp"–"ví"dụ:" !  Bản"số"(Cardinality)" -  Loại"mối"kết"hợp"vòng"(phản"thân)"quản"lý"trên" -  Ràng"buộc"về"số"lượng"của"một"thực"thể"có"thể" thực"thể"GIÁOVIÊN" tham"gia"vào"tập"mối"kết"hợp" -  Thể"hiện"qua"cặp"chỉ"số"(maxcard,"mincard):" (0,1) " Maxcard:"qui"định"số"lần"tối&thiểu"của"thực" thể"tham"gia"vào"mối"kết"hợp" GIÁOVIÊN Quản_Lý – Giá"trị:"0,"1,2,"…,"a"(a"hằng"số)" (0,n) " Mincard:"qui"định"số"lần"tối&đa&của"thực"thể" tham"gia"vào"mối"kết"hợp" – Giá"trị:"1$"n" ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 25& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 26& Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Bản"số" !  Bản"số"/"ví"dụ:" (min, max) (min, max) E Quan_hệ F (1,n) NV/ NHAN"VIEN" PHONG" PHONG" (0,n) -  Các"mẫu"cơ"bản:"" (0,1) Là_Trưởng_ BM (1,1) NV-P1 "  (0,1)"/"không"hoặc"1" NV001 NV-P2 KT "  (1,1)"/"duy"nhất"1"" GIÁOVIÊN (1,1) Làm_Việc (1,n) BỘMÔN NV002 KD "  (0,n)"/"không"hoặc"nhiều"" NV-P3 NV003 NS "  (1,n)"/"một"hoặc"nhiều" NV-P4 NV004 "  (0,"a),"(1,"a),"(a,"n):"a"là"hằng"số">"1" NV-P5 NV005 KẾTQUẢ PHỤCẤP GIÁOVIÊN (0,n) Tham_Gia (0,n) CÔNGVIỆC NGƯỜITHÂN ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 27& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 28&
  8. Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  3"dạng"loại"mối"kết"hợp" !  3"dạng"loại"mối"kết"hợp" -  One/to/many"(1:N):"Nếu"maxcard(E1,R)"="1"và" E1" R" E2" maxcard(E2,R)"="n"" GIÁO VIÊN (1,1) Làm_việc (1,n) BỘ MÔN -  One/to/one"(1:1):"Nếu"maxcard(E1,R)"="1"và" maxcard(E2,R)"="1"" GIÁO VIÊN (0,n) Là_Chủ_nhiệm (1,1) ĐỀ TÀI GIÁOVIÊN (0,1) Là_Trưởng_ (1,1) BỘMÔN -  Many/to/many"(N:N):"Nếu"maxcard(E1,R)"="n"và" BM maxcard(E2,R)"="m,"(m,n">1)" GIÁOVIÊN (0,n) Tham_Gia (0,n) CÔNGVIỆC NGƯỜITHÂN ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 29& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 30& Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  3"dạng"loại"mối"kết"hợp"–"ví"dụ" !  Thực"thể"phụ"thuộc" -  Thực"thể"tồn"tại"phụ"thuộc"vào"sự"tồn"tại"của" (1,1) NHAN"VIEN" (0,1) NV/LL" LI"LICH" thực"thể"khác" Một lí lịch thuộc về duy nhất một nhân viên và ngược lại, một -  Ví"dụ:" nhân viên chỉ có tối đa một lích lịch (0,1) (0,n) NHAN"VIEN" NV/LL" LI"LICH" (0,n) THAM" NHAN"VIEN" GIA" DU"AN" Lí lịch là không thể có nếu không có nhân viên (0,n) (1,1) QUAN" LY" (0,n) Một nhân viên có thể tham gia nhiều dự án và một dự án có thể DU"AN" Thuộc" GIAI"DOAN" được thực hiện bởi nhiều nhân viên. Một giai đoạn chỉ tồn tại cho một dự án Một dự án chỉ có duy nhất một người quản lý. Một nhân viên có thể quản lý nhiều dự án ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 31& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 32&
  9. Các'khái'niệm'cơ'bản' Các'khái'niệm'cơ'bản' !  Thực"thể"yếu"(weak"entity)" !  Thực"thể"yếu"–"ví"dụ" MAT" -  Là"thực"thể"không"thể"nhận"biết"với"những"thuộc" SO" TEN" STT" HANG" NGAY" tính"của"nó" DH" KH" " $"không&có&khoá&hoặc"khoá"yếu"(khóa"có" DON"HANG" Thuộc" CHI"TIET"DH" (1,n) được"từ"những"thuộc"tính"của"tập"thực"thể" SO" khác)" SLUONG" DON" TIEN" GIA" -  Thực"thể"yếu"phải"tham"gia"vào"mối"quan"hệ"mà" -  Chi"tiết"đơn"hàng"không"có"khoá"từ"các"thuộc" trong"đó"có"một"tập"thực"thể"chính" tính"của"nó" -  Ký"hiệu:" -  Khoá"được"xác"định:"STT"+"SO"DH"(DON"HANG)" TT"yếu" -  CHI"TIET"DH"phụ"thuộc"tồn"tại"vào"DON"HANG" ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 33& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 34& Các'khái'niệm'cơ'bản' Nội'dung'' !  Thực"thể"yếu"–"ví"dụ" !  Quá"trình"thiết"kế"CSDL" Tên" Năm"sinh" !  Mô"hình"Thực"Thể"/"Kết"Hợp"" MãNV" NHAN"VIEN" NV/TN" THAN"NHAN" !  Một&số&qui&tắc&mô&hình&Thực&Thể&?&Kết& (0,n) Hợp& -  Thân"nhân"chỉ"được"quản"lý"như"là"một"phần" !  Ví"dụ" thông"tin"bổ"sung"cho"nhân"viên" -  Công"ty"không"có"nhu"cầu"quản"lý"mã"số"cho" thân"nhân" -  $"Khoá"của"THAN"NHAN:"Tên"(THAN"NHAN)+" MãNV"(NHAN"VIEN)" ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 35& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 36&
  10. Một'số'qui'tắc' Một'số'qui'tắc' !  Một"thuộc"tính"dùng"để"mô"tả"đặc"trưng"cho" !  Tất"cả"các"nhánh"nối"với"mối"kết"hợp"phải"là" duy"nhất"một"thực"thể" nhánh"bắt"buộc" Điểm" MãKH" Mã"hàng" Tên" SINH"VIEN" Học" MON"HOC" ĐVTính" HANG"HOA" KHACH"HANG" HOC"KY" Địa"chỉ" Tên" Điểm" Gồm" Của" Tổng" TB" kết" SốĐH" DON"HANG" SINH"VIEN" Học" MON"HOC" Khách"hàng" Ngày"ĐH" HOC"KY" Điểm" ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 37& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 38& Một'số'qui'tắc' Một'số'qui'tắc' !  Nếu"có"một"thuộc"tính"của"một"thực"thể"phụ" !  Sử"dụng"thuộc"tính"hay"thực"thể"biểu"diễn" thuộc"vào"thực"thể"đó"và"một"thuộc"tính"khác" cho"một"đối"tượng" của"thực"thể"đó"thì"tồn"tại"một"thực"thể"ẩn" -  Địa"chỉ:"dùng"thuộc"tính"hay"thực"thể?" mà"cần"phải"được"định"nghĩa"bổ"sung" !  Thực"thể"hay"MKH?" Trọng" Số"xe" Số"xe" lượng" " KHACH"HANG" Mua" HANG" Màu" XE" Màu" XE" Thuộc" LOAI"XE" Loại" Tên"loại" !  Thực"thể"mạnh"hay"thực"thể"yếu?" Trọng" lượng" Số"chỗ" Số"chỗ" Loại $ Trọng lượng ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 39& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 40&
  11. Ví'dụ'«'Quản'lý'đề'án'»' !  CSDL"đề"án"công"ty"theo"dõi"các"thông"tin"liên"quan" đến"nhân"viên,"phòng"ban"và"đề"án" -  Cty"có"nhiều"phòng"ban,"mỗi"phòng"ban"có"tên"duy"nhất," mã"phòng"duy"nhất,"một"trưởng"phòng"và"ngày"nhận" chức."Mỗi"phòng"ban"có"thể"ở"nhiều"địa"điểm"khác"nhau." -  Đề"án"có"tên"duy"nhất,"mã"duy"nhất,"do"1"một"phòng"ban" chủ"trì"và"được"triển"khai"ở"1"địa"điểm." -  Nhân"viên"có"mã"số,"tên,"địa"chỉ,"ngày"sinh,"phái"và"lương." Mỗi"nhân"viên"làm"việc"ở"1"phòng"ban,"tham"gia"vào"các" đề"án"với"số"giờ"làm"việc"khác"nhau."Mỗi"nhân"viên"đều" có"một"người"quản"lý"trực"tiếp." -  Một"nhân"viên"có"thể"có"nhiều"thân"nhân."Mỗi"thân"nhân" có"tên,"phái,"ngày"sinh"và"mối"quan"hệ"với"nhân"viên"đó." ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 41& ©"Bộ môn HTTT - Khoa CNTT - Trường ĐH KHTN" 42&
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2