intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Cơ sở dữ liệu địa lý: Chương 3 - ThS. Nguyễn Duy Liêm

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:38

32
lượt xem
6
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Cơ sở dữ liệu địa lý: Chương 3 Mô hình dữ liệu quan hệ, cung cấp cho người học những kiến thức như: Mô hình dữ liệu quan hệ; Cấu trúc của RM; Đặc tính của quan hệ; Đại số quan hệ. Mời các bạn cùng tham khảo!

Chủ đề:
Lưu

Nội dung Text: Bài giảng Cơ sở dữ liệu địa lý: Chương 3 - ThS. Nguyễn Duy Liêm

  1. TRƯỜNG ĐẠI HỌC NÔNG LÂM TP. HỒ CHÍ MINH KHOA MÔI TRƯỜNG & TÀI NGUYÊN | BỘ MÔN GIS & TÀI NGUYÊN Mô hình dữ liệu quan hệ (Relational Data Model) Người mượn Số thẻ Họ tên Ngày sinh Lớp Sách Mã số sách Tên sách Số trang Tác giả Mượn sách Số thẻ Mã số sách Ngày mượn Ngày trả Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 1
  2. Nội dung  Các khái niệm (Concepts) khóa (Superkey), Khóa dự tuyển  Siêu (Candidate key), Khóa chính (Primary key),  Mô hình dữ liệu quan hệ (Relational Data Khóa ngoại (Foreign key) Model, RM)  CSDL quan hệ (Relational database)  Đặc tính của quan hệ (Characteristics  Lược đồ quan hệ (RM schema) of relation)  Lược đồ CSDL quan hệ (Relational  Đại số quan hệ (Relational algebra) database schema)  Phép chọn (Selection)  Cấu trúc của RM (Structure of RM)  Phép chiếu (Projection)  Quan hệ (Relation), Thể hiện quan hệ  Phép tích Descartes (Cartesian product) (Relation instance)  Phép hợp (Union)  Thuộc tính (Attribute), Bậc (Degree), Miền  Phép hiệu (Difference) trị (Domain)  Phép giao (Intersection)  Bộ (Tuple), Lượng số (Cardinality), Thành  Phép kết (Join) phần (Component)  Phép chia (Division) Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 2
  3. Thế giới Quá trình thiết kế CSDL thực Thu thập, phân tích yêu cầu Ý tưởng Yêu cầu chức năng Yêu cầu dữ liệu Lược đồ liên kết Phân tích chức năng Thiết kế ý niệm – thực thể (ER) Lược đồ ý niệm Đặc tả chức năng ở Độc lập (mô hình dữ liệu ở mức cao) mức cao DBMS Thiết kế luận lý Lược đồ quan hệ Phụ thuộc Thiết kế DBMS chương trình Lược đồ luận lý ứng dụng (mô hình dữ liệu cho DBMS) Thực hiện CSDL quan hệ Thiết kế vật lý giao tác Chương trình ứng dụng Lược đồ vật lý Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 4
  4. Mô hình dữ liệu quan hệ là gì?  TS. Edgar F. Codd giới thiệu vào năm 1970. TS. Edgar F. Codd  Mô hình dựa vào toán học (lý thuyết tập hợp, luận lý vị từ). 19/8/1923, Anh – 18/4/2003, Hoa Kì Codd, E. F. (1970). "A Relational Model of Data for Large Shared Data Banks". Communications of the ACM. 13 (6): 377–387.  Bao gồm các thành phần: cấu trúc dữ liệu (tổ chức dạng doi:10.1145/362384.362685. S2CID 207549016. bảng), thao tác dữ liệu (sử dụng ngôn ngữ SQL) và toàn vẹn dữ liệu (đặc tả các quy tắc nghiệp vụ).  Được dùng để thiết kế CSDL mức luận lý.  Nhiều ứng dụng CSDL sử dụng.  Mộtsố nguyên lý thiết kế CSDL luận lý của mô hình dữ liệu quan hệ cũng được áp dụng cho các mô hình dữ liệu khác. Supply (Cung cấp) Supplier (Nhà cung cấp) Part (Phụ tùng) Project (Dự án) Quantity (Số lượng) 1 2 5 17 1 3 5 23 2 3 7 9 2 7 5 4 Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn 4 1 1 12 Mô hình dữ liệu quan hệ 5
  5. CSDL quan hệ là gì?  CSDL mà dữ liệu được lưu trữ trong các quan hệ. Mượn sách Số thẻ Mã số sách Ngày mượn Ngày trả TV-02 TO-012 05-09-2021 30-09-2021 TV-04 TN-103 12-09-2021 15-09-2021 TV-01 TN-012 05-10-2021 … Người mượn Sách Số thẻ Họ tên Ngày sinh Lớp Mã số sách Tên sách Số trang Tác giả TV-01 Nguyễn An 10-10-1987 12A TN-102 Dế mèn phiêu lưu kí 235 Tô Hoài TV-02 Trần Minh 23-02-1988 11B TN-103 Hai vạn dặm dưới 123 Giuya Vecao biển TV-03 Lê Văn Bình 21-12-1987 12B TN-01 Những điều kì diệu 79 Nguyễn Thế Hùng TV-04 Nguyễn Duy 30-01-1989 10C về máy tính … TO-012 Sáng tạo toán học 305 Polia Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn … Mô hình dữ liệu quan hệ 6
  6. Lược đồ quan hệ, lược đồ CSDL quan hệ là gì?  Lược đồ quan hệ  Văn bản hoặc đồ họa mô tả toàn bộ cấu trúc luận lý của quan hệ. Người mượn (Số thẻ, Họ tên, Ngày sinh, Lớp) Người mượn Số thẻ Họ tên Ngày sinh Lớp  Lược đồ CSDL quan hệ  Văn bản hoặc đồ họa mô tả toàn bộ cấu trúc luận lý của CSDL quan hệ. Người mượn  Gồm nhiều lược đồ quan hệ. Số thẻ Họ tên Ngày sinh Lớp Người mượn (Số thẻ, Họ tên, Ngày sinh, Lớp) Sách Sách (Mã số sách, Tên sách, Số trang, Tác giả) Mã số sách Tên sách Số trang Tác giả Mượn sách (Số thẻ, Mã số sách, Ngày mượn, Ngày trả) Mượn sách Số thẻ Mã số sách Ngày mượn Ngày trả Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 7
  7. Các thuật ngữ tương đương Mô hình dữ liệu quan hệ Hệ quản trị CSDL quan hệ Tập tin Quan hệ Bảng Tập tin Bộ Hàng Mẩu tin Thuộc tính Cột Vùng tin Người mượn Số thẻ Họ tên Ngày sinh Lớp TV-01 Nguyễn An 10-10-1987 12A TV-02 Trần Minh 23-02-1988 11B TV-03 Lê Văn Bình 21-12-1987 12B TV-04 Nguyễn Duy 30-01-1989 10C … Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 8
  8. Bài tập 1  Cho quan hệ Nhân viên: 1. Tạo lược đồ quan hệ sử dụng văn bản? 2. Tạo lược đồ quan hệ sử dụng đồ họa? Nhân viên Mã số Họ tên Phòng ban Lương 100 Nguyễn Văn Anh Tiếp thị 48000 140 Phạm Thị Em Kế toán 52000 110 Bùi Hoàng Thi Thông tin 43000 190 Lê Thị Sâm Tài chính 55000 150 Trần Phi Thường Tiếp thị 42000 Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 9
  9. Quan hệ  Quan hệ là gì?  Một bảng dữ liệu hai chiều được đặt tên. Quan hệ Người mượn  Bao gồm cột (thuộc tính) và hàng (bộ). Người mượn Số thẻ Họ tên Ngày sinh Lớp  Hàng ~ Thực thể.  Quan hệ ~ Tập thực thể. Thể hiện của quan hệ Người mượn  Quy tắc đặt tên Người mượn Số thẻ Họ tên Ngày sinh Lớp  Danh từ số ít, TV-01 Nguyễn An 10-10-1987 12A  Viết hoa chữ cái đầu tiên. Thể hiện của quan hệ Người mượn  Thể hiện quan hệ là gì? Người mượn Số thẻ Họ tên Ngày sinh Lớp  Một trường hợp cụ thể của một quan hệ. TV-03 Lê Văn Bình 21-12-1987 12B TV-04 Nguyễn Duy 30-01-1989 10C Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 10
  10. Thuộc tính, bậc, miền trị Dom(Lớp) là tập  Thuộc tính là gì? Thuộc tính Số thẻ các giá trị kí tự có của Người mượn chiều dài 3 kí tự  Một cột được đặt tên của một bảng.  Mọi dữ liệu trong một cột có cùng kiểu dữ liệu. Người mượn  Kí tự, số, tập hợp, danh sách. Số thẻ Họ tên Ngày sinh Lớp  Quy tắc đặt tên TV-03 Lê Văn Bình 21-12-1987 12B TV-04 Nguyễn Duy 30-01-1989 10C  Danh từ số ít,  Viết hoa chữ cái đầu tiên. Quan hệ có 4 thuộc tính  Bậc là gì? (tứ phân)  Số lượng các thuộc tính của một quan hệ.  Quan hệ có n thuộc tính là quan hệ n-phân (nhất phân, nhị phân,…).  Miền trị là gì?  Tập hợp các giá trị cho phép của một hoặc nhiều thuộc tính.  Kí hiệu: Miền trị của thuộc tính A là dom(A). Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 11
  11. Bộ, lượng số, thành phần Một bộ của Người mượn là:  Bộ là gì? t = (‘TV-03’, ‘Lê Văn Bình’, 21-12-1987, ’12B’) Người mượn  Một hàng của một bảng. Số thẻ Họ tên Ngày sinh Lớp  Kí hiệu: t = (, ,…, giá trị thuộc tính n>). TV-04 Nguyễn Duy 30-01-1989 10C  Lượng số là gì?  Số lượng các bộ của một quan hệ. Lượng số là 2  Có tính tạm thời (thay đổi khi thêm hoặc xóa các bộ của quan hệ). Thành phần Lớp của bộ t là t.Lớp = ’12B’  Thành phần là gì? Thành phần Số thẻ, Họ tên của bộ t là t[Số thẻ, Họ tên] = (‘TV-03’,’Lê Văn Bình’)  Một giá trị của bộ.  Kí hiệu: Thành phần Ai của bộ t là t.Ai; Thành phần Ai, Aj của bộ t là t[Ai, Aj]. Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 12
  12. Bài tập 2  Cho quan hệ Nhân viên: Nhân viên Mã số Họ tên Phòng ban Lương 100 Nguyễn Văn Anh Tiếp thị 48000 140 Phạm Thị Em Kế toán 52000 110 Bùi Hoàng Thi Thông tin 43000 190 Lê Thị Sâm Tài chính 55000 150 Trần Phi Thường Tiếp thị 42000 1. Liệt kê các thuộc tính? 2. Bậc của quan hệ trên là bao nhiêu? 3. Giá trị u.Lương của bộ u = (190, ‘Lê Thị Sâm’, ‘Tài chính’, 55000) là gì? 4. Lượng số của quan hệ trên là bao nhiêu? Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 13
  13. Siêu khóa  Một hay nhiều thuộc tính dùng để xác định duy nhất một bộ của quan hệ.  Các bộ trong quan hệ phải khác nhau từng đôi một.  Mỗi quan hệ có tối thiểu một siêu khóa. R Các tổ hợp thuộc tính có thể A B C D 1 thuộc tính 2 thuộc tính 3 thuộc tính 4 thuộc tính x 1 10 a A AB ABC ABCD x 2 20 a B AC ABD y 1 40 b C AD ACD y 1 40 c D BC BCD z 1 50 d BD CD Các siêu khóa Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 14
  14. Khóa dự tuyển  Một siêu khóa mà không có một tập con nào của nó lại là một siêu khóa.  Khóa dự tuyển là siêu khóa bé nhất.  Mỗi quan hệ có thể có nhiều khóa dự tuyển. R Các tổ hợp thuộc tính có thể A B C D 1 thuộc tính 2 thuộc tính 3 thuộc tính 4 thuộc tính x 1 10 a A AB ABC ABCD x 2 20 a B AC ABD y 1 40 b C AD ACD y 1 40 c D BC BCD z 1 50 d BD CD Các khóa dự tuyển Các siêu khóa Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 15
  15. Khóa chính  Một khóa dự tuyển được chọn để xác định duy nhất một bộ của quan hệ.  Mỗi quan hệ chỉ có một khóa chính.  Kí hiệu: Tên khóa chính được gạch dưới nét liền. Người mượn Số thẻ Họ tên Ngày sinh Lớp Số thẻ là TV-03 Lê Văn Bình 21-12-1987 12B khóa chính TV-04 Nguyễn Duy 30-01-1989 10C Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 16
  16. Khóa ngoại  Một hay nhiều thuộc tính của một quan hệ R tương ứng với khóa chính của một quan hệ S khác hoặc trong chính quan hệ R.  Khóa ngoại phải có cùng miền trị với khóa chính tương ứng.  Giá trị của khóa ngoại có thể rỗng (NULL) hoặc bằng giá trị của khóa chính.  Mỗi quan hệ có thể có nhiều khóa ngoại.  Kí hiệu: Tên khóa ngoại được gạch dưới nét đứt. Mã số sách là khóa chính Người mượn Sách Số thẻ là khóa chính Số thẻ Họ tên Ngày sinh Lớp Mã số sách Tên sách Số trang Tác giả Mượn sách Số thẻ Mã số sách Ngày mượn Ngày trả Số thẻ, Mã số sách là khóa ngoại Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 17
  17. Bài tập 2  Cho quan hệ Sinh viên: Sinh viên 1. Tập thuộc tính nào là siêu khóa? Mã sinh viên Họ tên Lớp Email Mã sinh viên? Họ tên? Lớp? Email? 20101 Nguyễn An DH20HM an@gmail.com Mã sinh viên, Họ tên? Mã sinh viên, 20102 Phan Anh DH20MT anh@gmail.com Lớp? Mã sinh viên, Email? Họ tên, 20103 Lê Long DH20MT long@gmail.com Lớp? Họ tên, Email? Lớp, Email? 20104 Nguyễn An DH20ES an1@gmail.com Mã sinh viên, Họ tên, Lớp? Mã sinh 20105 Trần Tín DH20HM tin@gmail.com viên, Họ tên, Email? Mã sinh viên, Lớp, Email? Họ tên, Lớp, Email? Mã sinh viên, Họ tên, Lớp, Email? 2. Thuộc tính nào là khóa dự tuyển? Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 18
  18. Đặc tính của quan hệ Người mượn (Số thẻ, Họ tên, Ngày sinh, Lớp)  Mỗi quan hệ có tên phân biệt.  Mỗi thuộc tính có tên phân biệt. Người mượn (Số thẻ, Lớp, Ngày sinh, Họ tên)  Thứ tự các thuộc tính không quan trọng (không làm thay đổi ngữ nghĩa). Số thẻ Họ tên Ngày sinh Lớp TV-03 Lê Văn Bình 21-12-1987 12B  Mỗi bộ phải phân biệt, không có hai bộ bất kì TV-04 Nguyễn Duy 30-01-1989 10C trùng nhau.  Thứ tự các bộ không quan trọng. Số thẻ Họ tên Ngày sinh Lớp TV-04 Nguyễn Duy 30-01-1989 10C  Mỗi thành phần của một bộ phải là rỗng TV-03 Lê Văn Bình 21-12-1987 12B (NULL) hoặc thuộc tính đơn trị, không được là thuộc tính đa trị, phức hợp. t = (‘TV-04’, ‘Nguyễn Duy’, 30-01-1989, ‘10C’  Thứ tự các thành phần trong bộ là quan trọng. t = (‘TV-04’, ‘10C’, 30-01-1989, ‘Nguyễn Duy’ Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 19
  19. Đại số quan hệ  Ngôn ngữ tập hợp:  5 phép toán cơ bản:  Một lần một quan hệ, mà tất cả các bộ  Phép chọn (có thể được lấy từ nhiều quan hệ  Phép chiếu khác nhau) được xử lý trong một lệnh và không có lặp vòng.  Phép tích Descartes  Bao gồm các phép toán thực hiện  Phép hợp trên một hoặc nhiều quan hệ để tạo ra  Phép hiệu một quan hệ khác mà không làm thay đổi các quan hệ ban đầu.  3 phép toán suy dẫn (tính từ các phép toán cơ bản):  Phép toán một ngôi (1 quan hệ),  Phép giao  Phép toán hai ngôi (2 quan hệ).  Phép kết  Phép chia Copyright © 2022 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 20
  20. Phép chọn  Phép chọn trên quan hệ r theo điều kiện F, ký hiệu là F(r),  Cho kết quả là một quan hệ bao gồm các bộ của r thỏa mãn điều kiện F: F(r) = {t | t  r và F(t) = true}  Nếu quan hệ r có bậc n và có k bộ thì F(r) có bậc n và có tối đa k bộ. Nhân viên Mã số Họ tên Phòng ban Lương  Liệt kê các nhân viên có lương 100 Nguyễn Văn Anh Tiếp thị 48000 dưới 48000 được thực hiện bởi phép chọn: 140 Phạm Thị Em Kế toán 52000 110 Bùi Hoàng Thi Thông tin 43000 Lương < 48000 (Nhân viên) 190 Lê Thị Sâm Tài chính 55000 Mã số Họ tên Phòng ban Lương 150 Trần Phi Thường Tiếp thị 42000 110 Bùi Hoàng Thi Thông tin 43000 150 Trần Copyright Phi Thường © 2022 Tiếp thị 42000 | nguyenduyliem@hcmuaf.edu.vn Mô hình dữ liệu quan hệ 21
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2