Giáo trình Cơ sở dữ liệu (Ngành Tin học ứng dụng, Công nghệ thông tin)

72 10 0
Giáo trình Cơ sở dữ liệu (Ngành Tin học ứng dụng, Công nghệ thông tin)

Đ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

ỦY BAN NHÂN DÂN THÀNH PHỐ HỒ CHÍ MINH TRƢỜNG CAO ĐẲNG KINH TẾ KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH  GIÁO TRÌNH MƠN HỌC: CƠ SỞ DỮ LIỆU NGÀNH: TIN HỌC ỨNG DỤNG, CƠNG NGHỆ THƠNG TIN TRÌNH ĐỘ: TRUNG CẤP, CAO ĐẲNG Thành phố Hồ Chí Minh, năm 2020 ỦY BAN NHÂN DÂN THÀNH PHỐ HỒ CHÍ MINH TRƢỜNG CAO ĐẲNG KINH TẾ KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH  GIÁO TRÌNH MƠN HỌC: CƠ SỞ DỮ LIỆU NGÀNH: TIN HỌC ỨNG DỤNG, CÔNG NGHỆ THÔNG TIN TRÌNH ĐỘ: TRUNG CẤP, CAO ĐẲNG THƠNG TIN CHỦ NHIỆM ĐỀ TÀI Họ tên: Vũ Thị Phƣơng Dung Học vị: Thạc sĩ Đơn vị: Khoa CNTT Email: vuthiphuongdung@hotec.edu.vn TRƢỞNG KHOA TỔ TRƢỞNG CHỦ NHIỆM BỘ MÔN ĐỀ TÀI HIỆU TRƢỞNG DUYỆT Thành phố Hồ Chí Minh, năm 2020 TUYÊN BỐ BẢN QUYỀN Tài liệu thuộc loại sách giáo trình nên nguồn thơng tin đƣợc phép dùng nguyên trích dùng cho mục đích đào tạo tham khảo Mọi mục đích khác mang tính lệch lạc sử dụng với mục đích kinh doanh thiếu lành mạnh bị nghiêm cấm LỜI GIỚI THIỆU Giáo trình sở liệu đƣợc biên soạn theo chƣơng trình đào tạo chuyên ngành Tin học ứng dụng bậc trung cấp ngành Công nghệ thông tin ( Ứng dụng phần mềm) bậc cao đẳng Giáo trình trình bày vấn đề cốt lõi môn sở liệu, gồm bốn chƣơng Các học đƣợc trình bày ngắn gọn với ví dụ minh hoạ Cuối chƣơng có tập để học sinh sinh viên luyện tập Trong trình giảng dạy biên soạn giáo trình này, tác giả nhận đƣợc động viên thầy cô Ban Giám Hiệu nhà trƣờng nhƣ ý kiến góp ý đồng nghiệp khoa Công nghệ thông tin Tôi xin chân thành cảm ơn hy vọng giáo trình giúp cho việc dạy học môn sở liệu nhà trƣờng ngày tốt TP.HCM, ngày 25 tháng năm 2020 Tham gia biên soạn Vũ Thị Phƣơng Dung MỤC LỤC CHƢƠNG 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU (CSDL) 1 Khái niệm Mô hình thực thể - kết hợp ERD 3.Mô hình liệu quan hệ E.F.Codd 4.Các bƣớc chuyển từ mơ hình thực thể kết hợp sang mơ hình quan hệ 13 BÀI TẬP CHƢƠNG 14 CHƢƠNG 2: RÀNG BUỘC TOÀN VẸN ( RBTV) MỘT CSDL 19 1.Giới thiệu 19 Các đặc trƣng ràng buộc toàn vẹn 19 Phân loại ràng buộc toàn vẹn 21 Bảng tầm ảnh hƣởng tổng hợp 25 BÀI TẬP CHƢƠNG 26 CHƢƠNG 3: NGÔN NGỮ ĐẠI SỐ QUAN HỆ 30 1.Các phép toán tập hợp phép toán quan hệ 30 Các phép toán tập hợp quan hệ 30 Các thao tác sở quan hệ 39 BÀI TẬP CHƢƠNG 40 CHƢƠNG 4: NGÔN NGỮ TRUY VẤN CSDL SQL 43 1.Ngôn ngữ định nghĩa liệu 43 Ngôn ngữ thao tác liệu (Data Manipulation Language DML) 50 Ngơn ngữ truy vấn liệu có cấu trúc (Structured Query Language – SQL) 52 BÀI TẬP CHƢƠNG 59 GIÁO TRÌNH MƠN HỌC Tên môn học: Cơ sở liệu Mã môn học: MH 2101071, MH3101301 Vị trí, tính chất, ý nghĩa vai trị mơn học/mơ đun: - Vị trí: Là mơn học đƣợc bố trí học kỳ 3- sở, học kỳ - phổ thông Là môn học sở học kỳ – cao đẳng - Tính chất: mơn học lý thuyết thuộc nhóm mơn học bắt buộc - Ý nghĩa vai trị môn học: cung cấp cho ngƣời học kiến thức khái niệm sở liệu, phân biệt mơ hình thực thể mơ hình quan hệ, ràng buộc toàn vẹn, đại số quan hệ, định nghĩa sửa đổi định nghĩa bảng câu lệnh SQL, thực việc ràng buộc khóa chính, khóa ngọai CSDL, cập nhật sửa đổi liệu câu lệnh SQL Sử dụng đƣợc câu lệnh SQL để truy vấn rút trích, lọc, thống kê liệu Mục tiêu môn học: - Về kiến thức: + Trình bày đƣợc khái niệm thành phần sở liệu + Phân biệt hệ quản trị CSDL Mô tả vẽ đƣợc thành phần mơ hình ERD, mơ hình liệu quan hệ + Liệt kê đƣợc từ khóa sử dụng câu lệnh truy vấn (SQL) ý nghĩa sử dụng chúng + Trình bày đƣợc cú pháp, chức câu lệnh SQL - Về kỹ năng: + Vẽ đƣợc mơ hình thực thể kết hợp từ tình thực tế đƣợc mô tả chi tiết Xây dựng đƣợc mơ hình liệu quan hệ từ mơ hình thực thể vẽ + Thiết lập đƣợc sở câu lệnh SQL Viết đƣợc câu lệnh SQL để thêm, sửa, xóa, truy vấn khai thác liệu - Về lực tự chủ trách nhiệm: + Nhận thức đƣợc lợi ích mơ hình thực thể kết hợp hoạt động phân tích thiết kể Nhận thức đƣợc tính phổ biến, thực dụng mơ hình liệu quan hệ phần mềm có kết nối sử đụng sở liệu + Nhận thức đƣợc tầm quan trọng việc phân công hợp lý, theo dõi, kiêm tra, đánh giá hoạt động nhóm Chƣơng 1: Tổng quan CSDL CHƢƠNG 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU (CSDL) Giới thiệu: Chƣơng trình bày khái niệm Cơ sở liệu, hệ quản trị CSDL, ngƣời dùng; giới thiệu đặc tính, q trình phát triển Cơ sở liệu; khái niệm mơ hình, lƣợc đồ thể Cơ sở liệu Trình bày q trình thiết kế CSDL; khái niệm mơ hình thực thể kết hợp, thực thể, thuộc tính, loại thực thể, khóa, mối kết hợp, cách thiết kế mơ hình thực thể kết hợp Giới thiệu khái niệm mơ hình liệu quan hệ, đặc trƣng quan hệ, cách chuyển mơ hình thực thể kết hợp sang mơ hình quan hệ Bài tập Mục tiêu: Phát biểu đƣợc khái niệm trình bày đƣợc đặc trính CSDL Phân biệt thành phần CSDL, mô hình, trình bày đƣợc hệ thống ký hiệu mơ hình thực thể kết hợp Chuyển đƣợc mơ hình thực thể kết hợp sang mơ hình quan hệ Thiết kế đƣợc mơ hình thực thể kết hợp từ tài liệu mơ tả tình đơn giản Nội dung chính: Khái niệm 1.1 Dữ liệu Là thông tin đối tƣợng (ngƣời, vật, khái niệm, việc…) đƣợc lƣu trữ máy tính Dữ liệu đƣợc mơ tả dƣới nhiều dạng khác (các ký tự, ký số, hình ảnh, ký hiệu, âm thanh…) Mỗi cách mơ tả gắn với ngữ nghĩa Dữ liệu đối tƣợng khác nhau, tùy thuộc vào ngữ cảnh Ví dụ: liệu đối tƣợng sinh viên khác tùy vào mục đích quản lý: quản lý điểm: Tên, mã sinh viên, điểm môn 1, điểm mơn 2, điểm mơn Trong quản lý nhân thân: Tên, địa chỉ, ngày sinh, quê quán, lớp 1.2 Cơ sở liệu ( Database) Cơ sở liệu (CSDL) tập hợp liệu đƣợc tổ chức có cấu trúc liên quan với đƣợc lƣu trữ máy tính CSDL đƣợc thiết kế, xây dựng cho phép ngƣời dùng lƣu trữ liệu, truy xuất thông tin cập nhật liệu CSDL đƣợc tổ chức có cấu trúc: Các liệu đƣợc lƣu trữ có cấu trúc thành ghi (record), trƣờng liệu (field) Các liệu lƣu trữ có mối quan hệ (relation) với CSDL đƣợc cấu trúc để dễ dàng truy cập, quản lý cập nhật KHOA CÔNG NGHỆ THÔNG TIN Trang Chƣơng 1: Tổng quan CSDL 1.2.1 Ƣu điểm sở liệu Giảm trùng lắp thông tin xuống mức thấp bảo đảm đƣợc tính quán toàn vẹn liệu Đảm bảo liệu truy xuất theo nhiều cách khác Khả chia sẻ thông tin cho nhiều ngƣời sử dụng 1.2.2 Những vấn đề mà CSDL cần phải giải -Tính chủ quyền liệu Tính chủ quyền liệu đƣợc thể phƣơng diện an toàn liệu, khả biểu diễn mối liên hệ ngữ nghĩa liệu tính xác liệu Điều có nghĩa ngƣời khai thác CSDL phải có nhiệm vụ cập nhật thơng tin CSDL -Tính bảo mật quyền khai thác thơng tin người sử dụng Do có nhiều ngƣời đƣợc phép khai thác liệu cách đồng thời, nên cần thiết phải có chế bảo mật phân quyền hạn khai thác CSDL Các hệ điều hành nhiều ngƣời sử dụng hay hệ điều hành mạng cục có cung cấp chế -Tranh chấp liệu Nhiều ngƣời đƣợc phép truy nhập lúc vào tài nguyên liệu CSDL với mục đích khác nhau, cần thiết phải có chế ƣu tiên truy nhập liệu Cơ chế ƣu tiên đƣợc thực việc cấp quyền ƣu tiên cho ngƣời khai thác -Đảm bảo an tồn liệu có cố Việc quản lý liệu tập trung làm tăng khả mát sai lệch thơng tin có cố nhƣ điện đột xuất, hay phần đĩa lƣu trữ CSDL bị hƣ,… số hệ điều hành mạng có cung cấp dịch vụ lƣu ảnh đĩa cứng, tự động kiểm tra khắc phục lỗi có cố Tuy nhiên, bên cạnh dịch vụ hệ điều hành, để đảm bảo CSDL ổn định, CSDL thiết phải có chế khơi phục liệu có cố bất ngờ xảy 1.3 Hệ quản trị sở liệu (Database Management System - DBMS) Để giải tốt vấn đề mà cách tổ chức CSDL đặt nhƣ nói trên, cần thiết phải có phần mềm chuyên dùng để khai thác chúng Những phần mềm đƣợc gọi hệ quản trị CSDL Các hệ quản trị CSDL có nhiệm vụ hỗ trợ cho nhà phân tích thiết kế CSDL nhƣ ngƣời khai thác CSDL Hiện thị trƣờng phần mềm có hệ quản trị CSDL hỗ trợ đƣợc nhiều tiện ích nhƣ: MS Access, MySQL, Oracle, PostgreSQL, SQL Server, DB2, Infomix KHOA CÔNG NGHỆ THÔNG TIN Trang Chƣơng 1: Tổng quan CSDL Ví dụ: SQL Server, Microsoft Access, Oracle hệ quản trị CSDL điển hình cho mơ hình quan hệ IMS IBM hệ quản trị CSDL cho mơ hình phân cấp IDMS hệ quản trị CSDL cho mơ hình mạng 1.3.1 Những lợi ích DBMS mang lại Quản trị CSDL cung cấp giao diện truy cập để che dấu đặc tính phức tạp mặt cấu trúc tổ chức liệu vật lý Hỗ trợ ngơn ngữ giao tiếp Ví dụ: Ngôn ngữ mô tả, định nghĩa liệu – DDL Ngôn ngữ thao tác liệu – DML Ngôn ngữ truy vấn liệu có cấu trúc – SQL Có chế an toàn, bảo mật cao 1.3.2 Một DBMS phải có: Ngơn ngữ giao tiếp ngƣời sử dụng (NSD) CSDL Ngôn ngữ mô tả:(Data definition language-DDL) phép khai báo cấu trúc CSDL, khai báo mối liên hệ liệu (Data RelationShip) quy tắc (Rules, Constraint) quản lý áp đặt lên liệu Ngơn ngữ thao tác liệu (Data Manipulation Language - DML) cho phép ngƣời sử dụng thêm (Insert), xóa (Delete), sửa (Update) liệu CSDL Ngôn ngữ truy vấn liệu, hay ngôn ngữ hỏi đáp có cấu trúc (Structured Query Language - SQL) cho phép ngƣời khai thác CSDL (chuyên nghiệp không chuyên) sử dụng để truy vấn thông tin cần thiết CSDL Ngôn ngữ quản lý liệu (Data Control Language - DCL) cho phép ngƣời quản trị hệ thống thay đổi cấu trúc bảng liệu, khai báo bảo mật thông tin cấp quyền hạn khai thác CSDL cho ngƣời sử dụng Từ điển liệu (Data Dictionary) Có biện pháp bảo mật tốt có yêu cầu bảo mật Cơ chế giải vấn đề tranh chấp liệu Hệ quản trị CSDL phải có chế lƣu (Backup) phục hồi (Restore) liệu có cố xảy Hệ quản trị CSDL phải cung cấp giao diện (Interface) tốt, dễ sử dụng, dễ hiểu cho ngƣời sử dụng khơng chun Bảo đảm tính độc lập liệu chƣơng trình 1.4 Ngƣời dùng ( User) Ngƣời dùng khai thác CSDL thông qua HQTCSDL phân thành ba loại: ngƣời quản trị CSDL, ngƣời phát ứng dụng lập trình, ngƣời dùng cuối KHOA CÔNG NGHỆ THÔNG TIN Trang Chƣơng 1: Tổng quan CSDL 1.4.1 Ngƣời quản trị CSDL Chịu trách nhiệm quản lý bảo trì CSDL, ngƣời cần có kiến thức chuyên sâu hệ quản trị sở liệu, biết ngôn ngữ cấu trúc truy vấn (T-SQL) mức rành rỏi Công việc đối tƣợng tổ chức hệ thống CSDL, bảo mật, phân quyền hay cấp quyền cho đối tƣợng khác, backup phục hồi liệu bảo đảm an toàn liệu Nếu bạn muốn trở thành đối tƣợng bạn phải nghiên cứu sâu mơ hình CSDL, hệ quản trị CSDL cần có kinh nghiệm thực tế cao 1.4.2 Ngƣời phát ứng dụng lập trình Là ngƣời xây dựng cơng cụ, ứng dụng nhằm giúp ngƣời dùng cuối sử dụng khai thác sở liệu, đối tƣợng ta gọi Application User Nếu bạn muốn sau bạn coder chuyên xây dựng ứng dụng website bạn chun viên tin học 1.4.3 Ngƣời dùng cuối Thƣờng ngƣời sử dụng hệ thống CSDL, đối tƣợng khơng có kiến thức quản trị hệ thống, nghĩa không chuyên lĩnh vực nên họ cần công cụ giúp quản trị, khai thác liệu cần Thông thƣờng làm dự án khách hàng đối tƣợng ngƣời dùng cuối 1.5 Quá trình phát triển Cơ sở sữ liệu Lịch sử sở liệu đƣợc xem nhƣ bắt đầu vào năm 60 kỷ trƣớc, máy tính bắt đầu đƣợc sử dụng tƣơng đối rộng rãi CSDL có quy mơ lớn đƣợc công ty IBM thực cho Cục Quản trị Hàng không Không gian Quốc gia (National Aeronautics and Space Administration hay NASA) Mỹ để hỗ trợ cho việc quản lý dự án Apollo dùng để thám hiểm mặt trăng Sau hệ sở liệu đƣợc thƣơng mại hóa với tên IMS (Information Management System) Hệ sử dụng mơ hình liệu phân cấp (hierarchical) Cũng thời gian đó, Charles Bachman phát triển Integrated Data Store (IDS) sử dụng mơ hình dạng mạng (Network) Mơ hình sau đƣợc tiêu chuẩn hóa CODASYL (Conference of Data System Language) Năm 1970, Edgar Codd, nhà khoa học làm việc cho IBM, đề xuất số khái niệm hệ sở liệu quan hệ (relational) đánh dấu bƣớc chuyển biến quan trọng lĩnh vực Tuy nhiên dƣờng nhƣ IBM không mặn mà với ý tƣởng Codd, họ tạo dự án nhỏ, System R, để nghiên cứu đề xuất Codd Tuy họ tạo đƣợc ngôn ngữ SEQUEL (viết tắt Structured English Query Language), tiền thân SQL mà thƣờng sử dụng KHOA CÔNG NGHỆ THÔNG TIN Trang Chƣơng 4: Ngôn ngữ truy vấn SQL DELETE * FROM WHERE SANPHAM (Gia ,=,

Ngày đăng: 26/12/2021, 17:27

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

Tài liệu liên quan