Bài giảng Cơ sở dữ liệu - Chương 1: Tổng quan về CSDL - Lê Thị Minh Nguyện

pdf 38 trang ngocly 3370
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Cơ sở dữ liệu - Chương 1: Tổng quan về CSDL - Lê Thị Minh Nguyện", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_co_so_du_lieu_chuong_1_tong_quan_ve_csdl_le_thi_mi.pdf

Nội dung text: Bài giảng Cơ sở dữ liệu - Chương 1: Tổng quan về CSDL - Lê Thị Minh Nguyện

  1. Chương 1 Tổng quan về CSDL Lê Thị Minh Nguyện
  2. Nội dung chi tiết Giới thiệu Định nghĩa cơ sở dữ liệu Một số đặc tính của CSDL Các đối tượng sử dụng cơ sở dữ liệu Hệ quản trị cơ sở dữ liệu Các ứng dụng của cơ sở dữ liệu Các mô hình cơ sở dữ liệu Mô hình thực thể kết hợp Cơ sở dữ liệu - Khoa CNTT 2
  3. Giới thiệu Ví dụ - Kinh doanh Thông tin - Ngân hàng và tài chính - Giáo dục Chọn lọc - Hành chính - Giải trí Dữ liệu - Dữ liệu (Data) - Một mô tả hình thức về thông tin và hoạt động  Tên, địa chỉ, số điện thoại của khách hàng  Báo cáo doanh thu  Đăng ký học phần Cơ sở dữ liệu - Khoa CNTT 3
  4. Cơ sở dữ liệu - Khoa CNTT 4
  5. Cơ sở dữ liệu - Khoa CNTT 5
  6. Định nghĩa cơ sở dữ liệu Cơ sở dữ liệu (Database) - Là tập hợp các số liệu liên quan đến chủ thể hay mục đích khai thác thuộc lãnh vực chuyên môn nào đó và được tổ chức theo mô hình xác định. - Một tập hợp có cấu trúc của những dữ liệu có liên quan với nhau được lưu trữ trong máy tính  Danh sách sinh viên  Niên giám điện thoại  Danh mục các đề án - Một CSDL biểu diễn một phần của thế giới thực (thế giới thu nhỏ) - CSDL được thiết kế, xây dựng, và lưu trữ với một mục đích xác định, phục vụ cho một số ứng dụng và người dùng - Tập ngẫu nhiên của các dữ liệu không thể xem là một CSDL Cơ sở dữ liệu - Khoa CNTT 6
  7. Một ví dụ về CSDL NHANVIEN HONV TENLOT TENNV MANV NGSINH MA_NQL PHG Tran Hong Quang 987987987 03/09/1969 987654321 4 Nguyen Thanh Tung 333445555 12/08/1955 888665555 5 Nguyen Manh Hung 666884444 09/15/1962 333445555 5 Tran Thanh Tam 453453453 07/31/1972 333445555 5 DEAN TENDA MADA DDIEM_DA PHONG San pham X 1 VUNG TAU 5 San pham Y 2 NHA TRANG 5 San pham Z 3 TP HCM 5 Tin hoc hoa 10 HA NOI 4 PHANCONG MA_NVIEN SODA THOIGIAN 123456789 1 32.5 123456789 2 7.5 666884444 3 40.0 453453453 1 20.0 Cơ sở dữ liệu - Khoa CNTT 7
  8. Một ví dụ về CSDL (tt) Quản lý đề án của một công ty - Định nghĩa CSDL  Cấu trúc bảng, bao gồm các thành phần dữ liệu và kiểu dữ liệu tương ứng - Xây dựng CSDL  Đưa dữ liệu vào các bảng - Xử lý CSDL  Thực hiện các truy vấn: “Cho biết những nhân viên thuộc phòng 5”  Thực hiện các phép cập nhật: “Chuyển nhân viên Nguyễn Thanh Tùng sang phòng số 1” Cơ sở dữ liệu - Khoa CNTT 8
  9. Một số đặc tính của CSDL Tính tự mô tả Tính độc lập giữa chương trình và dữ liệu Tính trừu tượng dữ liệu Tính nhất quán Các cách nhìn dữ liệu Cơ sở dữ liệu - Khoa CNTT 9
  10. Tính tự mô tả Hệ CSDL không chỉ chứa bản thân CSDL mà còn chứa định nghĩa đầy đủ (mô tả) của CSDL Các định nghĩa được lưu trữ trong catalog - Chứa các thông tin về cấu trúc tập tin, kiểu và dạng thức lưu trữ của mỗi thành phần dữ liệu và những ràng buộc dữ liệu Dữ liệu trong catalog gọi là meta-data (data of data) Các CTƯD có thể truy xuất đến nhiều CSDL nhờ thông tin cấu trúc được lưu trữ trong catalog Cơ sở dữ liệu - Khoa CNTT 10
  11. Tính độc lập Vì định nghĩa về cấu trúc CSDL được lưu trữ trong catalog nên khi có thay đổi nhỏ về cấu trúc ta ít phải sửa lại chương trình Chương trình Độc lập Dữ liệu Cơ sở dữ liệu - Khoa CNTT 11
  12. Tính trừu tượng Hệ CSDL cho phép trình bày dữ liệu ở một mức trừu tượng cho phép, nhằm che bớt những chi tiết lưu trữ thật của dữ liệu Trừu tượng hóa dữ liệu - Mô hình dữ liệu  Đối tượng  Thuộc tính của đối tượng  Mối liên hệ Cơ sở dữ liệu - Khoa CNTT 12
  13. Tính nhất quán Lưu trữ dữ liệu thống nhất - Tránh được tình trạng trùng lắp thông tin Có cơ chế điều khiển truy xuất dữ liệu hợp lý - Tránh được việc tranh chấp dữ liệu - Bảo đảm dữ liệu luôn đúng tại mọi thời điểm Cơ sở dữ liệu - Khoa CNTT 13
  14. Các cách nhìn dữ liệu Hệ CSDL cho phép nhiều người dùng thao tác lên cùng một CSDL Mỗi người đòi hỏi một cách nhìn (view) khác nhau về CSDL Một view là - Một phần của CSDL hoặc - Dữ liệu tổng hợp từ CSDL Cơ sở dữ liệu - Khoa CNTT 14
  15. Các đối tượng sử dụng CSDL Quản trị viên (Database Administrator - DBA) Thiết kế viên (Database Designer) Người dùng cuối (End User) Cơ sở dữ liệu - Khoa CNTT 15
  16. Quản trị viên Có trách nhiệm quản lý hệ CSDL - Cấp quyền truy cập CSDL - Điều phối và giám sát việc sử dụng CSDL Cơ sở dữ liệu - Khoa CNTT 16
  17. Thiết kế viên Chịu trách nhiệm về - Lựa chọn cấu trúc phù hợp để lưu trữ dữ liệu - Quyết định những dữ liệu nào cần được lưu trữ Liên hệ với người dùng để nắm bắt được những yêu cầu và đưa ra một thiết kế CSDL thỏa yêu cầu này Có thể là 1 nhóm các DBA quản lý các CSDL sau khi việc thiết kế hoàn tất Cơ sở dữ liệu - Khoa CNTT 17
  18. Người dùng cuối Người ít sử dụng - Ít khi truy cập CSDL, nhưng cần những thông tin khác nhau trong mỗi lần truy cập và dùng những câu truy vấn phức tạp - Người quản lý Người sử dụng thường xuyên - Thường xuyên truy vấn và cập nhật CSDL nhờ vào một số các chức năng đã được xây dựng sẳn - Nhân viên Người sử dụng đặc biệt - Thông thạo về HQT CSDL, tự xây dựng những truy vấn phức tạp cho công việc - Kỹ sư, nhà khoa học, người phân tích, Cơ sở dữ liệu - Khoa CNTT 18
  19. Hệ quản trị cơ sở dữ liệu Hệ quản trị CSDL (Database Management System) - 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 - 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  Đị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  Xây dựng – lưu trữ dữ liệu lên bộ nhớ phụ  Xử lý – truy vấn, cập nhật và phát sinh báo cáo Các HQT CSDL thương mại - Oracle, DB2, SQL Server Cơ sở dữ liệu - Khoa CNTT 19
  20. Hệ quản trị cơ sở dữ liệu(tt) Hệ CSDL (Database System) Người sử dụng/Lập trình viên Chương trình ứng dụng/Truy vấn HQT CSDL Xử lý truy vấn Truy xuất dữ liệu Định nghĩa Catalog CSDL CSDL Hệ CSDL Cơ sở dữ liệu - Khoa CNTT 20
  21. Kiến trúc của HQT CSDL Kiến trúc 3 lược đồ Mức ngoài Người dùng Người dùng Lược đồ ngoài 1 Lược đồ ngoài n Ánh xạ ngoài/ Ánh xạ quan niệm Mức quan niệm Lược đồ quan niệm Ánh xạ quan niệm/ Ánh xạ trong Lược đồ trong Mức trong Cơ sở dữ liệu - Khoa CNTT 21
  22. Các ứng dụng của cơ sở dữ liệu Quản lý các hệ thống thông tin trong các cơ quan , xí nghiệp Xử lý và lưu trữ thông tin trong các doanh nghiệp. Xử lý các thông tin trong lãnh vực nghiên cứu khoa học. Cơ sở dữ liệu - Khoa CNTT 22
  23. Các mô hình cơ sở dữ liệu Mô hình mức cao - Cung cấp các khái niệm gần gũi với người dùng - Mô hình phải tự nhiên và giàu ngữ nghĩa - VD: mô hình thực thể kết hợp (ER), mô hình đối tượng Mô hình cài đặt - Đưa ra các khái niệm người dùng có thể hiểu được nhưng không quá xa với cách dữ liệu được tổ chức thật sự trên máy tính - VD: mô hình quan hệ, mô hình mạng, mô hình phân cấp Mô hình mức thấp (mô hình vật lý) - Đưa ra các khái niệm mô tả chi tiết về cách thức dữ liệu được lưu trữ trong máy tính Cơ sở dữ liệu - Khoa CNTT 23
  24. Ví dụ mô hình ER Diem MaHP Hocky (0,n) (1,1) Nam Gvien hoc HPhan mo mhoctruoc MaSV (1,n) MaMH (0,n) Ten TenMH Lop SVien Khoa MHoc Nganh Tinchi (0,n) dieukien (0,n) mhocsau Cơ sở dữ liệu - Khoa CNTT 24
  25. Ví dụ mô hình đối tượng SVien Ten HPhan Lop hoc Ten Nganh SLuong 1 * 0 * LapTKB() InBangDiem() 1 Diem mo DiemTH DiemLT DiemPrj 0 * SuaDiem() MHoc Ten Khoa +MHoc truoc SoTinChi 0 * CapNhatSTC() 0 * Dieu kien +MHoc sau Cơ sở dữ liệu - Khoa CNTT 25
  26. 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 Cơ sở dữ liệu - Khoa CNTT 26
  27. Ví dụ mô hình mạng SVien MHoc MHOC_SAU MHOC_MO MHOC_TRUOC SVIEN_DIEM HPhan DKien KQUA_HPHAN KQua Cơ sở dữ liệu - Khoa CNTT 27
  28. Ví dụ mô hình phân cấp KQua Mức 1: DiemTH DiemLT HPhan SVien Mức 2: TenHP SLuong TenSV Lop Nganh MHoc Mức 3: TenMH Khoa TinChi Cơ sở dữ liệu - Khoa CNTT 28
  29. Mô hình thực thể-kết hợp (Entity- Relationship) Được dùng để thiết kế CSDL ở mức quan niệm Biểu diễn trừu tượng cấu trúc của CSDL Lược đồ thực thể - kết hợp (Entity-Relationship Diagram) - Tập thực thể (Entity Sets) - Thuộc tính (Attributes) - Mối quan hệ (Relationship) Cơ sở dữ liệu - Khoa CNTT 29
  30. Tập thực thể Một thực thể là một đối tượng của thế giới thực Tập hợp các thực thể giống nhau tạo thành 1 tập thực thể Chú ý - Thực thể (Entity) - Đối tượng (Object) Cấu trúc của dữ liệu - Tập thực thể (Entity set) Thao tác trên dữ liệu - Lớp đối tượng (Class of objects) Cơ sở dữ liệu - Khoa CNTT 30
  31. Tập thực thể (tt) Ví dụ “Quản lý đề án công ty” - Một nhân viên là một thực thể - Tập hợp các nhân viên là tập thực thể - Một đề án là một thực thể - Tập hợp các đề án là tập thực thể - Một phòng ban là một thực thể - Tập hợp các phòng ban là tập thực thể Cơ sở dữ liệu - Khoa CNTT 31
  32. Thuộc tính Là những đặc tính riêng biệt của tập thực thể Ví dụ tập thực thể NHANVIEN có các thuộc tính - Họ tên - Ngày sinh - Địa chỉ - Là những giá trị nguyên tố - Kiểu chuỗi - Kiểu số nguyên - Kiểu số thực Cơ sở dữ liệu - Khoa CNTT 32
  33. Mối kết hợp Là sự liên kết giữa 2 hay nhiều tập thực thể Ví dụ giữa tập thực thể NHANVIEN và PHONGBAN có các liên kết - Một nhân viên thuộc một phòng ban nào đó - Một phòng ban có một nhân viên làm trưởng phòng Cơ sở dữ liệu - Khoa CNTT 33
  34. Lược đồ Entity-Relationship Kí hiệu Tên tập thực thể Tập thực thể Tên thuộc tính Thuộc tính Tên quan hệ Quan hệ Cơ sở dữ liệu - Khoa CNTT 34
  35. Ví dụ lược đồ E/R NGSINH LUONG DCHI TENPHG HONV TENNV NHANVIEN Lam_viec PHONGBAN PHAI La_truong_phong Phu_trach DDIEM_DA Phan_cong DEAN TENDA Cơ sở dữ liệu - Khoa CNTT 35
  36. Bảng số của mối kết hợp (min, max) chỉ định mỗi thực thể e E tham gia ít nhất và nhiều nhất vào thể hiện của R (min, max) (min, max) E Quan_hệ F  (0,1) – không hoặc 1  (1,1) – duy nhất 1  (0,n) – không hoặc nhiều  (1,n) – một hoặc nhiều Cơ sở dữ liệu - Khoa CNTT 36
  37. Bảng số của mối kết hợp (tt) Ví dụ - Một phòng ban có nhiều nhân viên (1,n) NV Lam_viec PB - Một nhân viên chỉ thuộc 1 phòng ban (1,1) NV Lam_viec PB - Một nhân viên có thể được phân công vào nhiều đề án hoặc không được phân công vào đề án nào (0,n) NV Phan_cong DA - Một nhân viên có thể là trưởng phòng của 1 phòng ban nào đó (0,1) NV La_truong_phong PB Cơ sở dữ liệu - Khoa CNTT 37
  38. Bảng số của mối kết hợp (tt) Kết hợp đệ quy La nguoi quan ly NHANVIEN Quan_ly (0,n) Duoc quan ly boi (0,1) Cơ sở dữ liệu - Khoa CNTT 38