Chương 1 TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU Nội dung 1. Quá trình phát triển 3. Định nghĩa CSDL 4. Các đối tượng sử dụng CSDL 5.
Hệ quản trị CSDL 6. Các mức biểu diễn một CSDL 7. Các mô hình dữ liệu 4 1. Giới thiệu uDữ liệu (Data) n Một mô tả hình thức về những sự kiện, khái niệm n Tên, địa chỉ, số điện thoại của khách hàng n Báo cáo doanh thu n Đăng ký học phần n … 6 Nội dung 1.
Quá trình phát triển 3. Định nghĩa CSDL 4. Các đối tượng sử dụng CSDL 5. Hệ quản trị CSDL 6.
Các mức biểu diễn một CSDL 7. Các mô hình dữ liệu 7 2. Quá trình phát triển u Hệ thống tập tin n Là tập hợp các tập tin riêng lẻ phục vụ cho một mục đích của đơn vị sử dụng Chương trình ứng dụng 1. Quản lý dữ liệu Tập Hệ tin Thống Chương trình ứng dụng 2 Quản.
Quản lý dữ liệu Tập Lý tin Tập Tin Chương trình ứng dụng 3 Tập. Quản lý dữ liệu Dữ liệu tin 8 2. Quá trình phát triển (tt) Tập tin Quản lý tài khoản tiết kiệm Tập tin Quản lý tài khoản cá nhân Tập tin Quản lý tài khoản vay 9 2. Quá trình phát triển (tt) u Hệ thống tập tin n Ưu điểm: n Triển khai ứng dụng nhanh n Khả năng đáp ứng nhanh chóng, kịp thời (vì chỉ phục vụ cho mục đích hạn hẹp) n Khuyết điểm: n Dữ liệu trùng lắp và dư thừa ® lãng phí n Thiếu tính nhất quán giữa các dữ liệu n Khó khăn trong việc truy xuất n Chi phí cao n Chia sẽ dữ liệu bị hạn chế 10 2.
Quá trình phát triển (tt) u Tiếp cận CSDL Hệ Quản Trị CSDL CSDL 11 Nội dung 1. Quá trình phát triển 3. Định nghĩa CSDL 4. Các đối tượng sử dụng CSDL 5.
Hệ quản trị CSDL 6. Các mức biểu diễn một CSDL 7. Các mô hình dữ liệu 12 3. Định nghĩa Cơ sở dữ liệu uCơ sở dữ liệu (Database) là một hệ thống các thông tin có cấu trúc, được lưu trữ trên các thiết bị lưu trữ nhằm thỏa mãn yêu cầu khai thác thông tin đồng thời của nhiều người sử dụng hay nhiều chương trình ứng dụng với những mục đích khác nhau.
u Tập ngẫu nhiên dữ liệu không được xem là một cơ sở dữ liệu 13 3. Định nghĩa Cơ sở dữ liệu (tt) uƯu điểm: n Giảm trùng lắp thông tin xuống mức thấp nhất, đảm bảo tính nhất quán và toàn vẹn dữ liệu. n Đảm bảo dữ liệu được truy xuất theo nhiều cách khác nhau. n Khả năng chia sẽ thông tin cho nhiều người, nhiều ứng dụng khác nhau.
Định nghĩa Cơ sở dữ liệu (tt) uNhững vấn đề cần giải quyết: n Tính chủ quyền dữ liệu. n Tính bảo mật và quyền khai thác thông tin của người sử dụng n Tranh chấp dữ liệu n Đảm bảo dữ liệu khi có sự cố 15 Nội dung 1. Quá trình phát triển 3. Định nghĩa CSDL 4.
Các đối tượng sử dụng CSDL 5. Hệ quản trị CSDL 6. Các mức biểu diễn một CSDL 7. Các mô hình dữ liệu 16 4.
Các đối tượng sử dụng CSDL u Người dùng cuối (end user) n Giáo dục, khoa học, y tế, kinh doanh,… n Cần công cụ để họ khai thác CSDL khi cần. u Chuyên viên tin học: Xây dựng các ứng dụng phục vụ cho quản lý u Quản trị viên (Database Administrator): Tổ chức CSDL; Xử lý an toàn, bảo mật, cấp quyền; Sao lưu, phục hồi dữ liệu; Giải quyết các tranh chấp dữ liệu 17 Nội dung 1. Quá trình phát triển 3. Định nghĩa CSDL 4.
Các đối tượng sử dụng CSDL 5. Hệ quản trị CSDL 6. Các mức biểu diễn một CSDL 7. Các mô hình dữ liệu 18 3.
Định nghĩa Cơ sở dữ liệu (tt) uHệ quản trị CSDL (Database Management System) n Tập hợp các chương trình cho phép người sử dụng tạo ra và duy trì CSDL n Một phần mềm hệ thống cho phép định nghĩa, xây dựng và xử lý dữ liệu n Định nghĩa – khai báo bộ khung dữ liệu cùng với các mô tả chi tiết về dữ liệu n Xây dựng – lưu trữ dữ liệu lên bộ nhớ phụ n Xử lý – truy vấn, cập nhật và phát sinh báo cáo 19 5. Hệ quản trị Cơ sở dữ liệu u Hệ quản trị cơ sở dữ liệu (DBMS – DataBase Management System) là hệ thống các phần mềm hỗ trợ tích cực cho các nhà phân tích, thiết kế và khai thác CSDL. u Các DBMS thông dụng: Visual FoxPro, Microsoft Access, SQL Server, DB2, Oracle … hầu hết các DBMS hiện nay đều dựa trên mô hình quan hệ. Hệ quản trị CSDL (tt) uMột DBMS phải có: n Ngôn ngữ giao tiếp giữa người sử dụng và CSDL n Từ điển dữ liệu (Data Dictionary) n Có biện pháp bảo mật khi có yêu cầu n Cơ chế giải quyết tranh chấp dữ liệu n Có cơ chế sao lưu (backup), phục hồi (restore) n Đảm bảo tính độc lập giữa dữ liệu và chương trình 21 5.
Hệ quản trị CSDL (tt) u Ngôn ngữ định nghĩa dữ liệu (DDL – Data Definition Language): n Cho phép khai báo cấu trúc CSDL, mối liên hệ của dữ liệu n Được dùng để định nghĩa các lược đồ mức quan niệm và lược đồ trong. u Ngôn ngữ thao tác dữ liệu (DML – Data Manipulation Language) n Cho phép truy xuất, thêm, xóa, sửa dữ liệu u Ngôn ngữ truy vấn có cấu trúc (SQL – Structured Query Language) n Cho phép người khai thác sử dụng để truy vấn thông tin cần thiết. u Ngôn ngữ quản lý dữ liệu (DCL – Data Control Language) n Cho phép thay đổi cấu trúc bảng, khai báo bảo mật, cấp quyền cho người sử dụng. Quá trình phát triển 3.
Định nghĩa CSDL 4. Các đối tượng sử dụng CSDL 5. Hệ quản trị CSDL 6. Các mức biểu diễn một CSDL 7.
Các mô hình dữ liệu 23 6. Các mức biểu diễn một CSDL u Kiến trúc 3 lược đồ Người dùng Người dùng Mức ngoài Lược đồ ngoài 1 … Lược đồ ngoài n Mức quan niệm Lược đồ quan niệm Mức trong Lược đồ trong 24 6. Các mức biểu diễn một CSDL (tt) u Mức ngoài n Còn gọi là mức khung nhìn (view) n Mô tả một phần của CSDL mà 1 nhóm người dùng quan tâm đến và che dấu phần còn lại của CSDL đối với nhóm người dùng đó u Mức quan niệm (Conception hay Logical) n Mức nhìn tổng thể về CSDL, dành cho người quản trị CSDL n Mô tả cấu trúc của toàn thể CSDL gồm thực thể, kiểu dữ liệu, mối liên hệ và ràng buộc u Mức trong (mức vật lý – Physical) n Mô tả cấu trúc lưu trữ vật lý CSDL: Dữ liệu gì? Lưu trữ thế nào? Ở đâu?. n Góc nhìn dành cho người phát triển CSDL 25 Nội dung 1.
Quá trình phát triển 3. Định nghĩa CSDL 4. Các đối tượng sử dụng CSDL 5. Hệ quản trị CSDL 6.
Các mức biểu diễn một CSDL 7. Các mô hình dữ liệu 26 7. Các mô hình dữ liệu u Mô hình dữ liệu (Data model) là sự trừu tượng hóa của môi trường thực, biểu diễn dữ liệu ở mức quan niệm. u Một số mô hình n Mô hình dữ liệu phân cấp n Mô hình dữ liệu mạng n Mô hình dữ liệu thực thể mối kết hợp n Mô hình dữ liệu quan hệ n Mô hình dữ liệu hướng đối tượng 27 Ví dụ mô hình phân cấp 28 Mô hình dữ liệu mạng uMô hình dữ liệu mạng (Network Data Model) còn gọi tắt là mô hình mạng hoặc mô hình lưới là mô hình được biểu diễn bởi một đồ thị có hướng.
n Mẫu tin (record) n Loại mẫu tin n Loại liên hệ (set type) n Bản số 29 Mô hình dữ liệu mạng (tt) uMẫu tin: mô tả 1 đối tượng trong thế giới thực. (‘NV001’,’Nguyen Lam’,’Nam’,’10/10/1970’,’Dong Nai’) uLoại mẫu tin: là 1 tập các mẫu tin có cùng tính chất. Ví dụ: NHANVIEN n Ký hiệu: NHANVIEN CONGVIEC uLoại liên hệ: mô tả sự liên kết giữa 1 loại mẫu tin chủ và 1 loại mẫu tin thành viên n Ký hiệu: Tham gia 30 2. Mô hình dữ liệu mạng (3) uBản số: chỉ ra số lượng các mẫu tin tham gia trong mối liên hệ n (1:1) (one-to-one): mỗi mẫu tin của loại mẫu tin chủ kết hợp với đúng 1 mẫu tin của loại mẫu tin thành viên.
n (1:n) (one-to-many): mỗi mẫu tin của loại mẫu tin chủ kết hợp với 1 hay nhiều mẫu tin thành viên. n (n:1) (many-to-one): nhiều mẫu tin của loại mẫu tin chủ kết hợp với đúng 1 mẫu tin của loại mẫu tin thành viên. n (Recursive): một loại mẫu tin chủ cũng có thể đồng thời là loại mẫu tin thành viên với chính nó. Loại liên hệ này là Đệ quy Khoa HTTT-Đại31 học CNTT 31 Mô hình dữ liệu mạng (tt) PHONG LYLICH 1:n gồm có 1:1 NHANVIEN 1:n quản lý CONGVIEC cùng làm trực tiếp n:1 32 Ví dụ mô hình quan hệ SVien Hoc HPhan MaSV MaSV MaHP Ten MaHP SLuong Lop DiemLT MaMH Nganh DiemTH MHoc DKien MaMH MaMH TenMH MaMHTruoc Khoa TinChi 33 Ví dụ mô hình hướng đối tượng SVien Ten HPhan Lop hoc Ten Nganh SLuong 1.* LapTKB() InBangDiem() 1 Diem mo DiemTH DiemLT DiemPrj 0.* SuaDiem() MHoc Ten Khoa +MHoc truoc SoTinChi 0.* Dieu kien +MHoc sau 34 MÔ HÌNH THỰC THỂ MỐI KẾT HỢP 35 Mô hình thực thể mối kết hợp (ER) uMô hình thực thể mối kết hợp (Entity- Relationship Model viết tắc ER) được CHEN giới thiệu năm 1976.
uĐược dùng để thiết kế CSDL ở mức quan niệm 36 Loại thực thể (Tập thực thể) u Định nghĩa: loại thực thể (Entity Type) là những loại đối tượng hay sự vật của thế giới thực tồn tại cụ thể cần được quản lý. n Một thực thể là một đối tượng của thế giới thực n Tập hợp các thực thể giống nhau tạo thành 1 loại thực thể u Ví dụ : HOCVIEN, LOP, MONHOC, … u Ký hiệu: HOCVIEN LOP 37 Thực thể (Entity) uĐịnh nghĩa: thực thể là một thể hiện hoặc một đối tượng của một loại thực thể. uVí dụ: n Một học viên là một thực thể n Tập hợp các học viên tạo thành loại thực thể n Loại thực thể là HOCVIEN có các thực thể: n (‘HV001’, ‘Nguyen Nam’, ‘1/2/1987’, ’Nam’) n (‘HV002’, ‘Trần Nam’, ‘13/2/1987’, ‘Nam’) 38 Thuộc tính u Định nghĩa: thuộc tính là những tính chất đặc trưng của loại thực thể cần lưu trữ. u Ví dụ: Loại thực thể HOCVIEN có các thuộc tính: n Mã học viên n Họ tên n Giới tính n Ngày sinh Mahv n … Hoten HOCVIEN Gioitinh u Ký hiệu: Ngaysinh Noisinh 39 Các loại thuộc tính u Đơn trị (Simple): mỗi thực thể chỉ có một giá trị ứng với các thuộc tính.
n Ví dụ: Mahv,Hoten u Đa trị (Multi-valued): thuộc tính có thể có nhiều giá trị đối với một thực thể.