Lược đồ cơ sở dữ liệu quan hệ
KHOA (Mã khoa, tên khoa)
LỚP (Mã lớp, tên lớp, sĩ số, mã khoa)
SINHVIÊN (Mãsinhviên, họ tên, phái , địa chỉ, ngày sinh, điểm tốt nghiệp, mã lớp )
MÔN HỌC (Mã môn, tên môn, số tín chỉ)
HOC (Mãsinhviên, mã môn, điểm thi)
THẺ THƯ ViỆN (Số thẻ, ngàycấp, ngày hết hạn, mãsinhviên)
45 trang |
Chia sẻ: vutrong32 | Lượt xem: 1454 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Chương 4: Mô hình thực thể kết hợp entity relationship model, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
*Mô hình thực thể kết hợpentity relationship modelChương 4*Giới thiệu Các thành phần trong mô hình E-R Các vi dụChuyển đổi sang mô hình Quan hệNội dung*Bài toán Thực tếMô hình E-R Mô hình CSDL Quan hệ DBMSDBGiới thiệuE-R là mô hình trung gian để chuyển những yêu câu quản lý dữ liệu trong thế giới thực thành mô hình CSDL quan hệ Sử dụng ký hiệu của Chen*Các thành phần trong mô hình ERThực thể_ Entity , Tập thực thể _ Entity set Loại thực thể _ Entity typesThụôc tính _ Attributes Mối kết hợp _Relationships Loại mối kết hợp_Relationship typesBản số của mối kết hợp *SINHVIÊNThực thể và Loại thực thểThực thể là một đối tượng cụ thể, với các dữ liệu mô tả nó. Ví dụ : một Sinh viên tên Trần Văn Nam một dự án Cải tạo môi trường ĐB Sông Cửu long một tài khoản Kế toán số 111 Loại thực thể : một khái niệm để chỉ các thực thể giống nhau, có chung một số thuộc tínhLọai thực thể SINH VIÊN, LỚP HỌC,Tại mỗi thời điểm , mỗi loại thực thể bao gồm một tập xác định các thực thể (tập thực thể)Phân biệt được từng thực thể trong một tập thực thể, thông qua một số thuộc tính chỉ danh (VD: mã SV) Biểu diễn *Thuộc tínhCác loại thuộc tínhThuộc tính bắt buộc và thuộc tính tùy chọn. (Required attribute & Optional attribute)Thuộc tính đơn và thuộc tính phức hợp. (Simple attribute & Composite attribute)Thuộc tính đơn trị và thuộc tính đa trị. (Single attribute & Multivalued attribute )Thuộc tính chứa và thuộc tính dẫn xuất (Derived attribute)Thuộc tính khóa và thuộc tính không khóa. (Identifier attribute) *Thuộc tính _ Ví dụ & Ký hiệuThuộc tính khóa*Thuộc tính _ Ví dụ & Ký hiệu*Thuộc tính _ chú ýThuộc tính bắt buộc phải có một giá trị , không thể rỗng (NULL)Thuộc tính phức : có thể chia nhỏ thành những thuộc tính nhỏ hơn và tồn tại độc lậpThuộc tính đa trị không thể tồn tại trong mô hình CSDL Quan hệ =>Hai cách để khử thuộc tính đa trị C1 : Chuyển thuộc tính đa trị thành một số thuộc tính đơn trị C2 : Thay thế thuộc tính đa trị bằng tạo mới một loại thực thể Xem VD*Bài tậpLoại thực thể Nhânviên được đặc tả như sau. Nhận diện các thuộc tính và cho biết chúng thuộc loại nào ? “ Mỗi nhân viên có một Mã NV duy nhất, một họ, tên. Ngày sinh của nhân viên có dạng Ngày/tháng/năm. Địa chỉ của nhân viên có dạng: số nhà, tên đường, tên phường, tên quận, tên Tphố. Phái là nam hoặc nữ. Thông tin về số CMND của nhân viên cũng được lưu trữ. Mỗi nhân viên có thể có nhiều bằng cấp. “*Tinh chế mô hình ERKhử thuộc tính đa trịNHÂN VIÊNMaNVHoNVTenNVNgaysinhDiachiPhaiCMNDBangcapMaNVHoNVTenNVBang1Bang2Bang3NHÂN VIÊNNHÂN VIÊNCÓBẰNG CẤPMaNVTênbangMô tảMaNVHoNVTenNVNgaysinhDiachiPhaiCMND*Mối kết hợp – RelationshipsMối kết hợp, thể hiện sự liên hệ có nghĩa giữa hai hay nhiều thực thể khác nhauLoại mối kết hợp - relationship type Khái niệm phản ánh những mối kết hợp cùng loại biểu diễn bằng hình diamond. Tên của loại mối kết hợp thường là một động từ.chiều hướng của loại mối kết hợpHọc sinh Học một môn họcGiáo viên dạy một lớp họcGIÁOVIÊNDạyLỚPHỌCSINHHọcMÔNHỌC*Bậc của mối kết hợpDựa theo số thực thể tham gia vào mối kết hợp KHOÁHỌCYêucầuMối kết hợp một ngôi (Unary relationship, recursive relationship)GIÁOVIÊNDạyLỚPMối kết hợp hai ngôi (Binary relationship)Đặc tả Đặc tả DỰ ÁNThamgiaNHÂNVIÊNCHỨC NĂNGMối kết hợp ba ngôi (Ternary relationship)Đặc tả *Thuộc tính của mối kết hợpMột mối kết hợp có thể có tính chất riêng của nó. Thuộc tính chỉ tồn tại trong loại mối kết hợp giữa 2 loại thực thể Các thuộc tính này không thuộc về 2 loại thực thể ban đầuHỌCSINHHọcMÔNHỌCĐiểmthi*Mối kết hợp Giữa 2 loại thực thể có thể tồn tại nhiều hơn một loại mối kết hợpNHÂNVIÊNPHÒNGBANCÓPHỤ TRÁCH*Bản số của mối kết hợpCó 2 cách biểu diễn :Biểu thị số thực thể tối đa xuất hiện ứng với một thực thể bên kia, có 3 loại 1:1, 1:M, N:MBiểu thị số thực thể tối thiểu và tối đa xuất hiện ứng với một thực thể bên kiathể hiện ở bản số tối thiểu là 1 hay 0, hai loạibắt buộc tham gia không bắt buộcLà một loại ràng buộc (Ràng buộc về bản số)giới hạn khả năng tham gia vào loai mối kết hợp của một thực thể*Bản số của mối kết hợp – ví dụMột học sinh chỉ có thể tham gia vào 1 Lớp học . Một lớp học có nhiều học sinh SINHVIEN ThamgiaLỚP HỌCN1Tuấn*Lan**MinhOONCD2CNCD2AVân**Bản số của mối kết hợpMột học sinh chỉ có thể tham gia vào 1 khóa học . Một khóa học có nhiều học sinh Một giáo viên có thể dạy nhiều lớp. Một lớp được dạy bởi nhiều giáo viênNMGIAO VIENDạyLOPSINHVIEN ThamgiaKHÓA HỌCN1Một giáo viên có 1 hồ sơ giảng dạy . Một hồ sơ giảng dạy thuộc về 1 giáo viên 11GIAO VIENCóHỒ SƠ*Bản số của mối kết hợpMỗi lớp học có tối đa 50 Sinh viên, mỗi sinh viên học tối đa 2 lớp trong một học kỳ.GIAO VIENDạyLOP(0,3)(1,1)SINHVIEN ThamgiaLOPMN(1,2)(0,50)Mỗi giáo viên được dạy tối đa 3 lớp trong một học kỳ. 1M**Xây dựng mô hình ERĐặc tả vấn đềdữ liệu cần lưu trữ qui tắc quản lýXác định các tập thực thể (thuộc tính )Xác định các mối kết hợp (thuộc tính )Xác định các bản sốPhân tíchXâydựng ER*Xây dựng mô hình ER_VDĐặc tả vấn đề :Những người phụ trách đào tạo của Trường cao đẳng cộng đồng núi Ayers mong muốn tạo lập một CSDL về các môn đào tạo của trường (như: chứng chỉ leo núi, công nghệ bay) và học viên ghi danh vào những môn học này. Trường cũng có qui định là cùng một lúc, học viên chỉ có thể ghi danh vào một môn học. Họ chỉ quan tâm về dữ liệu của đợt ghi danh hiện tại. Một khi học viên kết thúc môn học thì nhà trường sẽ không còn quan tâm đến họ và những học viên này phải được xóa khỏi CSDL.Thông tin cần lưu trữ về một học viên bao gồm: mã học viên, tên học viên, địa chỉ, ngày sinh, số điện thoại, ngày nhập học.Thông tin về môn học gồm mã môn học, tên môn học, thời lượng .*Xây dựng mô hình ER_VDB1: Phân tích Phần đặc tả vấn đề chứa đựng các qui tắc quản lý và dữ liệu yêu cầu của vấn đề.Dữ liệu của vấn đề là:- chi tiết về học viên có : mã học viên, tên học viên, địa chỉ, ngày sinh, số điện thoại và ngày nhập học .- chi tiết về môn học có : mã môn học, tên môn học và thời lượng.Qui tắc quản lý gồm: - Cùng một lúc, một học viên chỉ có thể ghi danh vào một môn học.- Nhiều học viên có thể ghi danh vào một môn học.- Nhà trường chỉ quan tâm đến những học viên của môn học hiện tại*Xây dựng mô hình ER_VDB2: Xác định các tập thực thể (thuộc tính )B3: Xác định các mối kết hợp (thuộc tính )Mã học viênTên học viênĐịa chỉNgày sinhSố điện thoạiNgày nhập học.Mã môn họcTên môn họcThời lượng HỌCVIÊNMÔNHỌCMã học viênTên học viênĐịa chỉNgày sinhSố điện thoạiNgày nhập học.Mã môn họcTên môn họcThời lượng HỌCVIÊNMÔNHỌCGhi danh*Xây dựng mô hình ER_VDB4: Xác định các bản sốMột cách biểu diễn khác (dùng ký hiệu của Crow)Mã học viênTên học viênĐịa chỉNgày sinhSố điện thoạiNgày nhập học.Mã môn họcTên môn họcThời lượng HỌCVIÊNMÔNHỌCGhi danhM1(1,1)(1,M)*Ví dụ 2Đặc tả vấn đề Phòng cảnh sát mong muốn quản lý lý lịch cá nhân những người lái xe và bằng lái của họ. Một người chỉ lấy được một bằng lái và một bằng lái chỉ thuộc về một người. Thông tin về lái xe mà phòng cảnh sát quan tâm là: mã người lái xe, tên, địa chỉ, ngày sinhThông tin về bằng lái cần lưu trữ là: mã bằng lái, loại bằng lái, ngày hết hạnPhân tíchDữ liệu của vấn đề :Thông tin về Người lái xe : mã người lái xe, tên, địa chỉ, ngày sinhThông tin về bằng lái : mã bằng lái, loại bằng lái, ngày hết hạnQui tắc quản lý :Một người chỉ lấy được một bằng lái và một bằng lái chỉ thuộc về một người. *Mô hình E-RNGƯỜI LÁIXEBẰNG LÁIMã người lái xeTênĐịa chỉNgày sinhMã bằng láiLoại bằng láiNgày hết hạnSở hữu11(1,1)(1,1)*Ví dụ 3Đặc tả vấn đề Người phụ trách đào tạo Trường cao đẳng cộng đồng núi xanh mong muốn thiết lập một csdl về các môn học mà họ cung cấp (như chứng chỉ leo núi, cử nhân công nghệ bay) và các học viên ghi danh vào các môn học này. Nhà trường qui định là một học viên được ghi danh học tối đa ba môn học trong cùng một lúc. Ngày nhập học của mỗi môn học có thể khác nhau.Họ chỉ quan tâm đến dữ liệu của môn học hiện tại. Một khi học viên kết thúc môn học, họ sẽ không còn thuộc diện quản lý của nhà trường và phải được xóa khỏi csdl trừ khi học viên này ghi danh học tiếp môn mới. Thông tin về một học viên gồm: mã học viên, tên học viên, địa chỉ, ngày sinh, số điện thoại, ngày nhập họcThông tin về môn học gồm: mã môn học, tên môn học, thời lượng *Phân tích :Dữ liệu của vấn đề là:Thông tin về học viên có : mã học viên, tên học viên, địa chỉ, ngày sinh, số điện thoại Thông tin về môn học có : mã môn học, tên môn học và thời lượng. Thông tin về ngày nhập học của học viên với từng môn học.Qui tắc quản lý gồm: - Cùng một lúc, một học viên chỉ có thể ghi danh vào 3 môn học.- Nhiều học viên có thể ghi danh vào một môn học.- Nhà trường chỉ quan tâm đến những học viên của môn học hiện tạiMã học viênTên học viênĐịa chỉNgày sinhSố điện thoạiMã môn họcTên môn họcThời lượng HỌCVIÊNMÔNHỌCGhi danhMN(1,3)(1,M)Ngày nhập học.*Ví dụ 4.1Đặc tả vấn đề Trường CĐMêkong có nhu cầu tin học hóa công tác quản lý của mình. Trường có nhiều khoa. Mỗi khoa có thông tin Mã khoa, Tên khoa. Mỗi khoa có nhiều lớp học. Thông tin về lớp học : Mã lớp, Tên lớp, Sĩ số.Một sinh viên khi nhập học được xếp vào một lớp và thuộc lớp này trong suốt khoá học. Thông tin về Sinh viên gồm: mãSV, Họtên, Ngày sinh, phái, địa chỉ . Sinh viên học nhiều môn học . Kết thúc mỗi môn học , sinh viên có một điểm thi. Kết thúc khoá học , sinh viên có một điểm Tốt nghiệp. Mỗi môn học có thông tin : mãMôn, Tênmôn, số tín chỉ.Mỗi sinh viên có một thẻ thư viện. Và một thẻ thư viện chỉ thuộc về một sinh viên. Thông tin về thẻ thư viện : Số thẻ, Ngày cấp, Ngày hết hạn.*Phân tích :Dữ liệu yêu cầu :Thông tin về khoa: Mã khoa, Tên khoaThông tin về lớp học : Mã lớp, Tên lớp, Sĩ số.Thông tin về Sinh viên gồm: mãSV, Họtên, Ngày sinh, phái, địa chỉ . Mỗi môn học có thông tin : mãMôn, Tênmôn, số tín chỉThông tin về thẻ thư viện : Số thẻ, Ngày cấp, Ngày hết hạn.Kết thúc mỗi môn học , sinh viên có một điểm thi. Kết thúc khoá học , sinh viên có một điểm Tốt nghiệpQui tắc quản lý :Mỗi khoa có nhiều lớp họcMột sinh viên khi nhập học được xếp vào một lớpSinh viên học nhiều môn họcMỗi sinh viên có một thẻ thư viện. Một thẻ thư viện chỉ thuộc về một sinh viên*Mã khoaTên khoaKHOAMã lớpTên lớpSĩ số.LỚPMãSVHọtênNgày sinhPháiĐịa chỉ . điểm Tốt nghiệpSINH VIÊNMãMônTênmônSố tín chỉMÔN HỌCSố thẻNgày cấpNgày hết hạn.THẺ THƯ ViỆNđiểm thiCủaThuộcHọcCóM1M1MN11*Đặc tả vấn đề (tiếp theo Ví dụ 4.1)Nếu điểm thi hết môn của sinh viên dưới 5 , sinh viên phải tự đăng ký học và thi lại (thường là ở những khoá học sau). Sinh viên chỉ có thể đăng ký học và thi lại tối đa 2 lần. Nhà trường có nhu cầu quản lý điểm của những lần thi lại. Và có nhu cầu biết danh sách đăng ký học lại của sinh viên của một môn học :ngày đăng ký, điểm thiVí dụ 4.2SINH VIÊNMÔN HỌCĐiểmlần 1HọcĐăng ký TLNgày đăng kýĐiểmlần 2Điểmlần 3MMN1*Biến đổi từ mô hình ER Sang Mô hình Quan hệCác qui tắc biến đổi :Một tập thực thểMột Lược đồ quan hệMỗi thuộc tínhmột thuộc tínhMỗi thuộc tính nhận diệnkhoá chínhMỗi mối kết hợpkhoá ngoại / LĐ quan hệ mới (trong mkh M-N)Mô hình E-RMô hình CSDL Quan hệGhi chú : chỉ áp dụng cho mối kết hợp 2 ngôi*NGƯỜI LÁIXEBẰNG LÁIMã người lái xeTênĐịa chỉNgày sinhMã bằng láiLoại bằng láiNgày hết hạnSở hữu11(1,1)(1,1)NGƯỜI LÁI XE (mã người lái xe, tên, địa chỉ, ngày sinh)BẰNG LÁI (mã bằng lái, lọai bằng lái, ngày hết hạn, mã người lái xe)hayNGƯỜI LÁI XE (mã người lái xe, tên, địa chỉ, ngày sinh, mã bằng lái)BẰNG LÁI (mã bằng lái, lọai bằng lái, ngày hết hạn)Ví dụ 1 (mối kết hợp 1-1) Chuyển khóa chính từ quan hệ 1 sang quan hệ 2 hoặc ngược lại*Mã học viênTên học viênĐịa chỉNgày sinhSố điện thoạiNgày nhập học.Mã môn họcTên môn họcThời lượng HỌCVIÊNMÔNHỌCGhi danhVí dụ 2 (mối kết hợp 1-M)1MHỌC VIÊN (Mã học viên, Tên học viên, địa chỉ, ngày sinh, số điện thọai, ngày nhập học, Mã môn học)MÔN HỌC (Mã môn học, Tên môn học, thời lượng )Chuyển khóa chính từ bên một sang bên nhiều#27.Dulieu*Ví dụ 3 ( Mối kết hợp M-N )Mã học viênTên học viênĐịa chỉNgày sinhSố điện thoạiMã môn họcTên môn họcThời lượng HỌCVIÊNMÔNHỌCGhi danhMN(1,3)(1,M)Ngày nhập học.HỌC VIÊN (Mã học viên, Tên học viên, địa chỉ, ngày sinh, số điện thọai )MÔN HỌC (Mã môn học, Tên môn học, thời lượng )PHIẾU GHI DANH (Mã học viên, mã môn học, ngày nhập học)Tạo một quan hệ mới #28. dulieu*Bài tập :MãGVHọ tênĐịa chỉPhoneBằngcấpMã HồsơNgàyCông việcĐề tàiVị tríGIÁO VIÊNHỒSƠGDCó11THẺTVPHIẾUMƯỢNCóTÁCGIẢTỰA SÁCHsángtácMãĐGHọ tênNgàysinhĐịa chỉNghềnghiệpSốPMNgàymượn1MMãTGHọtênNgàysinhĐịa chỉMNMãtựasáchLọaisáchNămxbNhàxbSốtrangSốtậpVaitrò*Ví dụ 4_1 Đặc tả vấn đề Trường CĐMêkong có nhu cầu tin học hóa công tác quản lý của mình. Trường có nhiều khoa. Mỗi khoa có thông tin Mã khoa, Tên khoa. Mỗi khoa có nhiều lớp học. Thông tin về lớp học : Mã lớp, Tên lớp, Sĩ số.Một sinh viên khi nhập học được xếp vào một lớp và thuộc lớp này trong suốt khoá học. Thông tin về Sinh viên gồm: mãSV, Họtên, Ngày sinh, phái, địa chỉ . Sinh viên học nhiều môn học . Kết thúc mỗi môn học , sinh viên có một điểm thi. Kết thúc khoá học , sinh viên có một điểm Tốt nghiệp. Mỗi môn học có thông tin : mãMôn, Tênmôn, số tín chỉ.Mỗi sinh viên có một thẻ thư viện. Và một thẻ thư viện chỉ thuộc về một sinh viên. Thông tin về thẻ thư viện : Số thẻ, Ngày cấp, Ngày hết hạn.*Mã khoaTên khoaKHOAMã lớpTên lớpSĩ số.LỚPMãSVHọtênNgày sinhPháiĐịa chỉ . điểm Tốt nghiệpSINH VIÊNMãMônTênmônSố tín chỉMÔN HỌCSố thẻNgày cấpNgày hết hạn.THẺ THƯ ViỆNđiểm thiCủaThuộcHọcCóM1M1MN11*KHOA (Mã khoa, tên khoa)LỚP (Mã lớp, tên lớp, sĩ số)SINHVIÊN (Mãsinhviên, họ tên, phái , địa chỉ, ngày sinh, điểm tốtnghiệp)MÔN HỌC (Mã môn, tên môn, số tín chỉ)THẺ THƯ ViỆN (Số thẻ, ngàycấp, ngày hết hạn)B2 : Chuyển các mối kết hợpB1 : Chuyển các tập thực thể thành quan hệMối kết hợp KHOA – LỚP chuyển thành khóa ngoại Mã khoa trong quan hệ LỚPMối kết hợp LỚP – SINHVIEN chuyển thành khóa ngoại Mã lớp trong SINHVIENMối kết hợp SINHVIEN – THẺ THƯ ViỆN chuyển thành khóa ngọai Mãsinhviên trong quan hệ THẺTHƯ ViỆNMối kết hợp SINHVIÊN – MÔNHỌC chuyển thành một quan hệ mới HỌC(Mãsinhviên, mãmôn, diểm thi)*Lược đồ cơ sở dữ liệu quan hệKHOA (Mã khoa, tên khoa)LỚP (Mã lớp, tên lớp, sĩ số, mã khoa)SINHVIÊN (Mãsinhviên, họ tên, phái , địa chỉ, ngày sinh, điểm tốt nghiệp, mã lớp )MÔN HỌC (Mã môn, tên môn, số tín chỉ)HOC (Mãsinhviên, mã môn, điểm thi)THẺ THƯ ViỆN (Số thẻ, ngàycấp, ngày hết hạn, mãsinhviên)*Nhận xét :#28 Mối kết hợp giữa các tập thực thể trong mô hình E-R được chuyển thành khóa ngọai trong mô hình csdl Quan hệ . Như vậy : trong mô hình quan hệ , các quan hệ liên hệ với nhau nhờ có chung một hay một số thuộc tính .Có 2 loại mối quan hệ _relationships trong mô hình quan hệ : 1-1 và 1 – MVí dụ :#27. #28.*MãkhóahọcTên khóa họcThời lượngKTVmạngKỹ thuật viên450KTVcsdlKỹ thuật viên cơ sở dữ liệu 250ĐohoaĐồ họa ứng dụng250LTVLập trình viên450MãSV TênSố ĐTNgày sinhĐịa chỉNgày nhập họcMãkhóaHọc050001Tran thuy Vy123015-3-1988Dong thap15-4-2005KTVmang050002Nguyen Nam 456217-8-1987TP HCM20-4-2005KTVCSDL050003Pham van Hai478622-1-1988TP HCM15-4-2005KTVmang050004Nguyen thi Lan12221-1-1988Tien Giang15-4-2005Đohoa#19.mhQh *MaMonhocTên môn họcThời lượngTHCBTin học Văn phòng90LTmạngLập trình mạng45MangCBMạng căn bản60KTLTKỹ thuật lập trình90MãSV TênSố ĐTNgày sinhĐịa chỉ050001Tran thuy Vy123015-3-1988Dong thap050002Nguyen Nam 456217-8-1987TP HCM050003Pham van Hai478622-1-1988TP HCM050004Nguyen thi Lan12221-1-1988Tien GiangMaSVMamonhocNgay nhap hoc050001MangCB01/01/2005050001KTLT15/01/2005050002THCB20/1/2005050002KTLT20/1/2005050002MangCB30/1/2005#20-mohinhQH
Các file đính kèm theo tài liệu này:
- chuong4_mohinher_5296.ppt