Giáo trình hệ quản trị cơ sở dữ liệu lê thị thu (biên soạn)

116 2 0
Giáo trình hệ quản trị cơ sở dữ liệu   lê thị thu (biên soạn)

Đ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

H qu n tr C s li u Biên soạn: Lê Th Thu PHẦN I – NHẬP MÔN CƠ SỞ DỮ LIỆU QUAN HỆ (Tổng số: 15 tiết, Lý thuyết: 15 tiết) CHƯƠNG – TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU (Tổng số: tiết, Lý thuyết: tiết)  NHỮNG KHÁI NIỆM CƠ BẢN VỀ CƠ SỞ DỮ LIỆU I SỰ CẦN THI T CỦA CƠ SỞ DỮ LIỆU Trong năm gần đây, thuật ngữ “C sở liệu” (CSDL - Database) trở nên quen thuộc không riêng với người làm Tin học mà người làm nhiều lĩnh vực khác Thống kê, Kinh tế, Quản lý Doanh nghiệp v.v… Các ứng dụng Tin học vào công tác quản lý ngày nhiều h n đa dạng h n Có thể nói hầu hết lĩnh vực kinh tế, xã hội, giáo dục, y tế v.v… ứng dụng thành tựu Tin học vào phục vụ công tác chuyên mơn Chính lẽ mà ngày nhiều người quan tâm đến lĩnh vực thiết kế xây dựng CSDL Mục đích Chư ng đ n giản cung cấp khái niệm c CSDL để học viên có nhìn ban đầu CSDL hệ quản trị CSDL Trước hết tìm hiểu lý cần phải có CSDL H thống tập tin cổ điển (File System): Cho đến số đ n vị kinh tế, hành nghiệp v.v… sử dụng mơ hình hệ thống tập tin cổ điển: Chúng tổ chức riêng rẽ, phục vụ cho mục đích đ n vị hay đ n vị trực thuộc cụ thể Chẳng hạn, ta xét ví dụ sau: Ví dụ: Tại cơng ty người ta trang bị máy vi tính cho tất phịng, ban nghiệp vụ Bộ phận Văn phòng sử dụng máy vi tính để soạn thảo văn Microsoft Word thủ trưởng yêu cầu tình hình hoạt động đ n vị, có tiêu tổng số cơng nhân viên chức chia theo trình độ chun mơn đào tạo Phịng Kế tốn sử dụng máy vi tính để tính lư ng in danh sách lư ng phận đ n vị dựa danh sách cán viên chức hệ số lư ng hệ số phụ cấp họ phịng Tổ chức cung cấp Thơng tin mà phịng Kế tốn quản lý khai thác là: Họ Tên, Hệ số lư ng, Hệ số phụ cấp, Phụ cấp khác công nhân viên chức (CNVC) xếp theo phịng ban sử dụng cơng cụ văn phòng Microsoft Excel Phòng Tổ chức quản lý thông tin lý lịch CNVC chi tiết h n gồm: Họ, Tên (để riêng thành cột “Tên” để tiện xếp Alphabet), Giới tính, Ngày sinh, Ngày tuyển dụng, Hồn cảnh gia đình, Q trình đào tạo, Hệ số lư ng, Hệ số phụ cấp, Ngày xếp lư ng trên… thiếu thông tin Phụ cấp khác CNVC Phần mềm sử dụng để quản lý FoxPro for Windows Trong đó, Tổng cơng ty họ, phòng ban nghiệp vụ trang bị máy vi tính Phịng Tổ chức cán Tổng công ty sử dụng phần mềm Microsoft Access để quản lý CNVC gồm cán chủ chốt từ trường phó phịng, quản đốc phó quản đốc xí nghiệp trở lên cơng ty trực thuộc Thông tin quản lý giống thơng tin quản lý phịng tổ chức cơng ty Nhận xét: Ưu điểm: - Việc xây dựng hệ thống tập tin riêng đ n vị quản lý tốn thời gian khối lượng thông tin cần quản lý khai thác nhỏ, khơng địi hỏi đầu tư vật chất chất xám nhiều, triển khai ứng dụng nhanh - Thơng tin khai thác phục vụ cho mục đích hẹp nên khả đáp ứng nhanh chóng, kịp thời -1- H qu n tr C s li u Biên soạn: Lê Th Thu Nhược điểm: - Do thông tin tổ chức phòng ban khác, phần mềm công cụ để triển khai n i khác nên phối hợp tổ chức khai thác phịng ban khó khăn Thơng tin phịng ban khơng sử dụng cho phòng ban khác, đ n vị với đ n vị cấp Cùng thông tin nhập vào máy nhiều n i khác gây lãng phí cơng sức nhập tin khơng gian lưu trữ vật mang tin Sự trùng lắp thơng tin dẫn đến tình trạng khơng quán liệu Chẳng hạn, nhân viên Nguyễn Văn Quang ghi đầy đủ phòng Tổ chức, phịng Kế tốn ghi tắt Nguyễn V Quang - Thông tin tổ chức nhiều n i nên việc cập nhật dễ làm tính quán liệu Một cán chủ chốt cơng ty có thay đổi hồn cảnh gia đình (mới cưới vợ / lấy chồng, sinh thêm con…) cập nhật đ n vị sau thời gian cập nhật Tổng công ty - Do hệ thống tổ chức thành hệ thống tập tin riêng lẻ nên thiếu chia sẻ thông tin n i Việc kết nối hệ thống hay việc nâng cấp ứng dụng khó khăn Qua phân tích nhận thấy việc tổ chức liệu theo hệ thống tập tin có nhiều nhược điểm Việc xây dựng hệ thống tin đảm bảo tính chất quán liệu, không trùng lặp thông tin mà đáp ứng nhu cầu khai thác đồng thời tất phịng ban cơng ty tổng công ty thực cần thiết II NHỮNG KHÁI NIỆM CƠ BẢN VỀ CƠ SỞ DỮ LIỆU Kh i ni m c sở li u C s li u (CSDL) l s tập hợp c tổ ch c (c c u tr c) li u c liên qu n luận l v i nh u lưu tr thi t lưu tr thông tin ( ăng từ đĩ từ…) để c thể thỏ mãn yêu cầu kh i thác thông tin đồng thời củ nhiều người sử ụng h y nhiều chư ng trình ng ụng v i nhiều mục đích khác nh u Ví dụ: Để quản lý hoạt động học tập trường Đại học, quản lý liệu thông tin sinh viên, mơn học, điểm thi… Do đó, 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 hợp liệu có liên quan đến mang nhiều ý nghĩa, CSDL Hình: CSDL qu n l sinh viên Trước hết, cần nhấn mạnh CSDL phải tập hợp thơng tin mang tính hệ thống thông tin rời rạc, mối quan hệ với Các thơng tin phải có cấu trúc tập hợp thơng tin phải có khả đáp ứng nhu cầu khai thác nhiều người sử dụng cách đồng thời Đó đặc trưng CSDL C c tính chất c sở li u Một CSDL 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 -2- H qu n tr C s li u Biên soạn: Lê Th Thu cách trung thực vào CSDL Những thông tin đưa vào CSDL tạo thành không gian CSDL “thế giới nhỏ” Một CSDL tập hợp liệu liên kết với cách logic mang ý nghĩa cố hữu Một CSDL khơng phải tập hợp tuỳ tiện Một CSDL 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, CSDL 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 CSDL có cỡ tuỳ ý có độ phức tạp thay đổi Có CSDL gồm vài trăm ghi (như CSDL phục vụ việc quản lý lư ng c quan nhỏ), có CSDL có dung lượng lớn (như CSDL phục vụ cho việc tính cước điện thoại, quản lý nhân phạm vi tổng công ty lớn) Các CSDL 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 CSDL tạo trì cách thủ cơng Tin học hóa CSDL tài ngun thơng tin dùng chung cho nhiều người Bất kỳ người sử dụng mạng máy tính, thiết bị đầu cuối, ngun tắc có quyền truy nhập khai thác tồn hay phần liệu theo chế độ trực tuyến hay tư ng tác mà không phụ thuộc vào vị trí địa lý người sử dụng với tài nguyên CSDL hệ ứng dụng khai thác ngôn ngữ liệu chư ng trình ứng dụng để xử lý, tìm kiếm, tra cứu, sửa đổi, bổ sung hay loại bỏ liệu Tìm kiếm tra cứu thơng tin chức qua trọng phổ biến dịch vụ CSDL Hệ quản trị CSDL (Database Management System - DBMS) phần mềm điều khiển hoạt động truy nhập CSDL Khi người sử dụng đưa yêu cầu truy nhập ngôn ngữ liệu đó, HQTCSDL tiếp nhận thực thao tác CSDL lưu trữ Ưu điểm c sở li u Tổ chức lưu trữ liệu theo lý thuyết CSDL có ưu điểm sau: - Giảm bớt dư thừa liệu lưu trữ: Trong ứng dụng lập trình truyền thống, phư ng pháp tổ chức lưu trữ liệu vừa tốn kém, lãng phí nhớ thiết bị lưu trữ, vừa dư thừa thông tin lưu trữ Nhiều chư ng trình ứng dụng khác xử lý liệu nhau, dẫn đến dư thừa đáng kể liệu - Tổ chức lưu trữ liệu theo lý thuyết CSDL tránh không quán lưu trữ liệu bảo đảm tính tồn vẹn liệu: Nếu thuộc tính mơ tả nhiều tệp liệu khác lặp lại nhiều lần thực việc cập nhật, sửa đổi, bổ sung liệu khơng sửa hết nội dung mục Nếu liệu nhiều sai sót cập nhật, bổ sung lớn Khả xuất mâu thuẫn, không quán thông tin nhiều, dẫn đến không quán liệu lưu trữ Tất yếu kéo theo dị thường thông tin, thừa, thiếu mâu thuẫn thông tin - Tổ chức lưu trữ liệu theo lý thuyết CSDL triển khai đồng thời nhiều ứng dụng CSDL Điều có nghĩa ứng dụng khơng chia sẻ chung tài nguyên liệu mà CSDL triển khai đồng thời nhiều ứng dụng khác thiết bị đầu cuối khác - Tổ chức liệu theo lý thuyết CSDL thống tiêu chuẩn, thủ tục biện pháp bảo vệ, an toàn liệu Các hệ CSDL quản lý tập trung người hay nhóm người quản trị CSDL, hệ quản trị CSDL Người quản trị CSDL áp dụng thống tiêu chuẩn, quy định, thủ tục chung quy định thống mẫu biểu báo cáo, thời gian bổ sung, cập nhật liệu Điều làm dễ dàng cho cơng việc bảo trì liệu -3- H qu n tr C s li u Biên soạn: Lê Th Thu Người quản trị CSDL bảo đảm việc truy nhập tới CSDL, kiểm tra, kiểm soát quyền truy nhập người sử dụng Ngăn chặn truy nhập trái phép, sai quy định từ từ vào… Những vấn đề cần giải Để đạt hiệu sử dụng CSDL, ta cần giải vấn đề đặt sau đây: - Tính chủ quyền liệu: Do tính chia sẻ CSDL nên tính chủ quyền liệu bị lu mờ làm mờ nhạt tinh thần trách nhiệm, thể vấ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ó nghĩa 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 phép khai thác CSDL cách đồng thời nên cần phải có 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 (Novell Netware, Windows for Workgroup, WinNT…) có cung cấp c chế - Tranh chấp liệu: Nhiều người phép truy nhập vào tài nguyên liệu CSDL với mục đích khác xem, thêm, xóa sửa liệu, cần phải có c chế ưu tiên truy nhập liệu C chế ưu tiên thực việc cấp quyền ưu tiên cho người khai thác - người cấp quyền hạn ưu tiên cao h n ưu tiên truy nhập liệu trước; dựa thời điểm truy nhập - có u cầu truy xuất trước có quyền truy nhập liệu trước… - Đảm bảo 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ố điện đột xuất, phần đĩa lưu trữ CSDL bị hư hỏng v.v… Một số hệ điều hành mạng có cung cấp dịch vụ lưu ảnh đĩa cứng (c chế sử dụng đĩa cứng dự phòng - RAID), 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 luôn ổn định, CSDL thiết phải có c chế khơi phục liệu cố bất ngờ xảy Giá ph i tr cho ng ụng CSDL Như với định kinh doanh nào, ứng dụng theo hướng CSDL cần trả giá chịu vài rủi ro cần đến nhân chuyên sâu, chi phí quản lý thực hiện, giải va chạm tâm lý… - Nhu cầu nhân mới, chuyên môn: Cần phải thuê hay tự đào tạo chun gia cơng nghệ thơng tin để phân tích, thiết kế, thực CSDL tổ chức Mặc khác, công nghệ ngày phát triển nhanh khiến hệ thống CSDL thường xuyên cập nhật tri thức cho cán - Chi phí quản lý, thực hiện: Hệ thống quản trị CSDL nhiều người dùng thường lớn phức tạp, đòi hỏi nhiều người tham gia bảo trì Người ta cần tính đến chi phí thiết bị máy tính, chi phí phần mềm, chi phí truyền thơng - Chi phí chuyển đổi hệ thống: Trước áp dụng CSDL, tổ chức xử lý liệu theo phư ng pháp thủ công, hay sử dụng hệ thống xử lý tập tin Để chuyển công nghệ xử lý liệu sang cách tiếp cận mới, tổ chức cần có kinh phí chuyển mơ hình cũ sang mơ hình mới, chuyển đổi liệu cho phù hợp với môi trường - Va chạm quan điểm sử dụng CSDL: Trước CSDL áp dụng tổ chức, người ta cần thống mô tả liệu, khuôn dạng thể liệu… Sau hình thành CSDL, việc sử dụng liệu CSDL cần đạt hiệu Cần khuyến khích phận phát huy tốt hệ thống CSDL số phận muốn độc quyền thông tin hay e ngại dùng hệ thống tự động hố, có xu hướng giảm hiệu CSDL -4- H qu n tr C s li u Biên soạn: Lê Th Thu C c đối tượng sử dụng CSDL - Người sử dụng CSDL không chuyên lĩnh vực tin học CSDL, CSDL cần có cơng cụ người sử dụng khơng chun sử dụng để khai thác CSDL cần thiết - Chuyên viên Tin học biết khai thác CSDL: Những người xây dựng ứng dụng khác phục vụ cho mục đích khác CSDL - Người quản trị CSDL: Đây người hiểu biết tin học, hệ quản trị CSDL hệ thống máy tính Họ người tổ chức CSDL (khai báo cấu trúc CSDL, ghi nhận yêu cầu bảo mật cho liệu cần bảo vệ…), họ phải nắm rõ vấn đề kỹ thuật CSDL để phục hồi liệu có cố Họ người cấp quyền hạn khai thác CSDL, họ giải vấn đề tranh chấp liệu, có C c ứng dụng c sở li u Hiện nay, CSDL gắn liền với ứng dụng Tin học; chẳng hạn việc quản lý hệ thống thông tin c quan nhà nước, việc lưu trữ xử lý thông tin doanh nghiệp, lĩnh vực nghiên cứu khoa học, công tác giảng dạy, việc tổ chức thông tin đa phư ng tiện… -5- H qu n tr C s li u Biên soạn: Lê Th Thu  KI N THỨC TỔNG QUÁT CỦA HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU I HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU – HỆ CƠ SỞ DỮ LIỆU Kh i ni m h quản trị c sở li u Như biết, kích thước độ phức tạp CSDL khác Ví dụ: - Danh bạ điện thoại quốc gia, thành phố… chứa tới hàng triệu số thông tin cần thiết khách hàng - Trong trường Đại học có tới hàng ngàn sinh viên Nhà trường phải quản lý tất thông tin liên quan đến sinh viên như: Tên, ngày sinh, quê quán, địa chỉ, kết học tập… Ta thấy, nhớ vấn đề cần phải giải Tuy nhiên, vấn đề quan trọng h n lại cách thức tổ chức liệu CSDL để phục vụ cho việc truy cập, tìm kiếm, cập nhật… nhanh chóng an toàn h n Để giải tốt tất vấn đề đặt cho CSDL nêu trên, cần phải có hệ thống phần mềm chuyên dụng gọi hệ quản trị CSDL (Database Management System - DBMS) Đó cơng cụ hỗ trợ tích cực cho nhà phân tích thiết kế CSDL người khai thác CSDL Các khái niệm: Một h qu n tr CSDL l tập hợp chư ng trình gi p cho người sử ụng qu n l c u tr c v li u củ CSDL điều khiển truy xu t li u CSDL, trì khai thác CSDL Đ nh nghĩ CSDL: Tạo c u tr c li u tư ng ng v i mơ hình li u chọn o gồm vi c đặc t kiểu li u c u tr c v r ng uộc cho li u lưu tr CSDL Xây ng CSDL: L trình lưu tr h qu n tr CSDL kiểm soát li u phư ng ti n lưu tr Th o tác CSDL: B o gồm ch c truy v n CSDL để l y r li u cụ thể cập nhật CSDL để ph n ánh th y đổi th gi i nhỏ v tạo r áo cáo từ li u Cho đến có nhiều hệ quản trị CSDL mạnh đưa thị trường như: Visual FoxPro, Microsoft Access, SQL Server, DB2, Sybase, Paradox, Informix, Oracle… với chất lượng khác C c chức h quản trị c sở li u Một hệ quản trị CSDL thực chức sau: a Cung c p môi trường tạo lập CSDL Một hệ quản trị CSDL phải cung cấp môi trường cho người dùng dễ dàng khai báo kiểu liệu, cấu trúc liệu thể thông tin ràng buộc liệu Với hệ quản trị CSDL nay, người dùng tạo lập CSDL thông qua giao diện đồ hoạ Để thực chức này, hệ quản trị CSDL cung cấp cho người dùng ngôn ngữ định nghĩa liệu Ta hiểu ngơn ngữ định nghĩa liệu thực chất hệ thống ký hiệu để mô tả CSDL b Cung c p môi trường cập nhật v kh i thác -6- li u H qu n tr C s li u Biên soạn: Lê Th Thu Ngôn ngữ để người dùng diễn tả yêu cầu cập nhật hay tìm kiếm, kết xuất thông tin gọi ngôn ngữ thao tác liệu Thao tác liệu gồm: - Cập nhật: Nhập thêm, sửa, xố liệu - Khai thác: Tìm kiếm, kết xuất liệu Trong thực tế, ngôn ngữ định nghĩa liệu ngôn ngữ thao tác liệu thành phần ngôn ngữ CSDL Ngôn ngữ CSDL sử dụng phổ biến SQL (Structured Query Language) c Cung c p cơng cụ kiểm sốt điều khiển truy cập v o CSDL Để góp phần đảm bảo yêu cầu đặt cho hệ CSDL, hệ quản trị CSDL phải có chư ng trình thực nhiệm vụ sau: - Phát ngăn chặn truy cập khơng phép: Chức góp phần đáp ứng u cầu an tồn bảo mật thơng tin - Duy trì tính qn liệu - Tổ chức điều khiển truy cập đồng thời để bảo vệ ràng buộc toàn vẹn tính qn - Khơi phục CSDL có cố phần cứng hay phần mềm - Quản lí mơ tả liệu Nói chung, hệ quản trị CSDL cung cấp chư ng trình nêu trên, hệ quản trị CSDL khác có chất lượng khả khác đáp ứng nhu cầu thực tế Chẳng hạn, hệ quản trị CSDL dùng máy tính cá nhân cung cấp phư ng tiện bảo vệ liệu, trì tính qn liệu, khơi phục liệu cách hạn chế Trong đó, hệ quản trị CSDL lớn, phục vụ lúc cho nhiều người dùng, phư ng tiện kể có thêm chức khác xử lí truy cập đồng thời… Các hệ quản trị CSDL phát triển theo hướng đáp ứng đòi hỏi ngày cao h n người dùng, chức hệ quản trị CSDL ngày mở rộng h n C c thành phần h quản trị c sở li u Các hệ CSDL có thành phần sau: - Ngôn ngữ giao tiếp người sử dụng CSDL, bao gồm: + Ngôn ngữ mô tả liệu (Data Definition Language - DDL): Cho 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 (Data Query Language - DQL): Cho phép người khai thác (chuyên nghiệp không chun) sử dụng để tìm kiếm 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 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): Dùng để ghi nhận thành phần cấu trúc CSDL, mô tả ánh xạ liên kết, mật mã, quyền hạn sử dụng, chư ng trình ứng dụng… -7- H qu n tr C s li u Biên soạn: Lê Th Thu - Có biện pháp phân quyền 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 Mỗi hệ quản trị CSDL cài đặt c chế riêng để giải vấn đề Một số biện pháp sau sử dụng: + Cấp quyền ưu tiên cho người sử dụng (người quản trị CSDL thực hiện) + Đánh dấu yêu cầu truy xuất liệu, phân chia thời gian, người có u cầu trước có quyền truy xuất liệu trước - Hệ quản trị CSDL phải có 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 chuyên - Hệ quản trị CSDL phải bảo đảm tính độc lập liệu chư ng trình: Khi có thay đổi liệu (như sửa đổi cấu trúc lưu trữ bảng liệu…) chư ng trình ứng dụng chạy CSDL không cần phải viết lại, hay không làm ảnh hưởng đến người sử dụng khác H c sở li u Người ta gọi CSDL hệ quản trị CSDL thuật ngữ chung hệ CSDL Môi trường hệ CSDL mô tả hình vẽ đây: Hình: H c s li u Hệ CSDL hệ thống gồm người dùng, phần mềm ứng dụng, hệ quản trị CSDL CSDL Trong đó, người dùng cần thao tác trực tiếp với chư ng trình ứng dụng, chư ng trình ứng dụng thơng qua hệ quản trị CSDL để truy cập CSDL thực công việc bên dưới, đáp ứng yêu cầu người dùng II MƠ HÌNH CƠ SỞ DỮ LIỆU Kh i ni m m h nh c sở li u Các loại cấu trúc CSDL mối liên hệ chúng đóng vai trị lớn việc xác định tính hiệu hệ quản trị CSDL Vì vậy, thiết kế CSDL trở thành hoạt động môi trường CSDL Việc thiết kế CSDL thực đ n giản h n nhiều ta sử dụng mơ hình Các mơ hình trừu tượng đ n giản kiện giới thực Các trừu tượng cho phép ta khảo sát đặc điểm thực thể mối liên hệ tạo thực thể Việc thiết kế mơ hình tốt đưa CSDL tốt c sở có ứng dụng tốt Một mơ hình CSDL tập hợp khái niệm, luật hay quy tắc dùng để biểu diễn, mô tả cách trừu tượng cấu trúc CSDL Cấu trúc CSDL kiểu liệu, -8- H qu n tr C s li u Biên soạn: Lê Th Thu mối liên kết ràng buộc phải tuân theo liệu Nhiều mơ hình cịn có thêm tập hợp phép toán c để đặc tả thao tác CSDL Thơng qua mơ hình liệu, người thiết kế mơ tả tồn cảnh CSDL thiết kế bao gồm: - Các đối tượng, thực thể quản lý - Các mối quan hệ đối tượng - Các ràng buộc liệu thể quy tắc quản lý ảnh hưởng đến đối tượng quản lý C c m h nh c sở li u Có nhiều mơ hình đề nghị, khảo sát mơ hình đặc trưng nhất: a Mơ hình phân c p Mơ hình phân cấp hay mơ hình CSDL dạng tổ chức theo cấu trúc từ xuống giống lộn ngược Mỗi nút tư ng ứng với kiểu liệu, có nhiều trường, mô tả thực thể nhánh tạo nên liên kết kiểu liệu với kiểu liệu khác Mỗi nút có nút cha nhiều nút con, trừ nút gốc khơng có nút cha Ví dụ mơ hình phân cấp quản lý nhân Cơng ty: Phịng ban Dự án Nhân viên Kỹ Cấp Thiết bị Hình: Mơ hình phân c p Tuy nhiên, mơ hình thể quan hệ 1-n (một-nhiều), tức mơ tả trường hợp nút cha có nhiều nút phịng có nhiều nhân viên hay phịng có nhiều dự án, cịn trường hợp ngược lại khơng Chẳng hạn dự án mà thuộc nhiều phòng dự án phải lưu nhiều n i khác Điều gây dư thừa liệu lãng phí khơng gian lưu trữ Điểm bật thủ tục truy xuất đến đối tượng mơ hình phân cấp đường dẫn từ gốc đến phần tử cần xét phân cấp b Mơ hình mạng Mơ hình mạng biểu diễn đồ thị có hướng Dữ liệu biểu diễn tập ghi, mối quan hệ biểu diễn mối nối (links) xem trỏ Xuất phát từ đối tượng (biểu diễn ghi), nối với nút để biểu diễn liên kết 1-n thông qua trỏ liên kết, có nhiều mối quan hệ đến đối tượng khác Sự khác hệ thống mạng hệ thống phân cấp mơ hình mạng khơng ràng buộc số hướng liên kết thiết lặp nút -9- H qu n tr C s li u Biên soạn: Lê Th Thu Ví dụ 1: Mơ hình quản lý nhân Cơng ty Phịng ban Nhân viên Dự án Cấp Thiết bị Ví dụ 2: Người quản lý Cơng chức Quản lý N i làm Ngân hàng Tài khoản - Ngân hàng Khách hàng Tài khoản Tài khoản - Khách hàng Chủ tài khoản Đăng ký c Mơ hình qu n h C sở liệu quan hệ xây dựng theo lý thuyết E.F.Codd giới thiệu năm 1970 Thuật ngữ “quan hệ” bảng liệu chiều Codd gọi bảng quan hệ Mơ hình quan hệ từ năm 1980 trở thành mơ hình dùng rộng rãi để phát triển hệ quản trị CSDL Đặc điểm mơ hình liệu quan hệ: - Dữ liệu thể bảng Các bảng gọi “quan hệ” Mỗi bảng gồm dịng cột, cột có tên Các dòng gọi “bộ”, cột “thuộc tính” - Mỗi dịng cho thơng tin đối tượng cụ thể, bao gồm giá trị tư ng ứng với cột, giá trị thể thơng tin thuộc tính đối tượng đó, tên thuộc tính tên cột mà giá trị hiển thị - Mối liên kết đối tượng thể mối liên kết bảng nhờ vào xuất trùng lặp số thuộc tính h n bảng Ví dụ: Ta có bảng liệu CSDL sau: KHACH_HANG MaKH Khách hàng Khách hàng Khách hàng HoTen Nguyễn Văn Quang Hồ Hải Hà Dư ng Quốc Toản - 10 - Tuoi DiaChi 16 68, Nguyễn Du 18 23/10, Nguyễn Trãi 21 32/7, Nguyễn Trãi H qu n tr C s li u Biên soạn: Lê Th Thu NOISINH Text 15 N i sinh MAKHOA Text Mã khoa HOCBONG Number Long Integer Học bổng HINHANH OLE Object Hình ảnh Bảng KETQUA Field Name Data Type Field Size Format Caption MASV Text Mã sinh viên MAMH Text Mã môn học DIEM Number Single Điểm B Thiết lập mối quan h (Relationships) C Ràng buộc li u (Input Mask / Validation) Mã sinh viên bắt buộc có 03 ký tự, ký tự đầu chữ cái, ký tự sau chữ số Mã khoa bắt buộc có 02 ký tự chữ Trường liệu Mã khoa sinh viên không để trống Ngày sinh không phép nhập sau ngày Học bổng không phép nhập số âm Giá trị mặc định Học bổng Điểm thi phải số phạm vi từ đến 10 Số tín môn học phải từ trở lên D Nhập li u cho c c bảng Bảng SINHVIEN MASV HOSV TEN SV PHAI NGAY SINH NOISINH MA KHOA HOC BONG A01 Nguyễn Thu Hải No 23/02/1995 Đồng Nai AV 100000 A02 Trần Văn Chính Yes 24/12/1997 Đồng Nai TH 100000 A03 Lê Thu Bạch Yến No 21/02/1996 Lâm Đồng AV 140000 A04 Trần Anh Tuấn Yes 08/12/1998 Long An LS 80000 A05 Trần Thanh Triều Yes 01/02/1995 Lâm Đồng VL 80000 - 102 - H qu n tr C s li u Biên soạn: Lê Th Thu B01 Trần Thanh Mai No 20/12/1996 Bến Tre TH 200000 B02 Trần Thị Thu Thủy No 13/02/1997 Bình Thuận TH 30000 B03 Trần Thị Thanh No 31/12/1996 Bình Thuận TH 50000 Bảng KETQUA MASV MAMH Bảng MONHOC DIEM MAMH TENMH SOTC A01 01 10 01 Nhập mơn máy tính A01 02 02 Trí tuệ nhân tạo A01 05 03 Truyền tin A01 06 04 Đồ họa A02 01 05 Văn phạm A03 02 06 Đàm thoại A03 04 10 07 Vật lý nguyên tử A03 06 A04 02 Bảng KHOA A04 04 MAKHOA TENKHOA B01 01 AV Anh văn B01 04 LS Lịch sử B02 03 TH Tin học B02 04 TR Triết B03 02 10 VL Vật lý B03 03 SH Sinh học E Sắp xếp, trích lọc li u bảng (Sort / Filter) Trong bảng SINHVIEN, xếp liệu tăng dần theo Mã khoa, khoa tăng dần theo Tên sinh viên Trong bảng SINHVIEN, lọc sinh viên thuộc khoa có mã “AV” Trong bảng SINHVIEN, lọc sinh viên khơng thuộc khoa có mã “TH” Trong bảng SINHVIEN, lọc sinh viên thuộc khoa có mã “TH” có Học bổng lớn h n 100,000 Trong bảng SINHVIEN, lọc sinh viên có tên bắt đầu chữ “T” Trong bảng SINHVIEN, lọc sinh viên có ký tự thứ phần tên “H” Trong bảng SINHVIEN, lọc sinh viên mà phần tên có chứa chữ “T” Trong bảng SINHVIEN, lọc sinh viên có ngày sinh tháng 12 F Truy vấn (Query)  Truy vấn lựa chọn công cụ QBE - 103 - H qu n tr C s li u Biên soạn: Lê Th Thu Hiển thị tất sinh viên theo thứ tự tăng dần Tên, bao gồm thông tin: Mã sinh viên, Họ tên sinh viên, Ngày sinh, N i sinh, Học bổng Liệt kê danh sách sinh viên, tên có chứa chữ N Lập danh sách sinh viên có ký tự đầu phần tên nằm khoảng từ A đến M Danh sách gồm thông tin: Mã sinh viên, Họ tên sinh viên, Ngày sinh, N i sinh Gợi ý: Left([TENSV],1) Between A And M Lập danh sách sinh viên khoa “Anh văn” khoa “Tin học”, gồm thông tin: Mã sinh viên, Tên khoa, Phái Liệt kê nam sinh viên khoa có tên “Tin học”, gồm thông tin: Mã sinh viên, Họ tên sinh viên, Phái, Tên khoa Cho biết sinh viên có ngày sinh từ ngày 01/01/1996 đến ngày 01/06/1996, gồm thông tin: Mã sinh viên, Họ tên sinh viên, Ngày sinh, N i sinh Lập danh sách sinh viên sinh năm 1997 Danh sách gồm thông tin: Mã sinh viên, Họ tên sinh viên, Ngày sinh Lập danh sách sinh viên có ngày tháng năm sinh từ tháng đến tháng Danh sách gồm thông tin: Mã sinh viên, Họ tên sinh viên, Ngày sinh Gợi ý: Month([NGAYSINH]) Between And Lập danh sách sinh viên gồm thông tin: Mã sinh viên, Họ tên, Phái, Tuổi 10 Lập danh sách gồm: Mã sinh viên, Họ tên, Ngày sinh sinh viên có sinh nhật ngày hôm (ngày hành hệ thống) 11 Lập bảng điểm mơn “Trí tuệ nhân tạo” sinh viên khoa “Tin học”, gồm thông tin: Họ tên, Ngày sinh, Điểm Danh sách xếp tăng dần theo Tên sinh viên 12 Lập bảng điểm theo mẫu sau: Mã sinh viên, Họ tên, Tên môn học, Điểm, Kết Biết Kết “Đậu” điểm từ trở lên, ngược lại Kết “Rớt”  Truy vấn truyền tham số Trong bảng SINHVIEN, xem danh sách sinh viên theo Mã khoa truyền tham số Trong bảng SINHVIEN, xem danh sách sinh viên theo Tên sinh viên truyền tham số Tìm xác tên tìm gần theo Tên sinh viên Trong bảng SINHVIEN, xem danh sách sinh viên theo Ngày sinh (hoặc năm sinh) Trong bảng SINHVIEN, xem danh sách thông tin sinh viên theo Ngày sinh khoảng giá trị truyền tham số (Xem danh sách sinh viên có ngày sinh từ [Ngày 1] đến [Ngày 2], với [Ngày 1] [Ngày 2] nhập từ bàn phím) Xem danh sách sinh viên theo Mã sinh viên truyền tham số, danh sách gồm thông tin: Họ tên, Phái, Ngày sinh, N i sinh, Tên khoa, Học bổng Xem bảng điểm sinh viên theo Mã sinh viên truyền tham số, danh sách gồm thông tin: Mã sinh viên, Họ tên, Tên môn học, Điểm thi, Kết (Đậu/Rớt)  Truy vấn cập nhật (Update Query) Tạo Query tăng học bổng 10% cho tất sinh viên Tạo Query tăng học bổng 10% cho sinh viên thuộc khoa có tên “Tin học” Tạo Query tăng số tín thêm cho môn học Tạo Query tăng thêm điểm thi cho sinh viên thi mơn có tên “Văn phạm” Tạo Query tăng thêm điểm thi cho sinh viên khoa “Tin học” thi môn tên “Đồ họa” - 104 - H qu n tr C s li u Biên soạn: Lê Th Thu Tạo Query tăng học bổng thêm 100000 cho sinh viên đạt điểm 10 mơn học có tên “Nhập mơn máy tính”  Truy vấn tính tốn thống kê liệu (Total / Group by) Cho biết điểm thi cao mơn học “Nhập mơn máy tính” Cho biết trung bình điểm thi theo mơn, gồm thơng tin: Mã mơn, Tên mơn, Trung bình điểm thi Danh sách số môn thi sinh viên, gồm thông tin: Họ tên sinh viên, Tên khoa, Tổng số môn thi Cho biết tổng số sinh viên khoa, gồm thông tin: Tên khoa, Tổng số sinh viên Cho biết điểm cao sinh viên, gồm thông tin: Họ tên, Điểm cao Cho biết tổng số sinh viên nam Khoa bao nhiêu, thông tin gồm: MaKhoa, TenKhoa, TongSVNam Cho biết tổng số sinh viên nữ Khoa bao nhiêu, thông tin gồm: MaKhoa, TenKhoa, TongSVNu Cho biết độ tuổi trung bình sinh viên Khoa thông tin gồm: MaKhoa, TenKhoa, TuoiTB Gợi ý: Avg(Year(Date())-Year([NGAYSINH])) Hiển thị bảng điểm tổng hợp sinh viên gồm thông tin: MaSV, HoTenSV, DiemTB, TongSoMonThi Trong DiemTB điểm trung bình Môn thi, TongSoMonThi tổng số môn thi sinh viên Điểm TB lấy số lẻ 10 Cho biết Tổng Sinh viên Môn học thông tin gồm: TenMH, TongSoSV  Truy vấn sử dụng Query Wizard Lập danh sách gồm Mã sinh viên, Họ tên sinh viên có N i sinh với Lập danh sách gồm Mã sinh viên, Họ tên sinh viên có Tên với Lập danh sách gồm Mã sinh viên, Họ tên sinh viên chưa thi môn học Lập danh sách gồm Mã khoa, Tên khoa khoa mà chưa có sinh viên theo học Lập danh sách gồm Mã môn, Tên môn mơn học mà chưa có sinh viên thi  Truy vấn tổng hợp / Truy vấn chéo (Crosstab Query) Danh sách điểm môn sinh viên: Điểm mơn trung bình điểm mơn Làm trịn Điểm trung bình lấy số lẻ - 105 - H qu n tr C s li u Biên soạn: Lê Th Thu Thống kê điểm môn, số môn đậu, số môn rớt sinh viên Gợi ý: Số môn đậu: Sum(IIf([DIEM]>=5,1,0)) G Biểu mẫu (Form) Thiết kế Form xem điểm sinh viên: Yêu cầu: - Tạo nút di chuyển đến ghi tiếp theo, đến ghi trước - Tạo nút Form - Tạo công thức xét kết quả, điểm từ trở lên kết “Đậu”, ngược lại ghi kết “Thi lại” Thiết kế Form nhập thông tin sinh viên: - 106 - H qu n tr C s li u Biên soạn: Lê Th Thu Yêu cầu: Tạo nút thoát Form, nút di chuyển đến ghi tiếp theo, ghi trước đó… Thiết kế Form xem điểm sinh viên theo dạng Form phụ: Yêu cầu: - Tạo nút thoát Form, nút di chuyển đến ghi tiếp theo, ghi trước - Tạo cơng thức tính Điểm trung bình tích lũy mơn sinh viên ĐTB = (Điểm môn * TC môn + Điểm môn * TC môn + …) / Tổng số tín tích lũy - Tạo công thức xét kết xếp loại dựa theo Điểm trung bình, ĐTB từ trở lên kết “Giỏi”, ĐTB từ trở lên kết “Khá”, ĐTB từ trở lên kết “Trung bình”, ngược lại (ĐTB

Ngày đăng: 29/12/2022, 15:25

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

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

Tài liệu liên quan