1. Trang chủ
  2. » Giáo án - Bài giảng

Giáo trình cơ sở dữ liệu 40

67 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

Mục Lụcc Lục Lụcc 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 .9 1.3.1 Cơ sở liệu là gì? .9 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 .10 1.3.2.3 Ưu điểm phương pháp CSDL 12 1.3.2.4 Phân loại sở liệu 13 1.4 Phân loại người dùng Cơ sở liệu 14 1.4.1 Người quản trị hệ sở liệu (Database Administrator – DBA) 15 1.4.2 Người thiết kế sở liệu (Database Designer) 15 1.4.3 Những người sử dụng (End User) .15 1.4.4 Người phân tích hệ thống và lập trình ứng dụng 15 1.4.5 Người thiết kế và cài đặt hệ quản trị liệu 15 1.4.6 Những người phát triển công cụ 16 1.4.7 Các thao tác viên và người bảo trì 16 1.5 Câu hỏi ôn tập .16 Chương2: CÁC MÔ HÌNH DỮ LIỆU 17 2.1 Sơ đồ thực thể liên kết 17 2.1.1 Thực thể 17 2.1.2 Sơ đồ thực thể liên kết .18 2.1.2.1 Kiểu thực thể, tập thực thể, khóa và tập giá trị 18 2.1.2.2 Kiểu liên kết, tập liên kết và thể 19 2.1.2.3 Cấp liên kết, tên vai trò và kiểu liên kết đệ quy 20 2.1.3 Quan hệ .21 2.1.3.1 Các ràng buộc kiểu liên kết 21 2.1.3.2 Các kiểu thực thể yếu 22 2.2 Các mô hình liệu 23 2.2.1 Mô hình thực thể quan hệ 23 2.2.1.1 Lớp cha, lớp và thừa kế .23 2.2.1.3 Sơ đồ mô hình EER 26 2.3 Câu hỏi ôn tập .27 Chương 3: MƠ HÌNH CƠ SỞ DỮ LIỆU QUAN HỆ .28 3.1 Các khái niệm 28 3.1.1 Miền .28 3.1.2 Quan hệ .29 3.2 Cơ sở liệu quan hệ 29 3.3 Câu hỏi ôn tập .32 Chương 4: NGÔN NGỮ THAO TÁC DỮ LIỆU 33 4.1 Đại số quan hệ .33 4.1.1 Phép tính tập hợp thơng thường .33 4.1.1.1 Phép nối (JOIN) .35 4.1.2 Các phép tính đặc biệt .38 1.2.1 Phép chọn (SELECT) 38 4.1.2.2 Phép chiếu (PROJECT) 39 4.1.2.3 Phép đặt lại tên (RENAME) 40 4.2 Các ngôn ngữ cập nhật liệu 41 4.2.1 Phép sửa đổi 41 4.2.2 Phép loại bỏ 42 4.2.3 Phép thêm 42 4.3 Câu hỏi ôn tập .43 Chương 5: NGÔN NGỮ TRUY VẤN DỮ LIỆU SQL 45 5.1 Tổng quan, qui ước biểu diễn câu lệnh SQL 45 5.1.1 Tổng quan 45 5.1.1.1 Lịch sử phát triển 45 5.1.2 Các qui ước biểu diễn câu lệnh SQL 45 5.1.3 Hiệu chỉnh cấu trúc liệu .45 5.1.4 Xoá bảng .46 5.1.4.1 Tạo sở liệu .46 5.1.4.2 Xóa sở liệu .46 5.1.4.3 Tạo bảng liệu 46 5.1.5 Xóa bỏ bảng liệu 47 5.1.6 Sửa đổi cấu trúc bảng liệu 47 5.2 Ngôn ngữ cập nhật liệu 47 5.2.1 Thêm bản ghi 47 5.2.2 Cập nhật bản ghi 47 5.2.3 Xoá bản ghi 47 5.3 Ngôn ngữ truy vấn liệu 47 5.3.1 Truy vấn đơn giản 48 5.3.2 Truy vấn có điều kiện 48 5.3.2.1 Lọc bản ghi trở với mệnh đề WHERE .48 5.3.2.2 Truy vấn gộp nhóm với mệnh đề GROUP BY VÀ HAVING .48 5.3.2.3 Sắp xếp bản ghi kết quả với mệnh đề ORDER BY .49 5.3.2.4 Truy vấn liệu từ nhiều hàng .49 5.4 CÂU HỎI ÔN TẬP .50 Chương 6: LÝ THUYẾT THIẾT KẾ CƠ SƠ DỮ LIỆU 51 6.1 Phụ thuộc hàm .51 6.1.1 Định nghĩa 51 1.2 Hệ tiên đề cho phụ thuộc hàm 53 6.1.3 Khái niệm bao đóng 55 6.1.4 Tính tốn bao đóng 55 6.1.5 Tính tương đương bao đóng tập phụ thuộc hàm .56 6.1.5.1 Định nghĩa 56 6.1.5.2 Cách chứng minh tập phụ thuộc hàm F và G là tương đương 56 6.1.6 Phủ tối thiểu 56 6.1.6.1 Khái niệm 56 6.1.6.2 Thuật toán tìm phủ tối thiểu tập phụ thuộc hàm F 56 6.2 Phép tách lược đồ quan hệ .57 6.3 Chuẩn hóa lược đồ quan hệ 57 6.3.1 Chuẩn hóa 1NF 57 6.3.2 Chuẩn hóa 2NF 58 6.3.3 Chuẩn hóa 3NF 58 6.3.3.1 Định nghĩa cổ điển 58 6.3.3.2 Định nghĩa tổng quát 59 6.4 Chuẩn hóa BCNF 59 6.5 CÂU HỎI ÔN TẬP .60 Chương 7: GIẢI BÀI TẬP 62 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, nền 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 về 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 về 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 độ chuyên 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 đều có mảng kiến thức về 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ó trình ấp ủ chuẩn bị tư liệu cần thiết từ nhiều năm Một mặt, trình sưu tầm, nghiên cứu, tham khảo tài liệu nước ngồi nước có liên quan Mặt khác, 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 trù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 về sở liệu trọng vào lý thuyết mà quên tập củng cố cho gì 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 vì 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! 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 về sở liệu Nội dung chương giúp cho người đọc: - Nắm khái niệm về 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 hoá để 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 về 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 về 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 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 là 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 về sinh viên, về 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 gì 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ê về lương, về 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

Ngày đăng: 22/06/2023, 09:04

Xem thêm:

w