Bài giảng Tin học đại cương: Chương 5 - Học viện Nông nghiệp Việt Nam

15 24 0
Bài giảng Tin học đại cương: Chương 5 - Học viện Nông nghiệp Việt Nam

Đ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 Tin học đại cương - Chương 5: Cơ sở dữ liệu cung cấp cho người học các kiến thức: Cơ sở dữ liệu, hệ quản trị cơ sở dữ liệu, ngôn ngữ truy vấn SQL, lợi ích của hệ cơ sở dữ liệu, các mức thể hiện của cơ sở dữ liệu. Mời các bạn cùng tham khảo nội dung chi tiết.

03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam HỌC VIỆN NÔNG NGHIỆP VIỆT NAM Bài giảng Tin học đại cương KHOA CÔNG NGHỆ THÔNG TIN NỘI DUNG 5.1 Cơ sở liệu 5.2 Hệ quản trị sở liệu 5.3 Ngôn ngữ truy vấn SQL Chương CƠ SỞ DỮ LIỆU 08/02/2017 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5.1 CƠ SỞ DỮ LIỆU 5.1.1 KHÁI NIỆM CƠ SỞ DỮ LIỆU Chương Cơ sở liệu • Cơ sở liệu (database): tập hợp liệu có liên quan với nhau, chứa thơng tin tổ chức (như trường đại học, ngân hàng, bệnh viện, công ty, …) lưu trữ thiết bị nhớ thứ cấp (băng từ, đĩa từ, …) để đáp ứng nhu cầu khai thác thông tin nhiều người sử dụng với nhiều mục đích khác 5.1.1 Khái niệm sở liệu 5.1.2 Các mức thể sở liệu 5.1.3 Mơ hình liệu quan hệ 5.1.4 Hệ sở liệu 5.1.5 Lợi ích hệ sở liệu 08/02/2017 Chương Cơ sở liệu 08/02/2017 Chương Cơ sở liệu 03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương VÍ DỤ VỀ CSDL VÍ DỤ VỀ CSDL • Bảng Sinh viên: Xét ví dụ CSDL sinh viên • Bảng Khoa: • Bảng Lớp: Chương Cơ sở liệu 08/02/2017 Chương Cơ sở liệu Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương VÍ DỤ VỀ CSDL 5.1.2 CÁC MỨC THỂ HIỆN CỦA CSDL • Mức vật lý (mức trong): - Cho biết cách thức lưu trữ liệu nhớ nào? Ở đâu? Cần mục gì? Việc truy xuất nào? • Mức logic (mức khái niệm): - Trả lời câu hỏi cần phải lưu trữ loại liệu gì? - Mối quan hệ chúng nào? • Mức khung nhìn (mức ngồi): - Là mức NDC chương trình ứng dụng - Mỗi NDC hay chương trình ứng dụng nhìn CSDL theo góc độ (khung nhìn) khác • Bảng Môn học: • Bảng Kết quả: 08/02/2017 08/02/2017 Chương Cơ sở liệu 08/02/2017 Chương Cơ sở liệu 03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5.1.2 CÁC MỨC THỂ HIỆN CỦA CSDL 5.1.3 MƠ HÌNH DỮ LIỆU QUAN HỆ • Mơ hình liệu: tập hợp khái niệm ký pháp dùng để mô tả liệu, mối quan hệ liệu, ràng buộc liệu tổ chức • Các mơ hình liệu: - Mơ hình liệu quan hệ (Relational Data Model) - Mơ hình liệu mạng (Network Data Model) - Mơ hình liệu phân cấp (Hierarchical Data Model) - Mơ hình liệu thực thể liên kết (Entity Relationship Data Model) - Mơ hình liệu hướng đối tượng (Object Oriented Data Model) - … 08/02/2017 Chương Cơ sở liệu Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương • Mơ hình liệu quan hệ đề xuất E.F.Codd vào năm 1970 - 1972 • Biểu diễn liệu dạng bảng (quan hệ)  Một CSDL quan hệ thường gồm nhiều bảng, bảng chứa liệu tập thực thể chia thành hàng (bản ghi – record) cột (trường field) • Cơ sở liệu xây dựng mơ hình liệu quan hệ gọi CSDL quan hệ Chương Cơ sở liệu 10 Các khái niệm mơ hình liệu quan hệ 5.1.3 MƠ HÌNH DỮ LIỆU QUAN HỆ 08/02/2017 Chương Cơ sở liệu 08/02/2017 11 • • • • • • Quan hệ Lược đồ Thuộc tính Bộ Khóa Khóa ngoại 08/02/2017 Chương Cơ sở liệu 12 03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương Quan hệ Lược đồ (schema) • Dữ liệu CSDL quan hệ tổ chức thành bảng chiều, bảng quan hệ • Tên quan hệ tập thuộc tính gọi lược đồ quan hệ • Cách biểu diễn: Tên quan hệ (danh sách thuộc tính) • Ví dụ: lược đồ quan hệ: Khoa(MaKhoa, TenKhoa, SoDT) 08/02/2017 Chương Cơ sở liệu 13 08/02/2017 Chương Cơ sở liệu 14 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương Thuộc tính Bộ (tuble) • Thuộc tính tính chất riêng biệt đối tượng cần lưu trữ CSDL để phục vụ cho việc khai thác liệu đối tượng • Thuộc tính đặc trưng bởi: - Tên gọi: thuộc tính đặt tên theo cách gợi nhớ theo quy định - Kiểu liệu: thuộc tính phải thuộc kiểu liệu định - Miền giá trị (domain): tập tất giá trị mà thuộc tính nhận • Mỗi dịng quan hệ, trừ dòng tiêu đề ghi tên thuộc tính, gọi (bản ghi record) • Các khơng trùng quan hệ 08/02/2017 Chương Cơ sở liệu 15 08/02/2017 Chương Cơ sở liệu 16 03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương Khóa (key – khóa chính) Khóa ngoại (foreign key) • Là tập gồm thuộc tính tối thiểu để xác định tính quan hệ • Ví dụ: - Quan hệ Khoa(MaKhoa, TenKhoa, SoDT)  chọn MaKhoa làm khóa - Quan hệ Ketqua(MaSV, MaMH, Diem)  cặp {MaSV, MaMH} làm khóa • Là tập gồm hay nhiều thuộc tính khơng phải khóa lược đồ quan hệ lại khóa lược đồ quan hệ khác • Dùng để biểu thị mối liên kết quan hệ với quan hệ khác mơ hình quan hệ • Ví dụ: KHOA(Makhoa, Tenkhoa, SoDT) LOP(MaLop, TenLop, Makhoa)  Trong quan hệ LOP, Makhoa khóa ngoại 08/02/2017 Chương Cơ sở liệu 17 Chương Cơ sở liệu Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5.1.4 HỆ CƠ SỞ DỮ LIỆU 5.1.5 LỢI ÍCH CỦA HỆ CƠ SỞ DỮ LIỆU • Là hệ thống gồm thành phần: - Cơ sở liệu - Người sử dụng CSDL: người có quyền truy nhập hợp pháp vào CSDL (người dùng cuối, người viết chương trình ứng dụng, người quản trị CSDL) - Hệ quản trị CSDL - Phần cứng: thiết bị nhớ thứ cấp sử dụng để lưu trữ CSDL 08/02/2017 08/02/2017 Chương Cơ sở liệu 19 18 • Tổ chức liệu theo hướng tiếp cận hệ tập tin 08/02/2017 Chương Cơ sở liệu 20 03/02/2018 • - Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5.1.5 LỢI ÍCH CỦA HỆ CƠ SỞ DỮ LIỆU 5.1.5 LỢI ÍCH CỦA HỆ CƠ SỞ DỮ LIỆU • Tổ chức liệu dạng CSDL dùng chung Hạn chế hướng tiếp cận hệ tập tin Dữ liệu lưu trữ dư thừa khơng qn Khó khăn truy xuất, chia sẻ liệu Khó bảo mật … 08/02/2017 Chương Cơ sở liệu 21 08/02/2017 Chương Cơ sở liệu Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5.1.5 LỢI ÍCH CỦA HỆ CƠ SỞ DỮ LIỆU 5.2 HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU • Giảm bớt dư thừa liệu lưu trữ • Tránh không quán lưu trữ liệu bảo đảm tính tồn vẹn liệu • Có thể triển khai đồng thời nhiều ứng dụng CSDL • Thống tiêu chuẩn, thủ tục biện pháp bảo vệ, an toàn liệu  Cho phép tổ chức, quản lý liệu cách hiệu 08/02/2017 Chương Cơ sở liệu 23 22 5.2.1 Khái niệm 5.2.2 Chức Hệ QTCSDL 5.2.3 Phân loại Hệ QTCSDL 08/02/2017 Chương Cơ sở liệu 24 03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5.2.1 KHÁI NIỆM 5.2.2 CHỨC NĂNG CỦA HỆ QUẢN TRỊ CSDL • Hệ quản trị sở liệu (Database Management System - DBMS): phần mềm thiết kế cho phép tạo lập, lưu trữ khai thác thông tin CSDL cách thuận lợi > Hệ QTCSDL cung cấp môi trường thuận lợi, đơn giản hiệu để người sử dụng tạo lập, lưu trữ thao tác CSDL mà khơng cần quan tâm nhiều đến thuật tốn chi tiết cách biểu diễn liệu nhớ 08/02/2017 Chương Cơ sở liệu 25 • • • - Cung cấp môi trường tạo lập sở liệu Cung cấp môi trường cập nhật khai thác liệu Cập nhật: thêm, xóa, sửa liệu Khai thác: xếp, tìm kiếm, kết xuất báo cáo, … Cung cấp cơng cụ kiểm sốt, điều khiển việc truy cập vào CSDL: Phát ngăn chặn truy cập trái phép Duy trì tính qn liệu Tổ chức, điều khiển truy cập đồng thời Khôi phục CSDL gặp cố Quản lý mô tả liệu 08/02/2017 Chương Cơ sở liệu Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5.2.3 PHÂN LOẠI HỆ QUẢN TRỊ CSDL 5.2.3 PHÂN LOẠI HỆ QUẢN TRỊ CSDL • Chia thành loại: - XML DBMS (eXtensible Markup Language Database Management System): phù hợp cho liệu định dạng XML - ODBMS (Object Database Management System): phù hợp cho mơ hình CSDL hướng đối tượng - RDBMS (Relational Database Management System): phù hợp cho mô hình CSDL quan hệ 08/02/2017 Chương Cơ sở liệu 27 • - 26 Một số hệ quản trị CSDL phổ biến: DB2 Microsoft SQL Server Microsoft Access MySQL SQLite 08/02/2017 Chương Cơ sở liệu 28 03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5.3 NGÔN NGỮ TRUY VẤN SQL 5.3 NGƠN NGỮ TRUY VẤN SQL • SQL – Structured Query Language: ngôn ngữ truy vấn dựa đại số quan hệ • Được xem ngôn ngữ chuẩn cho phép người dùng giao tiếp với CSDL • Cho phép thực thi thao tác với CSDL: tạo, thêm, xóa, sửa, truy vấn 08/02/2017 Chương Cơ sở liệu 29 • Các thành phần ngơn ngữ SQL: - Ngơn ngữ định nghĩa liệu (Data Definition Language – DDL): cung cấp câu lệnh cho phép định nghĩa lược đồ quan hệ, ràng buộc toàn vẹn liệu, cho phép sửa, xóa cấu trúc quan hệ - Ngơn ngữ thao tác liệu (Data Manipullation Language-DML): cho phép khai thác CSDL với thao tác tìm kiếm, trích rút, tổng hợp, thêm, sửa, xóa liệu - Ngơn ngữ kiểm soát (quản lý) liệu (Data Control Language-DCL): bao gồm câu lệnh đảm bảo tính an tồn toàn vẹn liệu, cấp phát quyền truy cập vào liệu 08/02/2017 Chương Cơ sở liệu Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5.3.1 CÂU LỆNH TRUY VẤN DỮ LIỆU Cú pháp tổng quát Cú pháp tổng quát Dạng đơn giản Dấu* Mệnh đề WHERE Truy vấn từ nhiều Bảng Mệnh đề ORDER BY Mệnh đề GROUP BY Mệnh đề HAVING Phát biểu Select với AS 10 Phát biểu Select với DISTINCT 11 Truy vấn 08/02/2017 Chương Cơ sở liệu 30 SELECT FROM WHERE GROUP BY HAVING ORDER BY 31 08/02/2017 Chương Cơ sở liệu 32 03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương Dạng đơn giản Dấu * • Cú pháp: SELECT FROM Lấy số cột bảng • Ví dụ: Lấy mã sinh viên, họ đệm tên sinh viên bảng SINHVIEN SELECT MaSV, Hodem, Ten FROM SINHVIEN; 08/02/2017 Chương Cơ sở liệu 33 • Dấu * đại diện cho tất cột SELECT * FROM • Ví dụ: Lấy danh sách khoa SELECT * FROM KHOA; 08/02/2017 Chương Cơ sở liệu Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 34 Mệnh đề WHERE Mệnh đề WHERE • Dùng để đặt điều kiện lấy liệu SELECT FROM WHERE Ví dụ: lấy mã sinh viên, họ đệm tên sinh viên nữ SELECT MaSV, Hodem, Ten FROM SINHVIEN WHERE Gioitinh = "Nữ"; • Các phép tốn mệnh đề WHERE: - So sánh: >, =, từ bảng SINHVIEN SELECT SINHVIEN.MaLop, TenLop, COUNT(SINHVIEN.MaSV) AS Sosinhvien FROM SINHVIEN, LOP WHERE SINHVIEN.MaLop = LOP.MaLop GROUP BY SINHVIEN.MaLop, TenLop HAVING COUNT(SINHVIEN.MaSV)>2 08/02/2017 Chương Cơ sở liệu 45 • Đặt lại tên trường hiển thị kết • Ví dụ: Hiển thị thông tin sinh viên với kết học tập họ Khi hiển thị cột Diem đổi tên thành cột DiemTB SELECT SINHVIEN.MaSV, Hodem, Ten, Ngaysinh, Gioitinh, TenMH, Diem as DiemTB FROM SINHVIEN, KETQUA, MONHOC WHERE SINHVIEN.MaSV = KETQUA.MaSV AND KETQUA.MaMH = MONHOC.MaMH; 08/02/2017 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 10 Phát biểu Select với DISTINCT Chương Cơ sở liệu 46 11 Truy vấn • Nếu kết truy vấn có nhiều ghi trùng nhau, để lấy mẫu tin ta dùng DISTINCT • Ví dụ: In danh sách lớp bảng SINHVIEN SELECT DISTINCT MALOP FROM SINHVIEN; 08/02/2017 Chương Cơ sở liệu 47 • Đơi ta cần sử dụng kết câu truy vấn để làm điều kiện cho câu truy vấn khác, ta gọi truy vấn • Khi thực hiện, truy vấn thực trước, lấy kết để thực truy vấn lớn 08/02/2017 Chương Cơ sở liệu 48 12 03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 11 Truy vấn 11 Truy vấn • Dạng tổng quát: SELECT FROM WHERE … IN ( NOT IN, =, , …) (SELECT FROM WHERE) Chương Cơ sở liệu 08/02/2017 • Ví dụ: Hiển thị thơng tin sinh viên học học lại môn học SELECT distinct Sinhvien.MaSV, Hodem, Ten, Ngaysinh FROM SINHVIEN, KETQUA WHERE (SINHVIEN.MaSV=KETQUA.MaSV) AND SINHVIEN.MaSV not IN (SELECT distinct MaSV FROM KETQUA WHERE Diem [WHERE ]; • Ý nghĩa: - Giá trị cột , ghi thoả mãn điều kiện sau WHERE sửa đổi thành , , … - Nếu mệnh đề WHERE tất ghi bảng sửa đổi 08/02/2017 Chương Cơ sở liệu 56 14 03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương Lệnh sửa ghi Lệnh xóa ghi • Ví dụ: sửa hộ sinh viên từ Hà Tây thành Hà Nội UPDATE SINHVIEN SET Tinh = "Hà Nội" WHERE Tinh = "Hà Tây"; 08/02/2017 Chương Cơ sở liệu 57 • Cú pháp: DELETE FROM [WHERE ]; • Ý nghĩa: - Các ghi thoả mãn điều kiện WHERE bị xố khỏi bảng - Nếu khơng có mệnh đề WHERE tất ghi bảng bị xóa khỏi bảng 08/02/2017 Chương Cơ sở liệu 58 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Lệnh xóa ghi • Ví dụ: Xóa tất ghi bảng DSSV: DELETE FROM DSSV; • Ví dụ: Xóa sinh viên lớp K56CNSHA khỏi bảng SINHVIEN DELETE FROM SINHVIEN WHERE MaLop = "K56CNSHA"; 08/02/2017 Chương Cơ sở liệu 59 15 ... 08/02/2017 Chương Cơ sở liệu Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương 5. 2.3... 08/02/2017 Chương Cơ sở liệu 53 08/02/2017 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học. ..03/02/2018 Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Khoa Công nghệ thông tin – Học viện Nông nghiệp Việt Nam Bài giảng Tin học đại cương Bài giảng Tin học đại cương VÍ DỤ VỀ CSDL VÍ

Ngày đăng: 03/03/2021, 08:26

Từ khóa liên quan

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

Tài liệu liên quan