1. Trang chủ
  2. » Giáo Dục - Đào Tạo

giao trinh csdl chuan mai lam 586

20 2 0

Đ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

Nội dung

Mục Lục Mục Lục GIÁO TRÌNH: CƠ SỞ DỮ LIỆU LỜI GIỚI THIỆU Chương 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU 1.1 Tổng quan Cơ sở liệu 1.2 Dữ liệu thông tin 1.3 Phương pháp sở liệu 1.3.1 Cơ sở liệu gì? 1.3.2 Hệ quản trị cở sở liệu 1.3.2.1 Định nghĩa hệ quản trị sở liệu 1.3.2.2 Các chức hệ quản trị sở liệu 1.3.2.3 Ưu điểm phương pháp CSDL 10 1.3.2.4 Phân loại sở liệu 11 1.4 Phân loại người dùng Cơ sở liệu 12 1.4.1 Người quản trị hệ sở liệu (Database Administrator – DBA) 13 1.4.2 Người thiết kế sở liệu (Database Designer) 13 1.4.3 Những người sử dụng (End User) 13 1.4.4 Người phân tích hệ thống lập trình ứng dụng 13 1.4.5 Người thiết kế cài đặt hệ quản trị liệu 13 1.4.6 Những người phát triển công cụ 14 1.4.7 Các thao tác viên người bảo trì 14 1.5 Câu hỏi ôn tập 14 Chương2: CÁC MƠ HÌNH DỮ LIỆU 15 2.1 Sơ đồ thực thể liên kết 15 2.1.1 Thực thể 15 2.1.2 Sơ đồ thực thể liên kết 16 2.1.2.1 Kiểu thực thể, tập thực thể, khóa tập giá trị 16 2.1.2.2 Kiểu liên kết, tập liên kết thể 17 2.1.2.3 Cấp liên kết, tên vai trò kiểu liên kết đệ quy 18 2.1.3 Quan hệ 19 2.1.3.1 Các ràng buộc kiểu liên kết 19 2.1.3.2 Các kiểu thực thể yếu 20 2.2 Các mơ hình liệu 21 2.2.1 Mơ hình thực thể quan hệ 21 2.2.1.1 Lớp cha, lớp thừa kế 21 2.2.1.3 Sơ đồ mơ hình EER 24 2.3 Câu hỏi ôn tập 25 Chương 3: MƠ HÌNH CƠ SỞ DỮ LIỆU QUAN HỆ 26 3.1 Các khái niệm 26 3.1.1 Miền 26 3.1.2 Quan hệ 27 3.2 Cơ sở liệu quan hệ 27 3.3 Câu hỏi ôn tập 30 Chương 4: NGÔN NGỮ THAO TÁC DỮ LIỆU 31 4.1 Đại số quan hệ 31 4.1.1 Phép tính tập hợp thơng thường 31 4.1.1.1 Phép nối (JOIN) 33 4.1.2 Các phép tính đặc biệt 36 1.2.1 Phép chọn (SELECT) 36 4.1.2.2 Phép chiếu (PROJECT) 37 4.1.2.3 Phép đặt lại tên (RENAME) 38 4.2 Các ngôn ngữ cập nhật liệu 39 4.2.1 Phép sửa đổi 39 4.2.2 Phép loại bỏ 40 4.2.3 Phép thêm 40 4.3 Câu hỏi ôn tập 41 Chương 5: NGÔN NGỮ TRUY VẤN DỮ LIỆU SQL 43 5.1 Tổng quan, qui ước biểu diễn câu lệnh SQL 43 5.1.1 Tổng quan 43 5.1.1.1 Lịch sử phát triển 43 5.1.2 Các qui ước biểu diễn câu lệnh SQL 43 5.1.3 Hiệu chỉnh cấu trúc liệu 43 5.1.4 Xoá bảng 44 5.1.4.1 Tạo sở liệu 44 5.1.4.2 Xóa sở liệu 44 5.1.4.3 Tạo bảng liệu 44 5.1.5 Xóa bỏ bảng liệu 45 5.1.6 Sửa đổi cấu trúc bảng liệu 45 5.2 Ngôn ngữ cập nhật liệu 45 5.2.1 Thêm ghi 45 5.2.2 Cập nhật ghi 45 5.2.3 Xoá ghi 45 5.3 Ngôn ngữ truy vấn liệu 45 5.3.1 Truy vấn đơn giản 46 5.3.2 Truy vấn có điều kiện 46 5.3.2.1 Lọc ghi trở với mệnh đề WHERE 46 5.3.2.2 Truy vấn gộp nhóm với mệnh đề GROUP BY VÀ HAVING 46 5.3.2.3 Sắp xếp ghi kết với mệnh đề ORDER BY 47 5.3.2.4 Truy vấn liệu từ nhiều hàng 47 5.4 CÂU HỎI ÔN TẬP 48 Chương 6: LÝ THUYẾT THIẾT KẾ CƠ SƠ DỮ LIỆU 49 6.1 Phụ thuộc hàm 49 6.1.1 Định nghĩa 49 1.2 Hệ tiên đề cho phụ thuộc hàm 51 6.1.3 Khái niệm bao đóng 53 6.1.4 Tính tốn bao đóng 53 6.1.5 Tính tương đương bao đóng tập phụ thuộc hàm 54 6.1.5.1 Định nghĩa 54 6.1.5.2 Cách chứng minh tập phụ thuộc hàm F G tương đương 54 6.1.6 Phủ tối thiểu 54 6.1.6.1 Khái niệm 54 6.1.6.2 Thuật tốn tìm phủ tối thiểu tập phụ thuộc hàm F 54 6.2 Phép tách lược đồ quan hệ 55 6.3 Chuẩn hóa lược đồ quan hệ 55 6.3.1 Chuẩn hóa 1NF 55 6.3.2 Chuẩn hóa 2NF 56 6.3.3 Chuẩn hóa 3NF 56 6.3.3.1 Định nghĩa cổ điển 56 6.3.3.2 Định nghĩa tổng quát 57 6.4 Chuẩn hóa BCNF 57 6.5 CÂU HỎI ÔN TẬP 58 Chương 7: GIẢI BÀI TẬP 60 GIÁO TRÌNH: CƠ SỞ DỮ LIỆU Tên mơ đun: Cơ sở liệu Mã số mơ đun: MH09 I Vị trí, tính chất mơn học: - Vị trí: Mơn học bố trí sau sinh viên học xong môn học chung, trước môn học/mô-đun đào tạo chuyên mơn nghề - Tính chất: Là mơn học chun mơn nghề bắt buộc, tảng để HSSV thiết kế sở liệu xây dựng ứng dụng học môn học mô đun liên quan II Mục tiêu mơn học: - Về kiến thức: + Trình bày công dụng sở liệu + Phân tích trình bày khái niệm sở liệu như: khóa, lược đồ quan hệ, phụ thuộc hàm, + Ghi nhớ ngôn ngữ thao tác liệu, ngôn ngữ truy vấn liệu SQL - Về kỹ năng: + Xây dựng mơ hình quan hệ + Thiết kế sở liệu + Phân tích chương trình: xác định nhiệm vụ chương trình (phải làm gì) + Chuyển câu hỏi sau tối ưu hoá sơ đồ sang ngơn ngữ SQL + Viết chương trình thực chương trình máy tính có ứng dụng csdl - Về lực tự chủ trách nhiệm: - Có lực chun mơn thích nghi với môi trường làm việc khác - Tự học tập, tích lũy kiến thức, kinh nghiệm để nâng cao trình độ chun mơn nghiệp vụ LỜI GIỚI THIỆU Cơ sở liệu môn học bắt buộc sinh viên chuyên ngành công nghệ thông tin điện tử viễn thông Những năm gần kỳ thi chuyển đổi, liên thông, thi tuyển cao học nghiên cứu sinh có mảng kiến thức sở liệu Điều khẳng định yếu tố quan trọng Cơ sở liệu kỹ sư, thạc sĩ công nghệ thông tin điện tử viễn thơng tương lai Để hồn thành sách, tác giả có q trình ấp ủ chuẩn bị tư liệu cần thiết từ nhiều năm Một mặt, q trình sưu tầm, nghiên cứu, tham khảo tài liệu nước nước có liên quan Mặt khác, q trình học hỏi từ thực tế, từ kinh nghiệm giảng dạy nhiều năm nghề Cuối cùng, kiến thức kinh nghiệm học hỏi thể qua giáo trình chương trình đào tạo cho sinh viên chuyên ngành công nghệ thông tin, tin học ứng dụng Cuốn giáo trình liên tục bổ sung, gọt giũa, điều chỉnh trở thành chất liệu có giá trị, đảm bảo điều kiện chín muồi cho sách đời Về bố cục, sách gồm chương, trình bày kỹ thuật sở sở liệu truyền thống, mơ hình liên kết thực thể, mơ hình sở liệu quan hệ Bài giảng trình bày cách thiết kế sở liệu quan hệ, cách sử dụng phép toán đại số quan hệ để tạo, cập nhật truy vấn sở liệu khái niệm phụ thuộc hàm ứng dụng lí thuyết thiết kế chuẩn hóa sở liệu quan hệ Kèm theo tập củng cố cho chương Đặc biệt chương gợi ý hướng dẫn có lời giải cho số tập chương Sau nhiều năm nghiên cứu giảng dạy, tác giả nhận thấy nhiều giáo trình, nhiều sách sở liệu trọng vào lý thuyết mà quên tập củng cố cho lý thuyết mà học, có tập đưa mà khơng có lời giải, học sinh, sinh viên muốn tự nghiên cứu học tập khó Giáo trình cần thiết cho tất đối tượng muốn tìm hiểu thiết kế sở liệu quan hệ ứng dụng công tác quản lý Hy vọng sách không tài liệu học tập hữu ích với bạn học sinh, sinh viên mà cần thiết với bạn đọc u cơng nghệ thơng tin nói chung sở liệu nói riêng Như nêu, trình chuẩn bị biên soạn sách tiến hành thận trọng, nội dung sách trải nghiệm thực tế trước cơng bố thức, song lần biên soạn nên sách khó tránh khỏi thiếu sót Rất mong bạn đọc đón nhận tác phẩm sẵn lịng đóng góp ý kiến để sách hoàn thiện lần xuất sau Xin chân thành cảm ơn! Người biên soạn: Trần Thị Thúy Mai Chương 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU Đây chương mở đầu, chương tập trung trình bày vấn đề khái quát sở liệu Nội dung chương giúp cho người đọc: - Nắm khái niệm sở liệu - Hiểu kiến trúc hệ sở liệu - Phân tích đặc điểm chung liệu, thơng tin tính độc lập liệu - Phân loại người dùng CSDL 1.1 Tổng quan Cơ sở liệu Các sở liệu hệ sở liệu trở thành thành phần chủ yếu sống hàng ngày xã hội đại Trong vòng ngày người có nhiều hoạt động cần có giao tiếp với sở liệu như: đến ngân hàng để rút tiền gửi tiền, đăng ký chỗ máy bay khách sạn, truy cập vào thư viện tin học hố để tìm sách báo, đặt mua tạp chí nhà xuất bản… Tại ngân hàng, cửa hàng, người ta cập nhật tự động việc quản lý tiền bạc, hàng hoá Tất giao tiếp gọi ứng dụng sở liệu truyền thống Trong sở liệu truyền thống, hầu hết thông tin lưu giữ truy cập văn số Những năm gần đây, tiến kỹ thuật đưa đến ứng dụng sở liệu Các sở liệu đa phương tiện lưu trữ hình ảnh, phim tiếng nói Các hệ thống thơng tin địa lý lưu trữ phân tích đồ, liệu thời tiết ảnh vệ tinh Kho liệu hệ thống phân tích trực tuyến sử dụng nhiều cơng ty để lấy phân tích thơng tin có lợi từ sở liệu lớn nhằm đưa định Các kỹ thuật sở liệu động thời gian thực sử dụng việc kiểm tra tiến trình cơng nghiệp sản xuất Các kỹ thuật tìm kiếm sở liệu áp dụng cho World Wide Web để cung cấp việc tìm kiếm thơng tin cần thiết cho người sử dụng cách duyệt qua Internet Để hiểu sở kỹ thuật sở liệu phải sở kỹ thuật sở liệu truyền thống Mục đích b i g i ả n g nghiên cứu sở kỹ thuật 1.2 Dữ liệu thơng tin Dữ liệu thơng tin có tính chất sau: - Một sở liệu biểu thị khía cạnh giới thực hoạt động công ty, nhà trường, ngân hàng… Những thay đổi giới thực phải phản ánh cách trung thực vào sở liệu Những thông tin đưa vào sở liệu tạo thành không gian sở liệu “thế giới nhỏ” (miniworld) - Một sở liệu tập hợp liệu liên kết với cách logic mang ý nghĩa cố hữu Một sở liệu khơng phải tập hợp tuỳ tiện - Một sở liệu thiết kế phổ biến cho mục đích riêng Nó có nhóm người sử dụng có chủ định có số ứng dụng xác định phù hợp với mối quan tâm người sử dụng Nói cách khác, sở liệu có nguồn cung cấp liệu, mức độ tương tác với kiện giới thực nhóm người quan tâm tích cực đến nội dung Một sở liệu có cỡ tuỳ ý có độ phức tạp thay đổi Có sở liệu gồm vài trăm ghi (như sở liệu phục vụ việc quản lý lương quan nhỏ), có sở liệu có dung lượng lớn (như sở liệu phục vụ cho việc tính cước điện thoại, quản lý nhân phạm vi lớn) Các sở liệu phải tổ chức quản lý cho người sử dụng tìm kiếm liệu, cập nhật liệu lấy liệu cần thiết Một sở liệu tạo trì cách thủ cơng tin học hố Một sở liệu tin học hoá tạo trì bằng nhóm chương trình ứng dụng hệ quản trị sở liệu 1.3 Phương pháp sở liệu 1.3.1 Cơ sở liệu gì? Cơ sở liệu kỹ thuật sở liệu có ảnh hưởng lớn đến việc sử dụng máy tính Có thể nói sở liệu đóng vai trị quan trọng lĩnh vực có sử dụng máy tính giáo dục, thương mại, kỹ nghệ, khoa học, thư viện,… Thuật ngữ sở liệu trở thành thuật ngữ phổ dụng Một sở liệu tập hợp liệu có liên quan với nhau, lưu trữ máy tính, có nhiều người sử dụng tổ chức theo mơ hình Dữ liệu kiện ghi lại có ý nghĩa Ví dụ, để quản lý việc học tập môi trường đại học, liệu thông tin sinh viên, môn học, điểm thi….Chúng ta tổ chức liệu thành bảng lưu giữ chúng vào sổ sách sử dụng phần mềm máy tính để lưu giữ chúng máy tính Ta có tập liệu có liên quan đến mang nhiều ý nghĩa, sở liệu 1.3.2 Hệ quản trị cở sở liệu 1.3.2.1 Định nghĩa hệ quản trị sở liệu Một hệ quản trị sở liệu tập hợp chương trình giúp cho người sử dụng tạo ra, trì khai thác sở liệu Nó hệ thống phần mềm phổ dụng, làm dễ trình định nghĩa, xây dựng thao tác sở liệu cho ứng dụng khác Định nghĩa sở liệu bao gồm việc đặc tả kiểu liệu, cấu trúc ràng buộc cho liệu lưu trữ sở Xây dựng sở liệu trình lưu trữ liệu phương tiện lưu trữ hệ quản trị sở liệu kiểm soát Thao tác sở liệu bao gồm chức truy vấn sở liệu để lấy liệu cụ thể, cập nhật sở liệu để phản ánh thay đổi giới nhỏ tạo báo cáo từ liệu Các hệ quản trị sở liệu dùng để thể sở liệu tin học hố phổ dụng (là phần mềm đóng gói) chuyên dụng (là tập phần mềm tạo với mục đích riêng) Người ta gọi sở liệu hệ quản trị sở liệu thuật ngữ chung hệ sở liệu Môi trường hệ sở liệu mơ tả hình vẽ (Hình I-1) 1.3.2.2 Các chức hệ quản trị sở liệu Lưu trữ định nghĩa, mối liên kết liệu (gọi siêu liệu) vào từ điển liệu Các chương trình truy cập đến sở liệu làm việc thông qua hệ quản trị sở liệu Hệ quản trị sở liệu sử dụng liệu từ điển liệu để tìm kiếm cấu trúc thành phần liệu mối liên kết yêu cầu Mọi thay đổi tệp sở liệu tự động ghi lại vào từ điển liệu Như vậy, hệ quản trị sở liệu giải phóng người sử dụng khỏi việc lập trình cho mối liên kết phức tạp chương trình, việc sửa đổi chương trình truy cập đến tệp sở liệu bị sửa đổi Nói cách khác, hệ quản trị sở liệu loại bỏ phụ thuộc liệu cấu trúc khỏi hệ thống Người sử dụng / Người lập trình Chương trình ứng dụng / Truy vấn Phần mềm xử lý Truy vấn / Chương trình Phần mềm truy cập đến liệu lưu trữ Định nghĩa sở liệu (Siêu liệu ) Cơ sở liệu Hình I-1 Mơi trường hệ sở liệu Tạo cấu trúc phức tạp theo yêu cầu để lưu trữ liệu Nó giúp người sử dụng làm nhiệm vụ khó khăn định nghĩa lập trình cho đặc trưng vật lý liệu Biến đổi liệu nhập vào để phù hợp với cấu trúc liệu điểm Như vậy, hệ quản trị sở liệu giúp người sử dụng phân biệt dạng logic dạng vật lý liệu Bằng việc trì độc lập liệu, hệ quản trị sở liệu chuyển yêu cầu logic thành lệnh định vị cách vật lý lấy liệu yêu cầu Điều có nghĩa hệ quản trị sở liệu tạo khuôn dạng cho liệu lấy để làm cho phù hợp với mong muốn logic người sử dụng Tạo hệ thống bảo mật áp đặt tính bảo mật riêng tư sở liệu Tạo cấu trúc phức tạp cho phép nhiều người sử dụng truy cập đến liệu Cung cấp thủ tục lưu phục hồi liệu để đảm bảo an toàn toàn vẹn liệu Xúc tiến áp đặt quy tắc an toàn để loại bỏ vấn đề toàn vẹn liệu Điều cho phép ta làm tối thiểu dư thừa liệu làm tối đa tính quán liệu Cung cấp việc truy cập liệu thông qua ngôn ngữ truy vấn Một ngôn ngữ truy vấn ngôn ngữ phi thủ tục cho phép người sử dụng cần phải làm mà khơng cần phải làm Các hệ quản trị sở liệu cung cấp việc truy cập liệu cho người lập trình thơng qua ngơn ngữ thủ tục 1.3.2.3 Ưu điểm phương pháp CSDL Trước khái niệm sở liệu đời, hệ thống tệp (file) phương pháp áp dụng việc quản lý Một tệp xem cặp hồ sơ lưu trữ thông tin liên quan đến cơng việc riêng biệt Ví dụ, quan, phận tài vụ có cặp hồ sơ liên quan đến lương nhân viên, phận tổ chức có cặp hồ sơ liên quan đến vấn đề nhân sự… Việc xử lý để lấy thông tin thống kê lương, q trình cơng tác… lúc đầu thực cách thủ công Dần dần, khối lượng thông tin ngày lớn, việc xử lý thông tin ngày phức tạp, người ta sử dụng máy tính vào việc quản lý Các cặp hồ sơ chuyển thành tệp máy tính việc xử lý thơng tin thực cách lập trình (trong ngơn ngữ lập trình hệ 3) Việc quản lý theo giải pháp hệ thống tệp có nhiều nhược điểm Thứ nhất, dư thừa thơng tin: thông tin lưu trữ nhiều lần (chẳng hạn, danh sách nhân viên có mặt tệp lương có mặt tệp nhân sự) Điều gây việc lãng phí nhớ dễ gây sai sót cập nhật liệu, dễ sinh liệu không đắn Thứ việc phụ thuộc chương trình ứng dụng liệu Mỗi có thay đổi cấu trúc tệp liệu tệp, chương trình ứng dụng khai thác thơng tin tệp thay đổi theo Điều gây khó khăn lớn cho việc bảo trì Giải pháp sở liệu đời giải nhược điểm Cụ thể, giải pháp sở liệu có đặc trưng sau: Bản chất tự mô tả hệ sở liệu Một đặc trưng giải pháp sở liệu hệ thống sở liệu khơng gồm có thân sở liệu mà cịn có định nghĩa mô tả đầy đủ cấu trúc sở liệu ràng buộc Định nghĩa lưu trữ từ điển hệ thống, chứa thông tin cấu trúc tệp, kiểu dạng lưu trữ mục liệu Các thông tin lưu giữ từ điển gọi siêu liệu (meta-data) chúng mô tả cấu trúc liệu nguyên thuỷ (hình I-1) Phần mềm hệ quản trị sở liệu người sử dụng sở liệu sử dụng từ điển để lấy thông tin cấu trúc sở liệu Sự độc lập chương trình liệu Trong hệ thống tệp, cấu trúc tệp sở liệu nhúng vào chương trình truy cập, thay đổi cấu trúc tệp đòi hỏi phải thay đổi tất chương trình truy cập đến tệp Ngược lại, chương trình truy cập hệ quản trị sở liệu không đòi hỏi việc thay đổi Cấu trúc tệp liệu lưu trữ từ điển tách rời với chương trình truy cập Tính chất gọi độc lập liệu – chương trình Hỗ trợ khung nhìn liệu nhiều thành phần Một sở liệu có nhiều người sử dụng, người địi hỏi phối cảnh khung nhìn (view) khác Một khung nhìn tập sở liệu chứa liệu ảo, liệu trích từ tệp sở liệu khác không lưu trữ cách rõ ràng Một hệ quản trị sở liệu nhiều người sử dụng phải cung cấp nhiều công cụ để định nghĩa khung nhìn nhiều thành phần Chia sẻ liệu nhiều người sử dụng Một hệ quản trị sở liệu nhiều người sử dụng phải cho phép nhiều người sử dụng truy cập đồng thời đến sở liệu Hệ quản trị sở liệu phải có phần mềm kiểm tra cạnh tranh để đảm bảo người sử dụng cập nhật đến sở liệu phải thực theo cách kiểm tra kết cập nhật đắn 1.3.2.4 Phân loại sở liệu Có nhiều mơ hình liệu đề nghị Chúng ta phân loại mơ hình liệu dựa khái niệm mà chúng sử dụng để mô tả cấu trúc sở liệu Các mơ hình liệu bậc cao mơ hình liệu mức quan niệm cung cấp khái niệm gắn liền với cách cảm nhận liệu nhiều người sử dụng Các mơ hình tập trung vào chất logic biểu diễn liệu, quan tâm đến biểu diễn sở liệu cách biểu diễn liệu Các mơ hình liệu bậc thấp mơ hình liệu vật lý cung cấp khái niệm mô tả chi tiết việc liệu lưu trữ máy tính Các khái niệm mơ hình liệu vật lý cung cấp nói chung có ý nghĩa chun gia máy tính khơng có ý nghĩa người sử dụng thông thường Ở hai loại mơ hình lớp mơ hình liệu thể hiện, chúng cung cấp khái niệm mà người sử dụng hiểu khơng xa với cách tổ chức liệu bên máy tính Người ta cịn gọi loại mơ hình liệu loại mơ hình liệu mức logic Các mơ hình liệu thể che giấu số chi tiết việc lưu trữ liệu cài đặt trực tiếp hệ thống máy tính Trong chương II, nghiên cứu mơ hình liệu mức quan niệm, mơ hình thực thể - liên kết, gọi tắt mơ hình ER (Entity – Relationship Model) Mơ hình sử dụng khái niệm thực thể, thuộc tính, mối liên kết, để diễn đạt đối tượng giới thực Một thực thể diễn đạt đối tượng khái niệm giới thực Ví dụ, thực thể nhân viên dự án mô tả sở liệu Một thuộc tính diễn đạt đặc trưng thực thể Chẳng hạn, họ tên, lương… thuộc tính thực thể nhân viên Một mối liên kết hai hay nhiều thực thể diễn đạt mối quan hệ qua lại thực thể Ví dụ, thực thể nhân viên thực thể dự án có mối liên kết nhân viên làm việc dự án Mơ hình liệu hướng đối tượng mơ hình liệu b`ậc cao Nó sử dụng khái niệm lớp, phương thức, thông điệp… Bạn đọc tìm hiểu mơ hình tài liệu [1], [2] Các mơ hình liệu thể mơ hình sử dụng thường xun hệ sở liệu thương mại Ba mơ hình tiếng thuộc loại mơ hình quan hệ, mơ hình mạng mơ hình phân cấp Các mơ hình mạng phân cấp đời trước sử dụng rộng rãi khứ (trước 1970) Vào đầu năm 70, mơ hình quan hệ đời Do tính ưu việt nó, mơ hình quan hệ thay mơ hình mạng phân cấp Chúng ta nghiên cứu mơ hình quan hệ chương III Các mơ hình liệu vật lý mô tả cách lưu trữ liệu máy tính giới thiệu thơng tin khuôn dạng ghi, xếp ghi, đường truy cập… 1.4 Phân loại người dùng Cơ sở liệu Với sở liệu lớn, nhiều người tham gia vào việc thiết kế, sử dụng trì sở liệu Những người liên quan đến hệ sở liệu chia thành hai nhóm Nhóm thứ gồm người mà cơng việc họ liên quan hàng ngày đến sở liệu, người quản trị sở liệu, thiết kế sở liệu, sử dụng sở liệu, phân tích hệ thống lập trình ứng dụng Nhóm thứ hai gồm người làm việc để trì mơi trường hệ sở liệu không quan tâm đến thân sở liệu, người thiết kế cài đặt hệ quản trị sở liệu, phát triển công cụ, thao tác viên bảo trì 1.4.1 Người quản trị hệ sở liệu (Database Administrator – DBA) Trong tổ chức có nhiều người sử dụng tài nguyên, cần phải có người giám sát quản lý Trong môi trường hệ sở liệu, tài nguyên sở liệu, hệ quản trị sở liệu phần mềm liên quan Người quản trị hệ sở liệu người chịu trách nhiệm quản lý tài nguyên Người chịu trách nhiệm việc cho phép truy cập sở liệu, tổ chức hướng dẫn việc sử dụng sở liệu, cấp phần mềm phần cứng theo yêu cầu 1.4.2 Người thiết kế sở liệu (Database Designer) Người chịu trách nhiệm xác định liệu lưu giữ sở, chọn cấu trúc thích hợp để biểu diễn lưu giữ liệu Những nhiệm vụ thực trước sở liệu cài đặt phổ biến Người thiết kế có trách nhiệm giao thiệp với người sử dụng tương lai để hiểu đòi hỏi họ đưa thiết kế thoả mãn yêu cầu Anh ta có nhiệm vụ giao thiệp với nhóm người sử dụng có khả hỗ trợ yêu cầu nhóm 1.4.3 Những người sử dụng (End User) Những người sử dụng người mà công việc họ đòi hỏi truy cập đến sở liệu để truy vấn, cập nhật sinh thông tin Có thể chia người sử dụng thành hai nhóm chính: người sử dụng thụ động (tức người sử dụng khơng có nhiều kiến thức hệ sở liệu) người sử dụng chủ động (là người có hiểu biết tốt hệ sở liệu) Chức công việc người sử dụng thụ động (chiếm phần lớn người sử dụng) gắn liền với việc truy vấn cập nhật thường xuyên sở liệu cách sử dụng câu hỏi cập nhật chuẩn (gọi giao tác định sẵn) lập trình kiểm tra cẩn thận Những người cần học phương tiện hệ quản trị sở liệu cung cấp hiểu kiểu giao tác chuẩn thiết kế cài đặt đủ Những người sử dụng chủ động có hiểu biết tốt hệ sở liệu, họ tự cài đặt ứng dụng riêng để làm thoả mãn yêu cầu phức tạp họ 1.4.4 Người phân tích hệ thống lập trình ứng dụng Người phân tích hệ thống xác định yêu cầu người sử dụng (chủ yếu người sử dụng thụ động) để đặc tả chương trình phù hợp với yêu cầu họ Người viết chương trình ứng dụng thể đặc tả người phân tích thành chương trình, sau kiểm thử, sửa lỗi làm tài liệu bảo trì giao tác định sẵn 1.4.5 Người thiết kế cài đặt hệ quản trị liệu Đó người thiết kế, cài đặt mô đun, giao diện hệ quản trị sở liệu thành phần mềm đóng gói Một hệ quản trị sở liệu hệ thống phần mềm phức tạp bao gồm nhiều thành phần (mơ đun) Đó mô đun cài đặt từ điển liệu, ngôn ngữ truy vấn, xử lý giao diện, truy cập liệu, kiểm tra cạnh tranh, phục hồi an toàn Hệ quản trị sở liệu phải giao tiếp với hệ thống phần mềm khác hệ điều hành chương trình dịch cho nhiều ngơn ngữ khác 1.4.6 Những người phát triển công cụ Là người thiết kế cài đặt công cụ (tool), phần mềm đóng gói làm dễ việc thiết kế sử dụng sở liệu 1.4.7 Các thao tác viên người bảo trì Là người chịu trách nhiệm việc chạy bảo trì phần cứng phần mềm hệ thống 1.5 Câu hỏi ôn tập 1.5.1 Định nghĩa thuật ngữ : sở liệu, hệ quản trị sở liệu, hệ sở liệu, từ điển sở liệu, mơ hình sở liệu 1.5.2 Nêu tính chất sở liệu 1.5.3 Nêu chức hệ quản trị sở liệu 1.5.4 Giải thích đặc trưng giải pháp sở liệu 1.5.5 Định nghĩa mơ hình sở liệu phân loại Chương2: CÁC MƠ HÌNH DỮ LIỆU Trong chương làm quen với mơ hình thực thể - liên kết, gọi tắt mơ hình ER ( Entity-Relationship Model) Đó mơ hình liệu mức quan niệm phổ biến, tập trung vào cấu trúc liệu ràng buộc Mơ hình thường sử dụng để thiết kế ứng dụng sở liệu nhiều công cụ thiết kế sở liệu sử dụng khái niệm Sau học xong chương 2, học sinh có khả năng: - Phân loại mơ hình liệu, sơ đồ quan hệ - Nắm tầm quan trọng mơ hình liệu quan hệ - Vận dụng để giải toán mơ hình liệu quan hệ 2.1 Sơ đồ thực thể liên kết 2.1.1 Thực thể Thực thể “vật” giới thực, có tồn độc lập Một thực thể cụ thể, tức cảm nhận giác quan, trừu tượng, tức mà không cảm nhận giác quan nhận biết nhận thức Một ô tô, nhân viên,… thực thể cụ thể Một đơn vị công tác, trường học… thực thể trừu tượng Mỗi thực thể có thuộc tính, đặc trưng cụ thể mơ tả thực thể Ví dụ, thực thể Nhânviên mô tả Họtên, Tuổi, Địachỉ, Lương… nhân viên Một thực thể cụ thể có giá trị cho thuộc tính Ví dụ, nhân viên nv1 có giá trị cho thuộc tính Họtên, Tuổi, Địachỉ, Lương “ Lê Vân”, 32, “Hà nội”, 500000 Các giá trị thuộc tính mơ tả thực thể trở thành phần liệu lưu giữ sở liệu Trong mơ hình ER có mặt nhiều kiểu thuộc tính: thuộc tính đơn, thuộc tính phức hợp, thuộc tính đơn trị, thuộc tính đa trị, thuộc tính lưu trữ, thuộc tính suy diễn được, thuộc tính có giá trị khơng xác định, thuộc tính phức tạp Thuộc tính đơn thuộc tính khơng thể phân chia thành thành phần nhỏ Ví dụ, thuộc tính Tuổi nhân viên thuộc tính đơn Thuộc tính phức hợp thuộc tính phân chia thành thành phần nhỏ hơn, biểu diễn thuộc tính với ý nghĩa độc lập Ví dụ, thuộc tính Họtên thực thể nhân viên phân chia thành tính Họđệm Tên Giá trị thuộc tính kết hợp kết hợp giá trị thuộc tính thành phần tạo nên Việc phân chia thuộc tính phức hợp thành thuộc tính đơn tùy thuộc vào hồn cảnh cụ thể Những thuộc tính có giá trị cho thực thể cụ thể gọi thuộc tính đơn trị Ví dụ, Họtên thuộc tính đơn trị thực thể nhân viên, nhân viên có họ tên Trong số trường hợp, thuộc tính có tập giá trị cho thực thể Những thuộc tính gọi thuộc tính đa trị Ví dụ, thuộc tính Bằngcấp người Một người khơng có cấp nào, người khác có bằng, người khác có nhiều Như vậy, người khác có số giá trị khác cho thuộc tính Bằngcấp Thuộc tính Bằng cấp thuộc tính đa trị Thuộc tính lưu trữ thuộc tính mà giá trị nhập vào cài đặt sở liệu Trong số trường hợp, hai hay nhiều thuộc tính có giá trị liên quan đến Ví dụ, thuộc tính Tuổi thuộc tính Ngàysinh người Với người cụ thể, ta tính tuổi cách lấy năm trừ năm Ngàysinh Thuộc tính mà giá trị tính thơng qua giá trị thuộc tính khác gọi thuộc tính suy diễn Các giá trị khơng xác định (null values): Trong số trường hợp, thực thể cụ thể khơng có giá trị áp dụng cho thuộc tính Ví dụ, thuộc tính Sốđiệnthoại thực thể nhân viên khơng có giá trị nhân viên khơng có số điện thoại Trong trường hợp vậy, ta phải tạo giá trị đặc biệt gọi giá trị không xác định (null) Giá trị không xác định tạo thuộc tính có giá trị khơng áp dụng khơng biết Các thuộc tính phức tạp: Là kết hợp thuộc tính phức hợp đa trị 2.1.2 Sơ đồ thực thể liên kết 2.1.2.1 Kiểu thực thể, tập thực thể, khóa tập giá trị Các kiểu thực thể tập thực thể: Một sở liệu thường chứa nhóm thực thể Ví dụ, cơng ty thuê hàng trăm nhân viên lưu giữ thông tin tương tự liên quan đến nhân viên Các thực thể nhân viên chia sẻ thuộc tính giống thực thể có giá trị riêng cho thuộc tính Một kiểu thực thể tập hợp thực thể có thuộc tính Một kiểu thực thể sở liệu mô tả tên thuộc tính Vídụ: NHÂNVIÊN (Họtên, Tuổi, Lương), CƠNGTY (Tên, Địađiểm, Giámđốc) Một tập hợp thực thể kiểu thực thể cụ thể sở liệu thời điểm gọi tập thực thể, thường tham chiếu đến cách sử dụng tên kiểu thực thể Ví dụ, NHÂNVIÊN vừa dùng để kiểu thực thể, vừa để tập hợp tất thực thể nhân viên sở liệu Một kiểu thực thể biểu diễn lược đồ ER hộp hình chữ nhật có chứa tên kiểu thực thể Các thuộc tính đặt hình van nối với kiểu thực thể đường thẳng Các thuộc tính phức hợp nối với thuộc tính thành phần đường thẳng Các thuộc tính đa trị hiển thị hình van đúp (hình II-2) Một kiểu thực thể mơ tả lược đồ (hoặc mục đích) cho tập thực thể chia sẻ cấu trúc Tập hợp thực thể kiểu thực thể cụ thể nhóm vào tập thực thể gọi thể kiểu thực thể Thuộc tính khóa kiểu thực thể: Một ràng buộc quan trọng thực thể kiểu thực thể khóa Một kiểu thực thể thường có thuộc tính mà giá trị khác thực thể tiêng biệt tập thực thể Thuộc tính gọi thuộc tính khóa giá trị dung để xác định thực thể cách Ví dụ, thuộc tính Tên kiểu thực thể CƠNGTY khóa kiểu thực thể thực thể cơng ty có tên Đơi khi, nhiều thuộc tính kết hợp với tạo thành khóa, nghĩa tổ hợp giá trị thuộc tính phải khác thực thể Trong trường hợp ta có thuộc tính khóa phức hợp Chú ý khóa phức hợp phải tối thiểu, nghĩa tất thuộc tính thành phần phải có mặt thuộc tính phức hợp để thỏa mãn tính chất Trong biểu đồ đồ họa mơ hình ER, thuộc tính khóa biểu diễn cách gạch ngang tên (hình II-3) Khi thuộc tính khóa kiểu thực thể nghĩa tính chất nêu phải thỏa mãn đối với mở rộng kiểu thực thể Như vậy, ràng buộc khóa cấm hai thực thể có giá trị cho thuộc tính khóa thời điểm Đó ràng buộc tất thể thực thể Ràng buộc khóa ràng buộc giới thiệu sau lấy từ ràng buộc “thế giới nhỏ” sở liệu Một kiểu thực thể có nhiều thuộc tính khóa Ví dụ, cơng ty có mã số tên thuộc tính Mãsốcơng ty Têncơngty thuộc tính khóa Một kiểu thực thể khơng có khóa Một thực thể khơng có khóa gọi kiểu thực thể yếu Họ Mã số SV Tên Họ tên Giới tính Bằng cấp NHÂNVIÊN Hình II-2 Biểu diễn kiểu thực thể thuộc tính 2.1.2.2 Kiểu liên kết, tập liên kết thể Một kiểu liên kết R n kiểu thực thể E1, E2, …,En xác định tập liên kết thực thể kiểu Cũng kiểu thực thể tập thực thể, kiểu liên kết tập liên kết tương ứng với có tên chung R Một cách toán học, tập liên kết R tập hợp thể liên kết ri , i= 1,2,… ri liên kết n thực thể riêng biệt e1,e2,…,en thực thể ej ri thành phần kiểu thực thể Ej , 1≤ j ≤ n Như vậy, kiểu liên kết R quan hệ toán học E1, E2, …, En định nghĩa tập tích Đề E1 x E2 x …x En Mỗi kiểu thực thể E1,E2, …, En gọi tham gia vào kiểu liên kết R, tương tự, thực thể riêng biệt e1, e2, …, en gọi tham gia vào thể liên kết ri = ( e1,e2,…,en) Một cách khơng hình thức, thể liên kết ri R kết hợp thực thể, thực thể thuộc kiểu thực thể tham gia vào liên kết Mỗi liên kết ri diễn đạt kiện thực thể tham gia ri có mối quan hệ với theo cách giới thực Ví dụ, thực tế, nhân viên làm việc cho đơn vị, vậy, có kiểu liên kết liên kết làm việc cho, liên kết kiểu thực thể NHÂNVIÊN kiểu thực thể ĐƠNVỊ Trong sơ đồ ER, kiểu liên kết biểu diễn hình thoi nối trực tiếp với hình chữ nhật biểu diễn kiểu thực thể tham gia vào liên kết Hình II-4 minh họa kiểu liên kết thể liên kết a) Kiểu liên kết: b) ĐƠN VỊ Làm việc NHÂN VIÊN Thể liên kết: Nhân Viên NV1 NV2 NV3 NV4 Làm việc cho Đơn vị ĐV1 ĐV2 Hình II-4 Kiểu liên kết thể liên kết 2.1.2.3 Cấp liên kết, tên vai trò kiểu liên kết đệ quy Cấp kiểu liên kết số kiểu thực thể tham gia vào kiểu liên kết Một kiểu liên kết có cấp 1, cấp 2, cấp 3,… Ví dụ, kiểu liên kết kiểu thực thể NHÂNVIÊN kiểu thực thể ĐƠNVỊ kiểu liên kết cấp Kiểu liên kết kiểu thực thể MƠNHỌC với kiểu liên kết cấp 1… Đôi coi kiểu liên kết thuộc tính kiểu thực thể Ví dụ, kiểu thực thể NHÂNVIÊN có thuộc tính Đơnvị để tên đơn vị mà nhân viên làm việc cho, thuộc tính Đơnvị biểu thị kiểu liên kết Nói cách khác, thuộc tính kiểu thực thể có chức biểu thị đặc trưng kiểu thực thể, có chức biểu thị kiểu liên kết kiểu thực thể với kiểu thực thể khác Các thuộc tính biểu thị kiểu liên kết đơn trị đa trị tuỳ theo chất mối liên kết Các tên vai trò kiểu liên kết đệ quy: Mỗi kiểu thực thể tham gia vào kiểu liên kết có vai trị cụ thể liên kết Tên vai trò dùng để rõ vai trò thực thể kiểu thực thể tham gia liên kết, giúp đỡ việc giải thích ý nghĩa liên kết Ví dụ, kiểu liên kết NHÂNVIÊN ĐƠNVỊ, vai trò thực thể kiểu thực thể NHÂNVIÊN nhân viên công nhân vai trò thực thể kiểu thực thể ĐƠNVỊ đơn vị nơi thuê công nhân Nếu kiểu thực thể tham gia vào kiểu liên kết khác tên vai trị hồn tồn khơng cần thiết sử dụng tên kiểu thực thể làm tên vai trò Tuy nhiên, số trường hợp, kiểu thực thể tham gia vào kiểu liên kết với vai trò khác Trong trường hợp vậy, tên vai trò trở nên cần thiết để phân biệt ý nghĩa tham gia Các kiểu liên kết gọi kiểu liên kết đệ quy Ví dụ, số nhân viên làm việc cho đơn vị, có nhân viên phân công giám sát nhân viên khác Như có kiểu liên kết thực thể kiểu thực thể NHÂNVIÊN: NHÂNVIÊN NHÂNVIÊN Kiểu thực thể NHÂNVIÊN tham gia hai lần vào kiểu liên kết , lần với vai trò người giám sát, lần với vai trò người bị giám sát 2.1.3 Quan hệ 2.1.3.1 Các ràng buộc kiểu liên kết Các kiểu liên kết thường có số ràng buộc để hạn chế số tổ hợp thực thể tham gia tập hợp liên kết tương ứng Các ràng buộc xác định từ tình trạng giới thực mà kiểu liên kết biểu diễn Ví dụ, cơng ty có quy chế nhân viên làm việc cho đơn vị phải mơ tả ràng buộc lược đồ Có hai loại ràng buộc chính: tỷ số lực lượng tham gia Tỷ số lực lượng: Tỷ số lực lượng cho kiểu liên kết số thể liên kết mà thực thể tham gia Với kiểu liên kết cấp 2, có tỷ số lực lượng 1:1, 1:N, M:N Một kiểu liên kết có tỷ số lực lượng 1:1 hai kiểu thực thể A B có nghĩa kiểu liên kết đó, thực thể kiểu A liên kết với thực thể kiểu B ngược lại, thực thể kiểu B liên kết với thực thể kiểu A Tỷ số lực lượng 1:N có nghĩa thực thể kiểu A liên kết với nhiều thực thể kiểu B thực thể kiểu B liên kết với thực thể kiểu A Trong kiểu liên kết có tỷ số lực lượng M:N, thực thể kiểu A liên kết với nhiều thực thể kiểu B ngược lại, thực thể kiểu B liên kết với nhiều thực thể kiểu A Trong biểu diễn lược đồ ER, tỷ số lực lượng biểu diễn cách ghi 1, N, M hình thoi biểu diễn kiểu liên kết (hình II-5) NHÂN VIÊN ĐƠN VỊ Quản lý N NHÂN VIÊN NHÂN VIÊN ĐƠN VỊ Làm việc cho M N Làm việc ĐƠN VỊ Hình II-5 Tỷ số lực lượng kiểu liên kết Số NHÂN VIÊN Làm việc DỰ ÁN 2.1.3.2 Các kiểu thực thể yếu Các kiểu thực thể khơng có thuộc tính khố cho gọi kiểu thực thể yếu Ngược lại, kiểu thực thể thơng thường (nghĩa có thuộc tính khoá) gọi kiểu thựác thực thể kiểu thực thể yếu xác định cách liên kết lp.với thực thể cụ thể kiểu thực thể khác phối hợp với số giá trị thuộc tính Ta gọi kiểu thực thể khác kiểu thực thể xác định kiểu thực thể chủ Ta gọi kiểu liên kết kiểu thực thể yếu kiểu thực thể chủ liên kết xác định thực thể yếu Một kiểu thực thể yếu ln ln có ràng buộc tham gia toàn (tồn phụ thuộc) vào liên kết xác định kiểu thực thể yếu khơng thể xác định mà khơng có kiểu thực thể chủ Ví dụ, cơng ty, nhân viên nhân viên hưởng chế độ bảo hiểm theo nhân viên Như vậy, có kiểu liên kết NHÂNVIÊN < CON> Đây kiểu liên kết có tỷ số lực lượng 1:N Các thuộc tính kiểu thực thể CON Họtên, Ngaysinh, Giớitính Hai người hai nhân viên khác có giá trị cho thuộc tính hai thực thể khác Chúng xác định hai thực thể khác sau xác định thực thể nhân viên cụ thể có liên quan đến người phụ ... Phân loại người dùng CSDL 1.1 Tổng quan Cơ sở liệu Các sở liệu hệ sở liệu trở thành thành phần chủ yếu sống hàng ngày xã hội đại Trong vòng ngày người có nhiều hoạt động cần có giao tiếp với sở liệu... đặt phổ biến Người thiết kế có trách nhiệm giao thiệp với người sử dụng tương lai để hiểu đòi hỏi họ đưa thiết kế thoả mãn yêu cầu Anh ta có nhiệm vụ giao thiệp với nhóm người sử dụng có khả hỗ... sử dụng câu hỏi cập nhật chuẩn (gọi giao tác định sẵn) lập trình kiểm tra cẩn thận Những người cần học phương tiện hệ quản trị sở liệu cung cấp hiểu kiểu giao tác chuẩn thiết kế cài đặt đủ Những

Ngày đăng: 14/12/2022, 08:06