Bài giảng Cơ sở dữ liệu - Chương 1: Dữ liệu và thông tin - Trần Đắc Phi Hùng

pdf 73 trang ngocly 10 Free
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: Dữ liệu và thông tin - Trần Đắc Phi Hùng", để 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_du_lieu_va_thong_tin_tran_d.pdf

Nội dung text: Bài giảng Cơ sở dữ liệu - Chương 1: Dữ liệu và thông tin - Trần Đắc Phi Hùng

  1. CƠ SỞ DỮ LIỆU By TRAN DAC PHI HUNG
  2. ThS. TRẦN ĐẮC PHI HÙNG [email protected] 0983.823.709 Bộ môn Công nghệ Địa chính Khoa Quản lý đất đai và Bất động sản
  3. CƠ SỞ DỮ LIỆU ACCESS LẬP TRÌNH VBA for CƠ BẢN EXCEL, ACCESS CƠ SỞ DỮ LIỆU GIS NÂNG CAO LẬP TRÌNH VBA for NÂNG CAO ARCMAP
  4. CƠ NOTES SỞ DỮ LIỆU DỮ LIỆU VÀ THÔNG TIN
  5. CƠ NOTES SỞ DỮ  Dữ liệu (Data): sự biểu diễn của các đối tượng và sự kiện LIỆU được ghi nhận và được lưu trữ trên các phương tiện của máy tính  Dữ liệu có cấu trúc: số, ngày, chuỗi ký tự,  Dữ liệu không có cấu trúc: hình ảnh, âm thanh  Thông tin (Informations): là những dữ liệu đã được xử lý để sử dụng. Cung cấp câu trả lời cho các câu hỏi “Who”, “What”, “When”, “Where”. Giúp chúng ta hiểu rõ hơn về mối quan hệ giữa các dữ liệu thu thập được.  Trong lĩnh vực công nghệ thông tin, Relational database tạo ra thông tin từ những dữ liệu được lưu trữ trên các phương tiện của máy tính.  Dữ liệu là nền tảng để tạo ra thông tin, và từ đó là cơ sở để có được tri thức.
  6. CƠ NOTES SỞ DỮ COLLECTION DATA LIỆU
  7. NOTES CƠ SỞ DỮ SAVE DATA LIỆU
  8. CƠ NOTES SỞ DỮ GET INFORMATION LIỆU
  9. CƠ NOTES SỞ DỮ COLLECTION DATA LIỆU - MÀU SẮC : - HÌNH DÁNG : - KÍCH THƯỚC : - MÙI VỊ : - TRỌNG LƯỢNG:
  10. CƠ NOTES SỞ DỮ GET INFORMATION: WHAT LIỆU
  11. CƠ NOTES SỞ DỮ BUILDING INFORMATION: WHERE LIỆU
  12. CƠ NOTES SỞ DỮ BUILDING INFORMATION LIỆU
  13. CƠ NOTES SỞ DỮ LIỆU CƠ SỞ DỮ LIỆU
  14. CƠ NOTES SỞ DỮ  Một cơ sở dữ liệu là một tập hợp dữ liệu có liên LIỆU quan với nhau, được lưu trữ trên máy tính, có nhiều người sử dụng và được tổ chức theo một mô hình.  Ví dụ, để quản lý việc học tập trong một môi trường đại học: Dữ liệu là các thông tin về sinh viên, về các môn học, điểm thi . Chúng ta tổ chức các dữ liệu đó thành các bảng và lưu giữ chúng vào sổ sách hoặc sử dụng một phần mềm máy tính để lưu giữ chúng trên máy tính. Ta có một tập các dữ liệu có liên quan đến nhau và mang nhiều ý nghĩa, đó là một cơ sở dữ liệu.
  15. CƠ NOTES SỞ DỮ LIỆU
  16. CƠ NOTES SỞ DỮ LIỆU
  17. CƠ NOTES SỞ DỮ LIỆU
  18. CƠ NOTES SỞ DỮ LIỆU
  19. CƠ NOTES SỞ DỮ LIỆU TÍNH CHẤT CƠ SỞ DỮ LIỆU
  20. CƠ TÍNH TIỀN LƯƠNG CHO NHÂN VIÊN NOTES SỞ DỮ LIỆU
  21. CƠ TÍNH CHẤT CƠ SỞ DỮ LIỆU NOTES SỞ DỮ  Một cơ sở dữ liệu biểu thị một khía cạnh nào đó LIỆU của thế giới thực như hoạt động của một công ty, một nhà trường, một ngân hàng  Những thay đổi của thế giới thực phải được phản ánh một cách trung thực vào trong cơ sở dữ liệu.
  22. CƠ TÍNH CHẤT CƠ SỞ DỮ LIỆU NOTES SỞ DỮ  Một cơ sở dữ liệu là một tập hợp dữ liệu liên kết LIỆU với nhau một cách logic và mang một ý nghĩa nào đó. Một cơ sở dữ liệu không phải là một tập hợp tuỳ tiện.
  23. CƠ TÍNH CHẤT CƠ SỞ DỮ LIỆU NOTES SỞ DỮ LIỆU
  24. CƠ TÍNH CHẤT CƠ SỞ DỮ LIỆU NOTES SỞ DỮ  Tùy thuộc vào yêu cầu của công việc, cơ sở dữ liệu LIỆU được thiết kế, xây dựng và được lưu trữ trong bộ nhớ của máy tính.  Sau đó người dùng sẽ sử dụng máy tính và các phần mềm để cập nhật, tổng hợp, phân tích dữ liệu để giải quyết các bài toán khác nhau.  Do đó đối tượng sử dụng của các bộ cơ sở dữ liệu khác nhau thì khác nhau. Tùy thuộc vào yêu cầu của người sử dụng.
  25. NOTES HỆ QUẢN TRỊ HỆ QUẢN TRỊ CSDL CSDL
  26. HỆ QUẢN TRỊ CSDL (DBMS – Database Management System ) NOTES Một hệ quản trị cơ sở dữ liệu là một tập hợp chương trình giúp cho người sử dụng thiết kế, xây dựng, duy trì và khai thác một cơ sở dữ liệu. HỆ QUẢN Hiện nay có nhiều hệ quản trị CSDL trên thị trường TRỊ CSDL như: Visual Foxpro, SQL server, DB2, Microsoft Access, Oracle USER DBMS DATABASE
  27. THÀNH PHẦN HỆ QUẢN TRỊ CSDL NOTES Ngôn ngữ giao tiếp giữa NSD và CSDL:  Ngôn ngữ mô tả dữ liệu (Data Definition Language HỆ - DDL) để cho phép khai báo cấu trúc của CSDL, khai QUẢN báo các mối liên hệ của dữ liệu (Data Relationship) và TRỊ CSDL các quy tắc (Rules, Constraint) quản lý áp đặt trên dữ liệu.  Ngôn ngữ thao tác dữ liệu (Data Manipulaton Language - DML) cho phép NSD có thể thêm, xoá, dữ liệu trong CSDL.
  28. THÀNH PHẦN HỆ QUẢN TRỊ CSDL NOTES Tự điển dữ liệu (Data dictionary) dùng để mô tả các ánh xạ liên kết, ghi nhận các thành phần cấu trúc của CSDL, các chương trình ứng dụng, mật mã, quyền HỆ QUẢN sử dụng TRỊ CSDL
  29. THÀNH PHẦN HỆ QUẢN TRỊ CSDL NOTES  Có biện pháp bảo mật tốt.  Có cơ chế giải quyết tranh chấp dữ liệu. HỆ QUẢN  Có cơ chế sao lưu và phục hồi dữ liệu khi có sự TRỊ cố xảy ra. CSDL  Có giao diện tốt, dễ sử dụng.
  30. THÀNH PHẦN HỆ QUẢN TRỊ CSDL NOTES  Có biện pháp bảo mật tốt. HỆ QUẢN TRỊ CSDL
  31. THÀNH PHẦN HỆ QUẢN TRỊ CSDL NOTES  Có cơ chế sao lưu và phục hồi dữ liệu khi có sự cố xảy ra. HỆ QUẢN TRỊ CSDL
  32. THÀNH PHẦN HỆ QUẢN TRỊ CSDL NOTES  Có giao diện tốt, dễ sử dụng. HỆ QUẢN TRỊ CSDL
  33. THÀNH PHẦN HỆ QUẢN TRỊ CSDL NOTES  Bảo đảm tính độc lập giữa dữ liệu và chương trình: khi có sự thay đổi dữ liệu (như sửa đổi cấu HỆ trúc lưu trữ các bảng dữ liệu, thêm các chỉ mục, ) QUẢN TRỊ thì các chương trình ứng dụng đang chạy trên CSDL CSDL vẫn không cần phải viết lại hay cũng không ảnh hưởng đến NSD khác.
  34. NOTES MÔ HÌNH CSDL Lược đồ CSDL MÔ HÌNH CSDL
  35. Mô hình cơ sở dữ liệu NOTES  Cấu trúc cơ sở dữ liệu và mối liên hệ giữa các đối tượng đóng vai trò rất lớn trong việc xác định tính hiệu quả của cơ sở dữ liệu: + Đảm bảo không trùng lấp dữ liệu. + Tiết kiệm bộ nhớ. MÔ + Truy cập nhanh chóng và chính xác. HÌNH CSDL  Vì vậy, thiết kế cơ sở dữ liệu trở thành hoạt động chính trong môi trường cơ sở dữ liệu.
  36. Mô hình cơ sở dữ liệu NOTES  Việc thiết kế cơ sở dữ liệu được thực hiện đơn giản hơn nhiều khi ta sử dụng các mô hình.  Mô hình cơ sở dữ liệu là một tập hợp các khái niệm dùng để biểu diễn các cấu trúc của cơ sở dữ liệu. MÔ  Dựa vào mô hình chúng ta có một cái nhìn tổng HÌNH CSDL quát về các đối tượng và mối quan hệ giữa chúng trong cơ sở dữ liệu.  Việc thiết kế các mô hình tốt sẽ đưa ra các cơ sở dữ liệu tốt và trên cơ sở đó sẽ có các ứng dụng tốt. Ngược lại, mô hình không tốt sẽ đưa đến thiết kế cơ sở dữ liệu tồi và dẫn đến các ứng dụng không đúng.
  37. Mô hình cơ sở dữ liệu NOTES  Cấu trúc của một cơ sở dữ liệu:  Thực thể (đối tượng).  Thuộc tính của thực thể.  Quan hệ giữa các thực thể.  Các ràng buộc đối với dữ liệu. MÔ HÌNH CSDL
  38. Mô hình cơ sở dữ liệu NOTES  Công ty gồm nhiều nhân viên, mỗi nhân viên được gán mã nhân viên để tiện quản lý. Thông tin của nhân viên bao gồm: mã nhân viên,phái, địa chỉ, ngày sinh, tên (bao gồm tên, họ, tên lót), bằng cấp.  Do là công ty thực hiện dự án nên các phòng ban sẽ có MÔ nhiều địa điểm giao dịch. Thông tin của phòng ban bao gồm: HÌNH mã phòng ban, tên phòng ban, địa điểm. Mỗi phòng ban có CSDL một người trong số các nhân viên là trưởng phòng (với một ngày nhận chức cụ thể). Có rất nhiều nhân viên làm việc cho một phòng ban. Xác định cấu trúc cơ sở dữ liệu. Từ đó đề xuất cấu trúc hợp lý nhất?
  39. Mô hình cơ sở dữ liệu NOTES  Các mô hình dữ liệu bậc cao hoặc mô hình dữ liệu mức quan niệm cung cấp các khái niệm gắn liền với cách cảm nhận dữ liệu của nhiều người sử dụng. Các mô hình này tập trung vào bản chất logic của biểu diễn dữ liệu, nó quan tâm đến cái được biểu MÔ diễn trong cơ sở dữ liệu chứ không phải cách biểu HÌNH diễn dữ liệu. CSDL
  40. Mô hình cơ sở dữ liệu NOTES  Các mô hình dữ liệu bậc cao hoặc mô hình dữ liệu mức quan niệm: Mô hình ER (Entity – Relationship Model) MÔ HÌNH CSDL
  41. Mô hình cơ sở dữ liệu NOTES  Các mô hình dữ liệu thể hiện, chúng cung cấp những khái niệm mà người sử dụng có thể hiểu được và không xa với cách tổ chức dữ liệu bên trong máy tính.  Người ta còn gọi loại mô hình dữ liệu này là loại mô hình dữ liệu mức logic. MÔ  Các mô hình dữ liệu thể hiện che giấu một số HÌNH chi tiết về việc lưu trữ dữ liệu nhưng có thể được CSDL cài đặt trực tiếp trên hệ thống máy tính thông qua Hệ quản trị Cơ sở dữ liệu.
  42. Mô hình cơ sở dữ liệu NOTES  Các mô hình dữ liệu thể hiện hoặc mô hình dữ liệu mức logic : Mô hình quan hệ MÔ HÌNH CSDL
  43. Mô hình cơ sở dữ liệu NOTES  Các mô hình dữ liệu thể hiện hoặc mô hình dữ liệu mức logic : Mô hình mạng – Mô hình phân cấp MÔ HÌNH CSDL
  44. Mô hình cơ sở dữ liệu NOTES  Các mô hình dữ liệu bậc thấp hoặc các mô hình dữ liệu vật lý cung cấp các khái niệm mô tả chi tiết về việc các dữ liệu được lưu trữ trong máy tính như thế nào.  Các khái niệm do mô hình dữ liệu vật lý cung MÔ cấp nói chung có ý nghĩa đối với các chuyên gia HÌNH máy tính chứ không có ý nghĩa mấy đối với người CSDL sử dụng thông thường.
  45. Mô hình cơ sở dữ liệu NOTES  Các mô hình dữ liệu bậc thấp hoặc các mô hình dữ liệu vật lý: Hai mô hình dữ liệu vật lý được biết rộng rãi nhất là mô hình hợp nhất (unifying model) và mô hình khung-bộ nhớ ( frame-memory model ) MÔ HÌNH CSDL
  46. NOTES CON NGƯỜI VÀ CSDL CON NGƯỜI & CSDL
  47. Người quản trị hệ cơ sở dữ liệu NOTES (Database Administrator – DBA) Với một cơ sở dữ liệu lớn, rất nhiều người tham gia vào việc thiết kế, sử dụng và duy trì cơ sở dữ liệu. Do đó cần phải có một người giám sát và quản lý. Người này còn được gọi là admin Người này có toàn quyền đối với hệ cơ sở dữ liệu. CON NGƯỜI & CSDL
  48. Người quản trị hệ cơ sở dữ liệu NOTES (Database Administrator – DBA) CON NGƯỜI & CSDL
  49. Người quản trị hệ cơ sở dữ liệu NOTES (Database Administrator – DBA) CON NGƯỜI & CSDL
  50. Người quản trị hệ cơ sở dữ liệu NOTES (Database Administrator – DBA) Chịu trách nhiệm chính: + Quản lý cơ sở dữ liệu, hệ quản trị cơ sở dữ liệu và các phần mềm liên quan. + Phân quyền trong việc truy cập vào cơ sở dữ liệu. + Tổ chức và hướng dẫn sử dụng cơ sở dữ liệu. + Quản lý, cập nhật các phần mềm, phần cứng, công cụ (tool) tùy theo yêu cầu của công việc. CON NGƯỜI & CSDL
  51. Những người sử dụng (End User) NOTES Những người sử dụng là những người mà công việc của họ đòi hỏi truy cập đến cơ sở dữ liệu để truy vấn, cập nhật và sinh ra các thông tin. Có thể chia những người sử dụng thành hai nhóm chính:  Những người sử dụng thụ động (tức là những người sử dụng không có nhiều kiến thức về hệ cơ sở dữ liệu).  Những người sử dụng chủ động (là những người có hiểu biết tốt về hệ cơ sở dữ liệu). CON NGƯỜI & CSDL
  52. Những người sử dụng (End User) NOTES  Người sử dụng chủ động  Người sử dụng thụ động CON NGƯỜI & CSDL
  53. Người thiết kế cơ sở dữ liệu NOTES (Database Designer)  Người này chịu trách nhiệm xác định các dữ liệu sẽ được lưu giữ trong cơ sở, chọn các cấu trúc thích hợp để biểu diễn và lưu giữ các dữ liệu đó.  Những nhiệm vụ này được thực hiện trước khi cơ sở dữ liệu được cài đặt và phổ biến.  Người thiết kế có trách nhiệm: Giao thiệp với những người sử dụng tương lai để hiểu được các đòi hỏi của họ và đưa ra một thiết CON NGƯỜI kế thoả mãn các yêu cầu đó. & CSDL Giao thiệp với các nhóm người sử dụng và có khả năng hỗ trợ các yêu cầu của các nhóm.
  54. Người thiết kế cơ sở dữ liệu NOTES (Database Designer) CON NGƯỜI & CSDL
  55. Người phân tích hệ thống và lập trình ứng dụng NOTES  Người phân tích hệ thống xác định các yêu cầu của những người sử dụng (chủ yếu là những người sử dụng thụ động) để đặc tả các chương trình phù hợp với yêu cầu của họ.  Người viết chương trình ứng dụng thể hiện các đặc tả của những người phân tích thành chương trình, sau đó kiểm thử, sửa lỗi và bảo trì các chương trình đó. CON NGƯỜI & CSDL
  56. Người phân tích hệ thống và lập trình ứng dụng NOTES CON NGƯỜI & CSDL
  57. Người thiết kế và cài đặt hệ quản trị dữ liệu NOTES  Đó là những người thiết kế, cài đặt các mô đun, giao diện của hệ quản trị cơ sở dữ liệu thành các phần mềm đóng gói.  Một hệ quản trị cơ sở dữ liệu là một hệ thống phần mềm phức tạp bao gồm nhiều thành phần (mô đun). Đó là các mô đun cài đặt từ điển dữ liệu, ngôn ngữ truy vấn, bộ xử lý giao diện, truy cập dữ liệu, kiểm tra cạnh tranh, phục hồi và an toàn. CON NGƯỜI  Hệ quản trị cơ sở dữ liệu phải giao tiếp với các & CSDL hệ thống phần mềm khác như hệ điều hành và các chương trình dịch cho nhiều ngôn ngữ khác nhau.
  58. Người phân tích hệ thống và lập trình ứng dụng NOTES CON NGƯỜI & CSDL
  59. Những người phát triển công cụ NOTES  Là những người thiết kế và cài đặt các công cụ (tool), đó là các phần mềm đóng gói hỗ trợ việc thiết kế và sử dụng cơ sở dữ liệu. CON NGƯỜI & CSDL
  60. Các thao tác viên và những người bảo trì NOTES  Là những người thiết kế và cài đặt các công cụ (tool), đó là các phần mềm đóng gói hỗ trợ việc thiết kế và sử dụng cơ sở dữ liệu. CON NGƯỜI & CSDL
  61. NOTES NGÔN NGỮ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU NGÔN NGỮ HQT CSDL
  62. NOTES Làm thế nào để chú chó làm theo ý của bạn? Làm thế nào để giáo viên truyền đạt được kiến thức cho học sinh? NGÔN NGỮ HQT CSDL
  63. NOTES Làm thế nào để chú chó làm theo ý của bạn? Làm thế nào để giáo viên truyền đạt được kiến thức cho học sinh? NGÔN NGỮ HQT CSDL
  64. NOTES Làm thế nào để chú chó làm theo ý của bạn? NGÔN NGỮ HQT CSDL
  65. NOTES  Ngôn ngữ SQL: là một ngôn ngữ truy vấn dựa trên đại số quan hệ và được chia thành các phần sau:  Ngôn ngữ định nghĩa dữ liệu (DDL): Cung cấp các lệnh định nghĩa các bảng biểu và các quan hệ giữa chúng theo đúng với lược đồ quan hệ, xóa quan hệ, tạo chỉ mục, tạo khung nhìn  Ngôn ngữ thao tác dữ liệu (DML): gồm các ngôn ngữ truy vấn dựa trên các đại số quan hệ và thực hiện các lệnh thêm, sửa xóa các bộ (record) trong cơ sở dữ liệu.  Bản chất ngôn ngữ SQL là các câu lệnh giúp người dùng tương tác với cơ sở dữ liệu NGÔN NGỮ HQT CSDL
  66. Ngôn ngữ định nghĩa dữ liệu (DDL) NOTES  Các lệnh liên quan đến bảng biểu: CREATE TABLE: lệnh tạo bảng. ALTER TABLE: thay đổi cấu trúc bảng DROP TABLE: Xóa bảng NGÔN NGỮ HQT CSDL
  67. Ngôn ngữ định nghĩa dữ liệu (DDL) NOTES  Các lệnh liên quan đến bảng biểu: NGÔN NGỮ HQT CSDL
  68. Ngôn ngữ định nghĩa dữ liệu (DDL) NOTES  Các lệnh liên quan đến khung nhìn: CREATE VIEW : lệnh tạo khung nhìn. DROP VIEW : Xóa khung nhìn. NGÔN NGỮ HQT CSDL
  69. Ngôn ngữ định nghĩa dữ liệu (DDL) NOTES  Các lệnh liên quan đến khung nhìn: NGÔN NGỮ HQT CSDL
  70. Ngôn ngữ thao tác dữ liệu (DML) NOTES  Các lệnh liên quan đến các bộ trong bảng: INSERT: thêm một bộ mới vào bảng. UPDATE: Cập nhật giá trị của các bộ trong một bảng. DELETE: Hủy bỏ các bộ trong một bảng. NGÔN NGỮ HQT CSDL
  71. Ngôn ngữ thao tác dữ liệu (DML) NOTES  Các lệnh liên quan đến các bộ trong bảng : NGÔN NGỮ HQT CSDL
  72. Ngôn ngữ thao tác dữ liệu (DML) NOTES  Các lệnh liên quan đến quá trình trích lọc và phân tích dữ liệu trong cơ sở dữ liệu: NGÔN NGỮ HQT CSDL