Bài giảng Cơ sở dữ liệu: Chương 1 - ThS. Trần Quang Hải Bằng (tt)

23 8 0
Bài giảng Cơ sở dữ liệu: Chương 1 - ThS. Trần Quang Hải Bằng (tt)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Cơ sở dữ liệu - Chương 1: Tổng quan về cơ sở dữ liệu cung cấp cho người đọc các kiến thức về các mô hình dữ liệu bao gồm: Mô hình quan niệm, logic, vật lý; mô hình hóa dữ liệu; quá trình thiết kế CSDL; các hướng tiếp cận CSDL,... Mời các bạn cùng tham khảo.

CƠ SỞ DỮ LIỆU ( Databases ) Chương 1: Tổng quan CSDL Mơ hình thực thể liên kết (ER) bangtqh@utc2.edu.vn Mục tiêu giảng Phát triển hệ thống mơ hình quan niệm liệu Các khái niệm mơ hình thực thể-liên kết – – – – Lớp thực thể Thuộc tính Lớp quan hệ Các ràng buộc cấu trúc Các ví dụ mở rộng Các vấn đề mơ hình thực thể - liên kết Mơ hình thực thể liên kết mở rộng – Tổng quát hóa / chun biệt hóa – Thừa kế thuộc tính – Các ràng buộc chuyên biệt hóa / tổng quát hóa bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Tại phải có mơ hình quan niệm Chuyển đổi Ngôn ngữ nghiệp vụ Trực tiếp ? Độc lập hệ quản trị; Độc lập mơ hình DL Người phân tích nghiệp vụ bangtqh@utc2.edu.vn Ngơn ngữ sở liệu SQL Lập trình viên Chương 1b - Database - Mơ hình ER Các kỹ thuật phát triển hệ thống Có nhiều kỹ thuật khác để phát triển hệ thống Các ký thuật chia thành loại: – Mơ hình hóa chức – Mơ hình thơng tin – Tham chiếu chéo bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Mơ hình quan niệm (logic) Vật lý Thơng tin xử lý mơ hình hóa tách biệt sau kiểm tra chéo Kết phát triển CSDL lưu trữ liệu ứng dụng truy xuất chúng Bussiness requirements Information Function Cross checking Cross checking Database Application Operational System bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Mơ hình quan niệm, logic, vật lý Mơ hình quan niệm: – Các mơ hình hình thức, trừu tượng thơng tin u cầu xử lý Mơ hình logic – Chuyển mơ hình quan niệm sang dạng đặc tả phù hợp với mơi trường xử lý Mơ hình vật lý – Sử dụng ngôn ngữ truy vấn (SQL) để tạo đối tượng vật lý bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Mơ hình quan niệm, logic, vật lý Bussiness requirements Information Conceptual Modeling Data modeling Logical Modeling Database design Physical implementing Database build Function Cross checking Function modeling Analysis Application design Design Application build Build Cross checking Database Application Operational System bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Mơ hình hóa liệu (Data modeling) Cố gắng tạo biểu diễn giới thực – Bỏ qua số phức tạp giới thực – Sự đơn giản dựa vào tập nhỏ ký hiệu Cố gắng rút gọn tổ chức liệu thành mô tả thực thể mối liên hệ chúng – Sự mô tả yêu cầu thơng tin mà máy tính sử dụng Tiến trình mơ hình hóa độc lập với tảng phát triển (phần mềm) Mơ hình sử dụng để trao đổi người thiết kế CSDL người sử dụng CSLD bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Quá trình thiết kế CSDL Ý tưởng thiết kế E/R bangtqh@utc2.edu.vn Lược đồ quan hệ HQT CSDL quan hệ Chương 1b - Database - Mơ hình ER Quá trình thiết kế CSDL (tt) Thu thập phân tích yêu cầu – Các yêu cầu CSDL – Các yêu cầu chức (thao tác CSDL) Thiết kế quan niệm phân tích chức – Tạo sơ đồ quan niệm (cấp cao), ví dụ: ERD – Đặc tả giao tác cấp cao tương ứng với thao tác CSDL Thiết kế logic – Ánh xạ lược đồ quan niệm thành lược đồ logic: vd: mơ hình quan hệ Thiết kết chương trình ứng dụng Cài đặt giao tác bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Song song với TK logic 10 Quá trình thiết kế CSDL (tt) Thế giới thực Phân tích yêu cầu Các yêu cầu chức Các yêu cầu liệu Phân tích chức TK quan niệm Các đặc tả chức Lược đồ quan niệm Độc lập HQT Thiết kế mức logic Thiết kế chương trình ứng dụng Lược đồ logic Phụ thuộc HQT cụ thể Thiết kế mức vật lý Lược đồ bangtqh@utc2.edu.vn Chương trình ứng dụng 11 Chương 1b - Database - Mơ hình ER Các hướng tiếp cận CSDL Tiếp cận từ xuống – Top Down – Xác định thực thể liệu – Xác định thuộc tính thực thể – Xác định mối liên hệ thực thể Tính trừu tượng cao khó Tiếp cận từ lên – Buttom Up – Tập hợp yếu tố liệu từ thực tế – Gom thành thực thể – Xác định mối quan hệ thực thể bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Xuất phát từ thực tế - dễ 12 Thực thể - Tập thực thể Một thực thể (entity) đối tượng giới thực, trừu tượng cụ thể tồn độc lập Tập hợp thực thể giống tạo thành tập thực thể (entity set) Mơ hình ER Mơ hình OOP Thực thể (Entity) Đối tượng (Object) Tập thực thể (Entity set) Lớp đối tượng (Class of Object) Thành phần: - Thuộc tính/Dữ liệu (attributes) Thành phần: - Thuộc tính (Attribute) - Thao tác liệu (method) bangtqh@utc2.edu.vn 13 Chương 1b - Database - Mơ hình ER Thực thể - Tập thực thể (VD) Ví dụ “Quản lý đề án công ty” – Một nhân viên thực thể – Tập hợp nhân viên tập thực thể – Một đề án thực thể – Tập hợp đề án tập thực thể Hoài Oanh NHÂN VIÊN Nhung Toàn – Một phòng ban thực thể – Tập hợp phòng ban tập thực thể bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Tuấn 14 Thuộc tính Là đặc tính riêng biệt tập thực thể Là tính chất thực thể cần quản lý Chỉ quan tâm tới tính chất có liên quan tới ứng dụng Ví dụ tập thực thể NHANVIEN có thuộc tính – Họ tên – Ngày sinh – Trình độ – Địa – … Nên có mơ tả gắn gọn thuộc tính bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 15 Các loại thuộc tính Thuộc tính đơn – khơng thể tách nhỏ Thuộc tính kết hợp – Có thể tách thành nhiều thuộc tính nhỏ Thuộc tính đơn trị – Có giá trị cho thực thể (vd: số CMND) Thuộc tính đa trị – Có thể nhiều giá trị khác thực thể (vd: số đt) Thuộc tính suy diễn – Giá trị suy từ thuộc tính khác (vd: Năm sinh tuổi) bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 16 Mối quan hệ Quan hệ: Là liên kết hay nhiều tập thực thể Ví dụ tập thực thể NHANVIEN PHONGBAN có liên kết – Một nhân viên thuộc phịng ban – Một phịng ban có nhân viên làm trưởng phòng Lam_viec NHANVIEN PHONGBAN La_truong_phong Tập quan hệ: tập hợp mối quan hệ giống bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 17 Lược đồ ER Là đồ thị biểu diễn tập thực thể, thuộc tính mối quan hệ chúng – Đỉnh Tên tập thực thể Tập thực thể Tên thuộc tính Thuộc tính Tên quan hệ Quan hệ – Cung đường nối • Tập thực thể thuộc tính • Mối quan hệ tập thực thể bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 18 Ví dụ lược đồ ER NGSINH LUONG DCHI TENPHG HONV TENNV NHANVIEN Lam_viec PHONGBAN PHAI La_truong_phong Phu_trach DDIEM_DA Phan_cong DEAN TENDA bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 19 Thể lược đồ ER Một CSDL mô tả lược đồ ER chứa đựng liệu cụ thể gọi thể CSDL – Mỗi tập thực thể tập hữu hạn thực thể • Giả sử tập thực thể NHANVIEN có thực thể NV1, NV2, NV3….NVn – Mỗi thực thể có giá trị cụ thể thuộc tính • NV1 có TENNV=“Tùng”, NGSINH=“10/3/1987”,… • NV2 có TENNV=“Yến”, NGSINH=“30/12/1980”,… Chú ý: – Không lưu trữ lược đồ ER CSDL (đây khái niệm trừu tượng) – Lược đồ ER giúp thiết kế CSDL trước chuyển quan hệ xuống mức vật lý bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 20 Ràng buộc kiểu liên kết Thể CSDL chứa mối quan hệ cụ thể – Cho mối quan hệ R kết nối n tập thực thể E1, E2, …, En – Thể R tập hữu hạn danh sách (e1, e2, …, en) – Trong ei giá trị chọn từ tập thực thể Ei Xét mối quan hệ NHANVIEN NHANVIEN bangtqh@utc2.edu.vn PHONGBAN Tung Nghien cuu Hang Dieu hanh Vinh Quan ly Lam_viec PHONGBAN (Tung, Nghien cuu) (Hang, Dieu hanh) (Vinh, Quan ly) Chương 1b - Database - Mơ hình ER 21 Ràng buộc kiểu liên kết (tt) bangtqh@utc2.edu.vn Chương 1b - Database - Mô hình ER 22 Ràng buộc kiểu liên kết(tt) Xét mối quan hệ nhị phân R (binary relationship) tập thực thể A B, ràng buộc liên kết bao gồm – Một-Nhiều A – Một-Một A – Nhiều-Một A – Nhiều-Nhiều A bangtqh@utc2.edu.vn 1 n n Quan_hệ Quan_hệ Quan_hệ Quan_hệ n 1 m B B B B 23 Chương 1b - Database - Mơ hình ER Ràng buộc kiểu liên kết(tt) (min, max) định thực thể e ∈ E tham gia nhiều vào thể R E • • • • (min, max) Quan_hệ (min, max) F (0,1) – không (1,1) – (0,n) – không nhiều (1,n) – nhiều bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 24 Ràng buộc kiểu liên kết(tt) Ví dụ – Một phịng ban có nhiều nhân viên NV Lam_viec (1,n) PB – Một nhân viên thuộc phòng ban (1,1) NV PB Lam_viec – Một nhân viên phân công vào nhiều đề án không phân công vào đề án NV (0,n) DA Phan_cong – Một nhân viên trưởng phịng phịng ban NV bangtqh@utc2.edu.vn (0,1) La_truong_phong PB 25 Chương 1b - Database - Mơ hình ER Ràng buộc kiểu liên kết(tt) Một loại thực thể tham gia nhiều lần vào quan hệ với nhiều vai trò khác Còn gọi Mối quan hệ phản xạ Mối quan hệ đệ quy La nguoi quan ly NHANVIEN Quan_ly (0,n) CITIZEN Duoc quan ly boi Married (1, 1) (0,1) (0,1) bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 26 Bài tập ví dụ: Xác định mối quan hệ ràng buộc số cho tập thực thể sau: Thuộc (1, 1) (2 , n) SINH VIÊN LỚP C.NGÀNH (1, 1) (0, 1) Là lớp trưởng GIẢNG VIÊN THẺ SV MÔN HỌC bangtqh@utc2.edu.vn 27 Chương 1b - Database - Mơ hình ER Thuộc tính mối quan hệ Thuộc tính mối quan hệ mơ tả tính chất cho mối quan hệ Thuộc tính gắn liền với thực thể tham gia vào mối quan hệ NHANVIEN (0,n) Lam_viec (1, n) DUAN THGIAN bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 28 Thuộc tính khóa Cịn gọi thuộc tính định danh tập thực thể Dùng để phân biệt thực thể khác tập thực thể Khóa K tập thực thể E hay nhiều thuộc tính cho – Lấy thực thể e1, e2 E – Thì e1 e2 khơng thể có giá trị giống thuộc tính K Chú ý – Mỗi tập thực thể phải có khóa – Một khóa có hay nhiều thuộc tính – Có thể có nhiều khóa tập thực thể, ta chọn khóa làm khóa cho tập thực thể – Thuộc tính khóa có thực HOẶC chưa tồn bangtqh@utc2.edu.vn 29 Chương 1b - Database - Mơ hình ER Ví dụ thuộc tính khóa MANV NGSINH LUONG DCHI MAPHG TENPB HONV TENNV NHANVIEN Lam_viec PHONGBAN GT La_truong_phong Phu_trach DDIEM_DA Phan_cong DUAN TENDA MADA bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 30 Tập thực thể yếu Là thực thể mà có khóa từ thuộc tính tập thực thể khác Thực thể yếu (weak entity set) phải tham gia vào mối quan hệ mà có tập thực thể (kiểu thực thể chủ) Mơ tả kiểu thực thể yếu hình chữ nhật nét đơi NHANVIEN bangtqh@utc2.edu.vn có n CON 31 Chương 1b - Database - Mơ hình ER Tập thực thể yếu (tt) Ví dụ MANV NS LUONG DCHI HONV TENNV GT NHANVIEN (1,n) Co_than_nhan (1,1) QUANHE NS GT THANNHAN bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER TENTN 32 Tập thực thể yếu (tt) Ví dụ MAHD NGAYHD TONGTIEN HOA_DON (1,n) HD_CT (1,1) CHI_TIET SL_HH SOTIEN (1,1) HH_CT (1,n) HANG_HOA TENHH DGIA MAHH bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 33 Các bước thiết kế (1) Xác định tập thực thể (2) Xác định mối quan hệ (3) Xác định thuộc tính gắn thuộc tính cho tập thực thể mối quan hệ (4) Quyết định miền giá trị cho thuộc tính (5) Quyết định thuộc tính khóa (6) Quyết định (min, max) cho mối quan hệ bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 34 Qui tắc thiết kế Chính xác Tránh trùng lặp Dễ hiểu Chọn mối quan hệ Chọn kiểu thuộc tính bangtqh@utc2.edu.vn 35 Chương 1b - Database - Mơ hình ER Các ký hiệu chuẩn lược đồ ER Tập thực thể Tên thuộc tính Tên quan hệ Tập thực thể yếu Tên thuộc tính dẫn xuất Tên thuộc tính Khóa Tên thuộc tính đa trị Tên thuộc tính kết hợp Tên thuộc tính bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER Tên thuộc tính Tên thuộc tính 36 Ví dụ ‘Quản lý đề án cơng ty’ CSDL đề án công ty theo dõi thông tin liên quan đến nhân viên, phòng ban đề án – Cty có nhiều đơn vị, đơn vị có tên nhất, mã đơn vị nhất, trưởng phòng ngày nhận chức Mỗi đơn vị nhiều địa điểm khác – Dự án có tên nhất, mã nhất, phòng ban chủ trì triển khai địa điểm – Nhân viên có mã số, tên, địa chỉ, ngày sinh, giới tính lương Mỗi nhân viên làm việc phòng ban, tham gia vào đề án với số làm việc khác Mỗi nhân viên có người quản lý trực tiếp – Một nhân viên có người hưởng bảo hiểm theo nhân viên Mỗi người nhân viên có tên, giới tính, ngày sinh bangtqh@utc2.edu.vn 37 Chương 1b - Database - Mơ hình ER Ví dụ (tt) Họđệm Tên Ngàysinh Giớitính Lương Ngày bắt đầu Địachỉ Họtên Tên Mãsố Địađiểm Quảnlý Mã số ĐƠNVỊ NHÂNVIÊN Làmviệccho Giám sát Có Kiểm sốt Sốgiờ Làmviệc DỰÁN CON Tên Tên bangtqh@utc2.edu.vn Ngàysinh Mãsố Địađiểm Giớitính Chương 1b - Database - Mơ hình ER 38 Ví dụ (tt) Họđệm Tên Ngàysinh Giớitính Ngày bắt đầu Địachỉ Lương Họtên Tên Mãsố Địađiểm Quảnlý (0,1) Mã số ĐƠNVỊ NHÂNVIÊN (0,N) (1,N) (0,1) (0,N) (1,1) (1,N) Làmviệccho (0,N) Giám sát Có Kiểm sốt Sốgiờ DỰÁN CON Tên Tên bangtqh@utc2.edu.vn bangtqh@utc2.edu.vn Ngàysinh (1,1) (1,N) Làmviệc (1,1) Mãsố Địađiểm Giớitính Chương 1b - Database - Mơ hình ER 39 Bài làm nhà Cơng cụ: – Online: • http://cacoo.com • http://mockflow.com • http://concept.ly – Offline: • Rational Rose • Microsoft Office – Thủ cơng • Bút + thước + máy chụp hình Đặt tên file làm: – BTxx-MaSV.JPG/PNG/GIF/BMP/DOC/PDF – Trong nội dung file góc bên trái ghi rõ Họ tên Mã SV bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 41 Bài tập (tt) Hãy vẽ sơ sơ đồ ER cho ứng dụng CSDL sau: – – – – Một Cơng ty BĐS có số văn phịng nhiều địa điểm Mỗi văn phịng có mã số văn phịng địa điểm Mỗi văn phịng có số nhân viên Mỗi nhân viên có mã số nhân viên tên Với văn phịng có nhân viên làm trưởng văn phịng Một nhân viên có hay nhiều thân nhân (vợ/con) Thông tin nhân thân gồm tên, ngày sinh mối liên hệ với nhân viên Cơng ty có danh sách BĐS cần bán Thơng tin BĐS làm mã số BĐS địa Mỗi BĐS rao bán văn phịng Mỗi văn phịng có nhiều BĐS rao bán khơng có BĐS rao bán Mỗi BĐS có chủ nhân Chủ nhân xác định mã số chủ nhân Một chủ nhân có nhiều BĐS Thơng tin chủ nhân cịn có tên, địa số điện thoại bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 42 Bài tập Hãy vẽ sơ sơ đồ ER cho ứng dụng CSDL sau: – – Một mùa hịa nhạc có tổ chức nhiều buổi hòa nhạc Một buổi hòa nhạc thường rơi vào mùa hịa nhạc Thuộc tính xác định mùa hòa nhạc ngày khai mạc – gồm thành phần ngày, tháng, năm Một buổi hòa nhạc thường biểu diễn hay nhiều nhạc hịa tấu Một nhạc hịa tấu trình diễn hay nhiều buổi hịa nhạc, khơng trình diễn buổi hịa nhạc Thuộc tính buổi hòa nhạc gồm mã số buổi hòa nhạc,ngày diễn buổi hịa nhạc Do buổi hịa nhạc lặp lại nhiêu lần nên buổi hòa nhạc có nhiều ngày diễn buổi hịa nhạc bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 43 Bài tập (tt) Hãy vẽ sơ sơ đồ ER (tiếp theo) – – – Mỗi buổi hịa nhạc trình diễn nhiều nhạc hịa tấu Mỗi nhạc hịa tấu có thơng tin: tên nhạc, tên giả Mỗi nhạc hòa tấu gồm nhiều chương khúc Thuộc tính chương khúc gồm mã số chương khúc tên chương khúc Mỗi buổi hịa nhạc cần có nhạc trưởng Một nhạc trưởng điều khiển cho nhiều buổi hịa nhạc khơng điều khiển buổi hịa nhạc Thuộc tính nhạc trưởng gồm mã số nhạc trưởng ten nhạc trưởng Một nhạc hịa tấu cần hay nhiều nhạc cơng độc tấu chẳng cần nhạc công độc tấu Thuộc tính nhạc cơng độc tấu gồm: mã số nhạc công tên nhạc công Một nhạc công độc tấu chơi cho nhiều nhạc buổi hịa tấu, khơng chơi nhạc CSDL ghi lại ngày cuối mà nhạc cơng độc tấu trình diễn nhạc bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 44 Bài tập (tt) Vẽ sơ đồ ER cho ứng dụng CSDL nghiệp vụ – – Quản lý đồ ăn/uống quán Coffee PHỐ XANH – Đường 449 Lê Văn Việt Quận Tp Hồ chí minh Lưu ý: • Phải có giải thích cụ thể cho ký hiệu sơ đồ (VD: loại TU = Loại thức uống….v.v) bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 45 Chương 1b - Database - Mơ hình ER 46 Deadline Bài Bài Bài bangtqh@utc2.edu.vn ... (1, 1) (0 ,1) (0 ,1) bangtqh@utc2.edu.vn Chương 1b - Database - Mô hình ER 26 Bài tập ví dụ: Xác định mối quan hệ ràng buộc số cho tập thực thể sau: Thuộc (1, 1) (2 , n) SINH VIÊN LỚP C.NGÀNH (1, ... CON 31 Chương 1b - Database - Mơ hình ER Tập thực thể yếu (tt) Ví dụ MANV NS LUONG DCHI HONV TENNV GT NHANVIEN (1, n) Co_than_nhan (1, 1) QUANHE NS GT THANNHAN bangtqh@utc2.edu.vn Chương 1b - Database... hanh) (Vinh, Quan ly) Chương 1b - Database - Mơ hình ER 21 Ràng buộc kiểu liên kết (tt) bangtqh@utc2.edu.vn Chương 1b - Database - Mơ hình ER 22 Ràng buộc kiểu liên kết(tt) Xét mối quan hệ nhị

Ngày đăng: 11/05/2021, 03:30

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan