Dữ liệu được biểu diễn dưới dạng bảng với các hàng và các cột: CSDL là tập hợp các bảng còn gọi là quan hệ Mỗi hàng là một bản ghi record, còn được gọi là bộ tuple Mỗi cột là một thuộc t
Trang 1Sở Tài nguyên và Môi trường
Bài giảng
Cơ sở dữ liệu đất đai
Chương 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU
Trường Đại học Tài nguyên và Môi trường TP.HCM
Mục tiêu bài học hôm nay
Giải thích khái niệm, thông tin, dữ liệu và cơ sở dữ liệu (CSDL)
Các phương pháp tiếp cận quản lý dữ liệu và ưu điểm, nhược điểm.
Kiến trúc của một cơ sở dữ liệu
Giải thích các mô hình dữ liệu khác nhau
Hệ quản trị CSDL (DBMS) và hệ quản trị CSDL quan hệ
(RDBMS)
I DỮ LIỆU VÀ CSDL 1 Thông tin là gì?
Thông tin (Information)
Kinh doanh Ngân hàng và tài chính Giáo dục Hành chính Giải trí
…
Dữ liệu (data)
Là các thông tin của đối tượng (ví dụ: người, vật, một khái niệm,
sự việc…) được lưu trữ trên thiết bị lưu trữ (máy tính hoặc giấy).
Có thể truy nhập vào dữ liệu để trích xuất ra các thông tin.
Dữ liệu được mô tả dưới nhiều dạng khác nhau (các ký tự,
ký số, hình ảnh, ký hiệu, âm thanh…) Mỗi cách mô tả như vậy gắn với một ngữ nghĩa nào đó.
CSDL được thiết kế, xây dựng và được lưu trữ trong máy tính cho phép người dùng lưu trữ dữ liệu, truy xuất thông tin hoặc cập nhật dữ liệu
Lưu trữ thông tin
I DỮ LIỆU VÀ CSDL 3 Cơ sở dữ liệu
Trang 2CSDL được tổ chức có cấu trúc:
Các dữ liệu lưu trữ có cấu trúc thành các bản ghi (record), các
trường dữ liệu (field).
Các dữ liệu lưu trữ có mối quan hệ (relational) với nhau.
Khả năng truy xuất thông tin từ CSDL:
CSDL được cấu trúc để dễ dàng truy cập, quản lý và cập nhật dữ
Truy cập CSDL để tìm các cuốn sách theo tên tác giả, theo nhà xuất bản…
I DỮ LIỆU VÀ CSDL 3 Cơ sở dữ liệu
Quản lý dữ liệu: là quản lý một số lượng lớn dữ liệu, bao
gồm cả việc lưu trữ và cung cấp cơ chế cho phép Thao
tác (thêm, sửa, xóa dữ liệu) và Truy vấn dữ liệu.
Tổng quan về CSDL
9
I DỮ LIỆU VÀ CSDL 5 Quản lý dữ liệu
Phòng Kinh doanh Phòng Kinh doanh
Phòng
Kế toán nhân sự Phòng
Thông tin NV
Có 2 phương pháp quản lý dữ liệu:
Tập tin
Tập tin
Hệ Thống Quản
Lý Tập Tin
QUẢN LÝ TIỀN LƯƠNG
I DỮ LIỆU VÀ CSDL 5 Quản lý dữ liệu
Ưu và nhược điểm của việc quản lý dữ liệu theo dạng tập tin?
Trang 3Tổng quan về CSDL 13
I DỮ LIỆU VÀ CSDL
Dữ liệu tách biệt và không chia sẻ
Mỗi ứng dụng có 1 hệ thống tập tin riêng
Việc chia sẻ dữ liệu giữa các ứng dụng vô cùng khó
khăn do khác nhau về cấu trúc.
Dữ liệu bị trùng lặp
Tốn không gian lưu trữ
Có thể dẫn tới tình trạng không nhất quán dữ liệu
khi cập nhật trên các hệ thống khác nhau
Định dạng không tương thích Các tập tin được định nghĩa theo ngôn ngữ lập trình nào đó khó chia sẻ
Câu truy vấn bị cố định trước
Là hệ quả của việc phụ thuộc dữ liệu.
Mỗi chương trình truy xuất được phát triển cố định cho một cấu trúc dữ liệu bên dưới.
5 Quản lý dữ liệu
Quản lý dữ liệu bằng tập tin
15
Hệ Quản Trị CSDL
Quản lý dữ liệu bằng CSDL giúp dữ liệu được lưu trữ một cách hiệu quả
và có tổ chức, cho phép quản lý dữ liệu nhanh chóng và hiệu quả
Dữ liệu độc lập với chương trình
Dữ liệu được quản lý tập trung
Dữ liệu được chia sẻ cho nhiều ứng dụng
Dữ liệu được đảm bảo an toàn
Dữ liệu ít dư thừa
Quan điểm cũ (theo Files)
Personal
Tax data Personal data
Payroll
Ví dụ về dư thừa dữ liệu
I DỮ LIỆU VÀ CSDL Quản lý dữ liệu bằng CSDL
Tiếp cận mới (theo CSDL)
I DỮ LIỆU VÀ CSDL Quản lý dữ liệu bằng CSDL
Lợi ích của hệ thống quản lý bằng CSDL?
CSDL
I DỮ LIỆU VÀ CSDL 5 Quản lý dữ liệu bằng CSDL
Tránh dư thừa, trùng lắp dữ liệu
Đảm bảo sự nhất quán trong CSDL
Các dữ liệu lưu trữ có thể được chia sẻ
Có thể thiết lập các chuẩn trên dữ liệu
Duy trì tính toàn vẹn dữ liệu
Đảm bảo bảo mật dữ liệu
Trang 4Tổng quan về CSDL 19
I DỮ LIỆU VÀ CSDL 5 Quản lý dữ liệu bằng CSDL
Do tính chia sẻ của CSDL cho nhiều người dùng nên tính
chủ quyền của dữ liệu có thể bị lu mờ (có nghĩa là người
dùng có thể xem, sửa xóa) Điều này, CSDL cần phải có cơ
chế phân quyền, ai được làm gì và mọi thao tác trên csdl
phải được ghi log.
dụng.
Do có nhiều người được phép khai thác CSDL một cách đồng thời
nên cần phải có một cơ chế bảo mật và phân quyền hạn khai thác
CSDL.
Tuy nhiên, để đạt được các ưu điểm trên, CSDL đặt ra những vấn đề
cần phải giải quyết Đó là:
Việc quản lý dữ liệu tập trung có thể làm tăng khả năng mất mát hoặc sai lệch thông tin khi có sự cố như mất điện đột xuất, một phần đĩa lưu trữ CSDL bị hư v.v…
CSDL cung cấp khả năng trừu tượng hóa dữ liệu thông qua các lớp Bao gồm
3 lớp: Lớp trong (còn gọi là mức vật lý – Physical), Lớp quan niệm
(Conception hay Logical) và Lớp ngoài
II KIẾN TRÚC CỦA CƠ SỞ DỮ LIỆU
Lớp quan niệm (Logic):
CSDL mức quan niệm là một sự biểu diễn trừu tượng CSDL
mức vật lý ; hoặc ngược lại, CSDL vật lý là sự cài đặt cụ thể
của CSDL mức quan niệm.
Tại mức này sẽ giải quyết cho câu hỏi CSDL cần phải
lưu giữ bao nhiêu loại dữ liệu ? đó là những dữ liệu gì
? Mối quan hệ giữa các loại dữ liệu này như thế nào ?
II KIẾN TRÚC CỦA CƠ SỞ DỮ LIỆU
Lớp bên ngoài:
Bao gồm các khung nhìn (view) và được gọi chung là subschema
Khung nhìn: là khái niệm cho phép nhiều người dùng quan sát
dữ liệu theo nhiều cách khác nhau trong khi dữ liệu lưu bên dưới tầng vật lý là duy nhất.
II KIẾN TRÚC CỦA CƠ SỞ DỮ LIỆU
Trang 5Mức quan niệm (Conceptual level): là mức nhìn tổng thể về CSDL, đây là góc nhìn của người có trách nhiệm quản trị CSDL.
Mức vật lý / trong (Physical / Internal level): là mức tổ chức vật lý của dữ liệu trong CSDL, đây là góc nhìn của những nhà phát triển (deverlopers) CSDL
II KIẾN TRÚC CỦA CƠ SỞ DỮ LIỆU
Sự phân biệt giữa 3 lớp tạo nên 2 tầng độc lập: Độc lập dữ
liệu vật và Độc lập dữ liệu logic
II KIẾN TRÚC CỦA CƠ SỞ DỮ LIỆU
Độc lập logic: Các thay đổi
lược đồ quan niệm (thêm/xóa
thực thể) thì không làm ảnh
hưởng tới lược đồ ngoài hay
phải viết lại chương trình ứng
Mô hình dữ liệu sẽ quyết định cách thức lưu trữ và truy cập dữ liệu
Tùy từng ngữ cảnh quan hệ giữa các thành phần dữ liệu trong CSDL, mô hình phức hợp được áp dụng để việc lưu trữ và truy xuất dữ liệu đạt hiệu quả cao nhất.
III CÁC MÔ HÌNH CSDL
Là mô hình trừu tượng dùng để mô tả dữ liệu và phương
thức (phép toán) truy xuất dữ liệu
Có nhiều loại mô hình dữ liệu khác nhau (để mô tả dữ
liệu trong CSDL), mỗi loại đặt trưng cho một cách tiếp
cận khác nhau của các nhà phân tích
Mô hình phân cấp (Hierarchical model)
Mô hình mạng (network model)
Mô hình quan hệ (relation model)
Mô hình hướng đối tượng (object oriented model)
III CÁC MÔ HÌNH CSDL III CÁC MÔ HÌNH CSDL 1 Mô hình dữ liệu phân cấp
Tổ chức theo hình cây, mỗi nút biểu diễn một thực thể dữ liệu.
Liên hệ dữ liệu thể hiện trên liên hệ giữa nút cha và nút con Mỗi nút cha có thể có một hoặc nhiều nút con, nhưng mỗi nút con chỉ
có thể có một nút cha.
Do đó mô hình phân cấp thể hiện các kiểu quan hệ:
1-1 1-N
Trang 6 Ưu điểm:
Dễ xây dựng và thao tác
Phù hợp với các lĩnh vực tổ chức phân cấp (VD: Tổ chức nhân
sự của công ty )
Hạn chế:
Một nút con không thể có quá một nút cha -> Không biểu
diễn được các quan hệ dữ liệu phức tạp
III CÁC MÔ HÌNH CSDL 2 Mô hình dữ liệu mạng
Tính chất:
Ưu điểm:
Dễ biểu diễn mô hình
Diễn đạt được các liên hệ dữ liệu phức tạp
Nhược điểm:
Truy xuất chậm
Không thích hợp với các CSDL có quy mô lớn.
III CÁC MÔ HÌNH CSDL 2 Mô hình dữ liệu mạng
Trong mô hình dữ liệu quan hệ, không có các liên kết vật lý Dữ liệu được biểu diễn dưới dạng bảng với các hàng và các cột:
CSDL là tập hợp các bảng (còn gọi là quan hệ) Mỗi hàng là một bản ghi (record), còn được gọi là bộ (tuple) Mỗi cột là một thuộc tính, còn được gọi là trường (field)
Dữ liệu trong hai bảng liên hệ với nhau thông qua các cột chung
Có các toán tử để thao tác trên các hàng của bảng.
III CÁC MÔ HÌNH CSDL 3 Mô hình dữ liệu quan hệ
Mô hình dữ liệu quan hệ (Relational Data Model) – còn được gọi tắt là mô hình quan hệ (Relational Model) ra đời năm 1970 Nền tảng cơ bản của nó là khái niệm
lý thuyết tập hợp trên các quan hệ, tức là tập của các bộ giá trị (Value Tuples)
Ví dụ: mô hình dữ liệu quan hệ trong CSDL Dữ liệu đất đai nhóm
dữ liệu “NGƯỜI SỬ DỤNG ĐẤT”
III CÁC MÔ HÌNH CSDL 3 Mô hình dữ liệu quan hệ
Ra đời vào khoảng đầu năm 90, dựa trên cách tiếp cận của phương pháp lập trình hướng đối tượng.
CSDL bao gồm các đối tượng:
Mỗi đối tượng bao gồm các thuộc tính, phương thức (hành vi) của đối tượng.
Các đối tượng trao đổi với nhau thông qua các phương thức.
Một đối tượng có thể được sinh ra từ việc thừa kế từ đối tượng khác, III CÁC MÔ HÌNH CSDL 4 Mô hình dữ liệu hướng đối tượng
Trang 7III CÁC MÔ HÌNH CSDL 5 Mô hình hóa nhiều cấp
Hệ quản trị CSDL (DataBase Management System – DBMS) là các phần mềm giúp tạo các CSDL và cung cấp cơ chế lưu trữ, truy cập theo các mô hình CSDL.
Xử lý truy xuất đồng thời
Đảm bảo an toàn dữ liệu
Xử lý khôi phục sau sự cố
Quản lý lưu trữ vật lý
Trang 8Những lợi ích DBMS mang lại:
IV HỆ QUẢN TRỊ CSDL - DBMS 3 Ưu điểm của hệ quản trị CSDL
Kiểm soát sự dư thừa dữ liệu
Dữ liệu nhất quán
Có nhiều thông tin hơn từ cùng 1 khối lượng dữ liệu
Chia sẻ dữ liệu
Cải thiện tính nhất quán của dữ liệu
Cải tiến độ an toàn
Đạt được các yêu cầu về chuẩn hóa
Tốn chi phí cho phần cứng bổ sung thêm
Tốn chi phí chuyển đổi
Hiệu năng đôi khi bị giảm sút
Khả năng bị sự cố tăng Nhược điểm của hệ quản trị CSDL?
Hệ quản trị CSDL quan hệ (Relational DataBase
ữ iệu D ệu
CSDL
IV HỆ QUẢN TRỊ CSDL - DBMS 5 Hệ quản trị CSDL quan hệ
Tất cả các thao tác trên CSDL đều diễn ra trên các bảng.
Lập trình viên và Thiết kế viên
Thu thập yêu cầuThiết kế CSDLThiết kế phần mềm đểnhật CSDL
Người dùng
quản trị CSDL như
IV HỆ QUẢN TRỊ CSDL - DBMS 6 Người dùng Hệ quản trị CSDL
Tại sao lại tập trung vào CSDL quan hệ?
Dễ dàng định nghĩa, duy trì và thao tác dữ liệu lưu trữ.
Trích xuất dữ liệu dễ dàng
Dữ liệu được chuẩn hóa và được bảo vệ tốt
Nhiều nhà cung cấp cung cấp phần mềm
Dễ dàng chuyển đổi giữa nhà cung cấp và nhà triển khai
Trang 9Tổng kết bài học
CSDL là tập hợp dữ liệu liên quan với nhau được lưu trữ có cấu trúc
và dễ dàng cập nhật dữ liệu hoặc trích xuất thông tin từ CSDL.
Tổ chức CSDL tạo ra các lớp trừu tượng CSDL: lớp vật lý, lớp lo-gic
và lớp bên ngoài.
Ban đầu dữ liệu lưu trữ rời rạc dưới dạng các file, gọi là mô hình dữ
liệu file phẳng.
Sau đó, các mô hình dữ liệu khác được thiết kế cho phép mô tả
cách thức lưu trữ dữ liệu và cách thức để truy nhập dữ liệu dễ dàng
Tổng kết bài học
Hệ quản trị CSDL (DBMS) là tập các chương trình cho phép
người dùng lưu trữ, cập nhật và trích xuất thông tin từ CSDL.
Hệ quản trị CSDL quan hệ (RDBMS) là tập hợp các chương trình
cho phép tạo và thao tác với CSDL quan hệ.
Có nhiều đối tượng người dùng RDBMS như: quản trị CSDL, thiết
kế CSDL, phân tích và thiết kế ứng dụng, cài đặt CSDL, người dùng cuối.
Trang 10Sở Tài nguyên và Môi trường
Bài giảng
Cơ sở dữ liệu đất đai
Chương 2: MÔ HÌNH THỰC THỂ LIÊN KẾT
Trường Đại học Tài nguyên và Môi trường TP.HCM Mô hình hóa nhiều cấp
Tại sao phải có mô hình quan niệm
Ngôn ngữ
nghiệp vụ
Ngôn ngữ cơ
sở dữ liệu SQLChuyển đổi Trực tiếp ?
-Người phân tích nghiệp vụ Lập trình viên
Ai cũng hiểuĐộc lập hệ quản trị; Độc lập mô hình DL
Có nhiều kỹ thuật khác nhau để phát triển hệthống
Các ký thuật được chia thành 3loại:
– Mô hình hóa chức năng – Mô hình thông tin – Tham chiếu chéo
Quá trình thiết kế CSDL
Các kỹ thuật phát triển hệ thống
Mô hình quan niệm, logic và Vật lý
Thông tin và xử lý được mô hình hóa tách biệtsau
đó sẽ kiểm tra chéo
Kết quả phát triển là CSDL lưu trữ dữ liệu và các ứng
ApplicationDatabase
Cross checking
Cross checking
AnalysisDesignBuild
Thiết kế quan niệm và phân tích chức năng– Tạo một sơ đồ quan niệm (cấp cao), ví dụ: ERD– Đặc tả giao tác cấp cao tương ứng với các thao tác trên CSDL
Thiết kếlogic– Ánh xạ lược đồ quan niệm thành lược đồ logic: vd: mô hình quan hệ
Trang 11Phụ thuộc
Độc lập HQT
Phân tích yêu cầu
Thiết kế mức vật lý
Các yêu cầu về dữ liệu
Lược đồ quan niệm
Thiết kế mứclogic
Lược đồ logic
Chương trình ứng dụng
Thiết kế chương trình ứng dụng
Các yêu cầu về chức năng
Các khái niệm và ký hiệu lược đồ ER
Lược đồ ER ( Entity – Relationship Model ):
Là đồ thị biểu diễn các tập thực thể, thuộc tính và mối quan hệ giữa chúng.
- Đỉnh:
Tên thuộc tính Thuộctính
Tên quan hệ Quan hệ
Các khái niệm và ký hiệu lược đồ ER
Một thực thể (entity) là một đối tượng của thế giới thực,
có thể trừu tượng hoặc cụ thể và tồn tại độc lập
Tập hợp các thực thể giống nhau tạo thành 1 tậpthực thể (entity set)
Thực thể (Entity) Đối tượng (Object)Tập thực thể (Entity set) Lớp đối tượng (Class of Object) Thành phần: Thành phần:
- Thuộc tính/Dữ liệu (attributes) - Thuộc tính (Attribute)
- Thao tác trên dữ liệu (method)
Oanh Hoà
Thực thể - Tập thực thể
Là những đặc tính riêng biệt của tập thực thể
Là tính chất của thực thể cần được quản lý
Chỉ quan tâm tới những tính chất có liên quan tới ứng dụng
Ví dụ tập thực thểNHANVIEN có các thuộc tính
– Họ tên– Ngày sinh– Trình độ– Địa chỉ– …
Nên có 1 mô tả gắn gọn của thuộc tính
Thuộc tính
Tên thuộc tính
Trang 12 Thuộc tính kết hợp: có thể tách thành nhiều
thuộc tính nhỏ hơn (Vd: Địa chỉ gồm số nhà,
tên đường, ĐVHC )
Thuộc tính khóa: là một hoặc một số tối thiểu
các thuộc tính của một tập thực thể mà giá trị
của nó cho phép phân biệt các thực thể khác
nhau trong tập thực thể (vd: số Mã nhân
viên)
Thuộc tính đa trị: Có thể nhiều giá trị khác
nhau ở cùng 1 thực thể (vd: Trình độ NN:
Anh, Pháp )
Thuộc tính suy diễn: giá trị của nó được suy
ra từ thuộc tính khác (vd: Năm sinh tuổi)
Các loại thuộc tính
Tên thuộc tính Khóa
Tên thuộc tính dẫn xuất
Tên thuộc tính
đa trị
Tên thuộc tính kết hợp Tên thuộc tính Tên thuộc tính Tên thuộc tính
Quan hệ: Là sự liên kết giữa 2 hay nhiều tập thựcthể
Ký hiệu:
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
Lam_viec La_truong_phong
Mối quan hệ
Tên quan hệ
.
Quan hệ 1:1: Một thực thể của kiểu A có liên kết với một thực
thể của kiểu B và ngược lại.
Một nhân viên (EMPLOYEE) quản lý một phòng (DEPARTMENT) , và một phòng chỉ có một nhân viên quản lý.
Quan hệ 1:N Một thực thể của kiểu A có liên kết với nhiều thực
thể của kiểu B Nhưng một thực thể của kiểu B lại có liên kết duy
nhất với thực thể của kiểu A.
Một nhân viên (EMPLOYEE) chỉ làm việc cho một phòng
(DEPARTMENT), và một phòng có nhiều nhân viên làm việc.
Quan hệ N:M: Một thực thể của kiểu A có liên kết với nhiều thực
thể của kiểu B và ngược lại.
Một nhân viên (EMPLOYEE) có thể làm việc nhiều dự án, và một
sự án có thể được làm bởi nhiều nhân viên.
Trang 13(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)
NV (1,1) Lam_viec PB
NV Phan_con DA
g (0,n)
GIẢNG VIÊN MÔN HỌC
Thuộc tính này không thể gắn liền với những thực thể
tham gia vào mối quan hệ
NHANVIEN (0,n) Lam_viec (1, n) DUAN
THGIAN
Thuộc tính trên mối quan hệ
Còn được gọi là thuộc tính định danh của tập thực thể
Dùng để phân biệt giữa các thực thể khác nhau trong tập thực thể
Khóa K của tập thực thể E là một hay nhiều thuộc tính sao cho
– Lấy ra 2 thực thể bất kỳ e1, và e2 trong E– Thì e1 và e2 không thể có các giá trị giống nhau tại các thuộc tính trong K
Chú ý
– Mỗi tập thực thể phải có 1 khóa– Một khóa có thể có 1 hay nhiều thuộc tính– Có thể có nhiều khóa trong 1 tập thực thể, ta sẽ chọn ra 1 khóa làm khóa chính cho tập thực thể đó
– Thuộc tính khóa có thể đã có thực HOẶC chưa tồn tại
Thuộc tính khóa
Trang 14Thuộc tính khóa
Là thực thể mà có khóa được từ những thuộc tínhcủa tập thực thể khác
Thực thể yếu (weak entity set) phải tham gia vào mối
quan hệ mà trong đó có một tập thực thể chính (kiểu
MANV
THANNHAN GT
TENTN
QUANHE NS Co_than_nhan (1,1) (1,n)
Tập thực thể yếu
(1) Xác định tập thực thể(2) Xác định mối quan hệ(3) Xác định thuộc tính và gắn thuộc tính cho tập thực thể và mối quan hệ
(4) Quyết định miền giá trị cho thuộc tính(5) Quyết định thuộc tính khóa(6) Quyết định (min, max) cho mối quan hệ
Tên thuộc tính
đa trị Tên thuộc tính kết hợp
Tên thuộc tính Tên thuộc tính Tên thuộc tính
Các ký hiệu chuẩn trong lược đồ ER
Tập thực thể yếu
Ví dụ ‘Quản lý đề án công ty
CSDL đề án công ty theo dõi các thông tin liên quanđến nhân viên, phòng ban và đề án
Công ty có nhiềuđơn vị, mỗi đơn vị có tên, mã đơn vị duy
nhất, một trưởng phòng và ngày nhận chức Mỗi đơn vị có thể
ở nhiều địa điểm khác nhau
Dự án có tên dự án, mã duy nhất, do 1 một phòng ban chủ trì
và được triển khai ở 1 địa điểm
Nhân viên có mã số, Họ tên, địa chỉ, ngày sinh, giới tính và
lương Mỗi nhân viên làm việc ở 1 phòng ban, tham gia vào
có một người quản lý trực tiếp
Một nhân viên có thể có nhữngngười con được hưởng bảo
hiểm theo nhân viên Mỗi người con của nhân viên có tên, giớitính, ngày sinh
Trang 15Ví dụ ‘Quản lý đề án công ty
ĐƠN VỊNHÂN VIÊN
DỰ ÁNCON
Trưởng phòng
Ngày bắt đầu
Làm cho
Thực hiệnTham
(0,n)
(1,1)(1,n)
(1,n)(0,n)
(1,1)
(0,1)
(0,n)
BÀI TẬP VỀ NHÀ Hãy vẽ sơ sơ đồ ER cho ứng dụng CSDL Công ty BĐS như sau:
Một Công ty BĐS có một sốVăn phòng tại nhiều địa điểm Mỗi Văn
phòng có mã số văn phòng, tên và địa điểm
Mỗi Văn phòng có 1 sốnhân viên Mỗi nhân viên có mã số nhân viên và
tên nhân viên (tên gồm họ, tên đệm, tên), ngày sinh Với mỗi Văn phòng
có một nhân viên làm trưởng Văn phòng
Một nhân viên có một hay nhiềuthân nhân (vợ/con) Thông tin về nhân
thân gồm tên, ngày sinh và mối quan hệ với nhân viên
Công ty có danh sách cácBĐS cần bán Thông tin về BĐS gồm mã số
BĐS, thông tin mô tả, giá sàn, địa chỉ Mỗi BĐS được rao bán tại 1 và chỉ
tư vấn nhiều BĐS Mỗi Văn phòng có nhiều BĐS rao bán và có thể không
có BĐS nào rao bán
Mỗi BĐS có một chủ nhân.Chủ nhân được xác định bởi mã số chủ
nhân Một chủ nhân có thể có nhiều BĐS Thông tin về chủ nhân còn cótên, địa chỉ và số điện thoại
Sở Tài nguyên và Môi trường
Bài giảng
Cơ sở dữ liệu đất đai
Chương 3: MÔ HÌNH DỮ LIỆU QUAN HỆ
Trường Đại học Tài nguyên và Môi trường TP.HCM Mô hình dữ liệu quan hệ
Các khái niệm cơ bản
1 Quan hệ (relation)
2 Thuộc tính (attribute)
3 Bộ giá trị (Tuple)
4 Lược đồ quan hệ (realation schema) và Lược đồ cơ sở
dữ liệu (database schema)
5 Thể hiện của lược đồ quan hệ
6 Khóa – Siêu khóa – Khóa dự tuyển – Khóa chính – Khóa ngoại
7 Quy tắc chuyển đổi lược đồ ER sang mô hình dữ liệu quan hệ
1 cột là 1 thuộc tính của nhân viên
TENNV HONV NS DIACHI GT LUONG PHG
Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000 5
Các thông tin lưu trữ trong CSDL được tổ chức thành bảng
(table) 2 chiều gọi là quan hệ
Quan hệgồm– Tên– Tập hợp các cột
• Cố định
• Được đặt tên
• Có kiểu dữ liệu– Tập hợp các dòng
• Thay đổi theo thời gian
Tên các cột của quanhệ
Mô tả ý nghĩa cho các giá trị tại cột đó
Thuộc tính - Attribute
Thuộc tính
Trang 16Là các dòng của quan hệ (trừ dòng tiêu đề)
Thể hiện giá trị cụ thể của các thuộc tính
Bộ - Tuple
TENNV HONV NS DIACHI GT LUONG PHG
Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000 5
Hang Bui 07/19/1968 332 NTH Q1 Nu 25000 4
Nhu Le 06/20/1951 291 HVH QPN Nu 43000 4
Hung Nguyen 09/15/1962 Ba Ria VT Nam 38000 5 HANVIEN(MNV,TENNV,HONV,NS,DIACHI,GT, LUONG,HG)
Là sự trừu tượng hóa của quan hệ ở mức độ cấu trúc của bảng 2 chiều
Lược đồ quan hệ chỉra– Tên của quan hệ– Tên của tập thuộc tính
NHANVIEN(MANV, TENNV, HONV, NS, DIACHI, GT, LUONG, PHG)
PHONGBAN(MAPHG, TENPHG, TRPHG, NG_NHANCHUC)
DIADIEM_PHG(MAPHG, DIADIEM)
THANNHAN(MA_NVIEN, TENTN, GT, NS, QUANHE)
DEAN(TENDA, MADA, DDIEM_DA, PHONG)
Siêu khóa (SuperKey)
– Khóa của quan hệ R(A1, A2, A3,…, An) là tập các thuộc tính K thỏa mãn: bộ q1, q2 của R đều tồn tại thuộc tính A K sao cho q1[A] q2[A]
Khóa (Keys)
Khóa chính (PrimaryKey)
– Khi cài đặt quan hệ thành bảng (table)
• Chọn 1 khóa làm cơ sở để nhận biết các bộ
• Khóa được chọn gọi là khóa chính (PK - primary key)
– Các thuộc tính khóa chính phải có giá trị khác null– Các thuộc tính khóa chính thường được gạch dướiNHANVIEN(MANV, TENNV, HONV, NS, DCHI, GT, LUONG, PHG)
NHANVIEN(MANV, TENNV, HONV, NS, DCHI, GT, LUONG, PHG)
PHONGBAN(TENPHG,MAPHG)
Khóa ngoại Quan hệ bị Khóa chính
tham chiếu
Khóa ngoại – Foreign key
– Xét 2 lược đồ R và S, gọi FK là tập thuộc tính khác
rỗng của R
• FK là khóa ngoại (Foreign Key) của R khi các thuộc tính
trong FK phải có cùng miền giá trị với các thuộc tính
khóa chính của S Giá trị tại FK của một bộ t1R
– Hoặc bằng giá trị tại khóa chính của một bộ t2S
Nghien cuu Dieu hanh Quan ly
Khóa (Keys)
Trang 17 RBTV (Integrity Constraint)
– Là những qui tắc, điều kiện, ràng buộc cần được
thỏa mãn trong một thể hiện của CSDL quan hệ
RBTV được mô tả khi định nghĩa lược đồ quan hệ
RBTV được kiểm tra khi các quan hệ có thay đổi
Ràng buộc toàn vẹn
–Trong một quan không được có thuộc tính nào của khóa chính chưa giá trị null
–Nếu quan hệ có thuộc tính là khóa ngoại thì thuộc tính
đó phải tham chiếu được / tồn tại ở quan hệ bị tham chiếu
NHANVIEN
N DCHI
GT
LUONG HONV TENNV MANV
Lam_viec La_truong_phong
PHONGBAN
TENPHG MAPHG (1,1) (1,n)
(1,1) (1,1)
PHONGBAN(TENPHG,MAPHG)NHANVIEN(MANV, TENNV, HONV, NS, DCHI, GT, LUONG)
CHUYỂN ĐỔI
MÔ HÌNH E/R LƯỢC ĐỒ QUAN HỆ
CHUYỂN ĐỔI
MÔ HÌNH E/R LƯỢC ĐỒ QUAN HỆ
Các qui tắc chuyển đổi (tt)
(2) Mối quanhệ
– (2a) Một-Một
• Thêm vào quan hệ này thuộc tính khóa của quan hệ kia
• Hoặc thêm thuộc tính khóa vào cả 2 quan hệ
PHONGBAN(MAPHG, TENPHG, MANV, NG_NHANCHUC)
Các qui tắc chuyển đổi (tt)
Lam_viec PHONGBAN
TENPHG MAPHG (1,1) (1,n)
NHANVIEN(MANV, TENNV, HONV, NS, DCHI, GT, LUONG,MAPHG)
CHUYỂN ĐỔI
MÔ HÌNH E/R LƯỢC ĐỒ QUAN HỆ
Trang 18DDIEM_D A MADA TENDA
• Tạo một quan hệ mới có
– Tên quan hệ là tên của mối quan hệ
– Thuộc tính là những thuộc tính khóa của các tập thực thể
PHANCONG(MANV, MADA, THOIGIAN)
CHUYỂN ĐỔI
MÔ HÌNH E/R LƯỢC ĐỒ QUAN HỆ
Các qui tắc chuyển đổi (tt)
(3) Thực thểyếu
– Chuyển thành một quan hệ
• Có cùng tên với thực thể yếu
• Thêm vào thuộc tính khóa của quan hệ liên quan
THANNHAN(MANV, TENTN, GT, NS, QUANHE)
QUANHE NS Co_than_nhan (1,1)
GT
THANNHAN
TENTN (1,n)
CHUYỂN ĐỔI
MÔ HÌNH E/R LƯỢC ĐỒ QUAN HỆ
Các qui tắc chuyển đổi (tt)
(4) Thuộc tính đatrị
– Chuyển thành một quan hệ
• Có cùng tên với thuộc tính đa trị
• Thuộc tính khóa của quan hệ này là khóa ngoài của quan
hệ chứa thuộc tính đa trị
CHUYỂN ĐỔI
MÔ HÌNH E/R LƯỢC ĐỒ QUAN HỆ
PhongBan
PHONGBAN(MAPHG, TENPHG, MANV, NG_NHANCHUC)
DIADIEM(MAPHG,DIADIEM)
ĐỒNG NAIHCM
HÀ NỘI
Tổng kết
– Loại thực thể– Quan hệ 1:1, 1:N– Quan hệ N:M– Quan hệ đa ngôi– Thuộc tính– Thuộc tính phức hợp– Thuộc tính đa trị– Tập các giá trị– Thuộc tính khóa
Mô hình quan hệ
– Quan hệ thực thể– Khóa ngoài– Quan hệ với 2 khóa ngoài– Thuộc tính– Tập các thuộc tính đơn– Quan hệ với khóa ngoài– Miền giá trị– Khóa chính (khóa dự tuyển)
CHUYỂN ĐỔI
MÔ HÌNH E/R LƯỢC ĐỒ QUAN HỆ
BÀI TẬP VỀ NHÀ
Hãy vẽ sơ sơ đồ ER cho ứng dụng CSDL Công ty BĐS như sau:
Một Công ty BĐS có một sốVăn phòng tại nhiều địa điểm Mỗi Văn
phòng có mã số văn phòng, tên và địa điểm
Mỗi Văn phòng có 1 sốnhân viên Mỗi nhân viên có mã số nhân viên và
tên nhân viên (tên gồm họ, tên đệm, tên), ngày sinh Với mỗi Văn phòng
có một nhân viên làm trưởng Văn phòng
Một nhân viên có một hay nhiềuthân nhân (vợ/con) Thông tin về nhân
thân gồm tên, ngày sinh và mối quan hệ với nhân viên
Công ty có danh sách cácBĐS cần bán Thông tin về BĐS gồm mã số
BĐS, thông tin mô tả, giá sàn, địa chỉ Mỗi BĐS được rao bán tại 1 và chỉ
một Văn phòng và được giao cho 1 nhân viên tư vấn, mỗi nhân viên được
có BĐS nào rao bán
Mỗi BĐS có một chủ nhân.Chủ nhân được xác định bởi mã số chủ
nhân Một chủ nhân có thể có nhiều BĐS Thông tin về chủ nhân còn có
tên, địa chỉ và số điện thoại
Trang 19Lược đồ ER của công ty BĐS
VĂN PHÒNGNHÂN VIÊN
BĐSTHÂN NHÂN
Thực hiện
Tư vấnCó
(1,1)(0,1)
(0,n)
(1,1)(1,1)(1,n)
(0,n)
(1,1)
Giá sàn
(1,n)
(1,1)
NHANVIEN(MANV, TEN, HO, TENDEM, NGAYSINH, MA_VP)
VANPHONG(MAVP, TEN, MA_NV)
THANNHAN(MA_NV, TEN_TN, NGAYSINH, QUANHE)
BĐS(MABĐS, TTMOTA, GIASAN, DIACHI, MA_NV, MA_VP, MA_CN)
CHUNHAN (MACN, TEN, DIACHI, DIENTHOAI)
Lược đồ CSDL và ràng buộc tham chiếu
NHANVIEN
MANV TENNV TENDEM HO NGAYSINH MA_VP
6 DUNG VAN NGUYEN 20/02/1997 4
7 HOANG THANH NGUYEN 01/02/1990 6
9 TRINH NGOC NGUYEN 02/09/1990 4
10 TUAN VAN TRAN 02/01/2000 7
VANPHONG
5 DUNG BIEN HOA 99999
7 MINH BINH DUONG 77777
8 TRUNG BIEN HOA 66666
1 Liệt kê danh sách các Văn phòng giao dịch BĐS có địa điểm tại “Đồng Nai” và “HCM”
Yêu cầu thông tin: Mã văn số Văn phòng, Tên Văn phòng, Địa điểm của Văn phòng SELECT MAVP, TENVP, DIADIEM
FROM VANPHONG WHERE VANPHONG.DIADIEM LIKE "DONG NAI" OR VANPHONG.DIADIEM LIKE "HCM";
2 Liệt kê danh sách các nhân viên có ngày sinh là 02/9/1995
Yêu cầu thông tin: Mã nhân viên, họ, tên đệm, tên SELECT NHANVIEN.HO, NHANVIEN.TENDEM, NHANVIEN.TENNV, NHANVIEN.NGAYSINH FROM NHANVIEN
WHERE NHANVIEN.NGAYSINH=#02/9/1995#
Câu lệnh SQL
3 Liệt kê danh sách nhân viên là trưởng phòng
Yêu cầu thông tin: Mã nhân viên, họ, tên đệm, tên
SELECT NHANVIEN.MANV, NHANVIEN.HO, NHANVIEN.TENDEM, NHANVIEN.TENNV
FROM VANPHONG, NHANVIEN
WHERE NHANVIEN.MANV=VANPHONG.MA_NV;
4 Liệt kê danh sách BĐS cần bán do Văn phòng tại Đồng Nai rao bán
Yêu cầu thông tin: mã số BĐS, thông tin mô tả, giá sàn, địa chỉ, Tên Văn phòng rao bán
SELECT BDS.MABDS, BDS.TTMOTA, BDS.GIASAN, BDS.DIACHI, VANPHONG.DIADIEM
FROM VANPHONG, BDS
WHERE (VANPHONG.MAVP = BDS.MA_VP) AND (VANPHONG.DIADIEM="DONG NAI“);
Cách 2:
SELECT BDS.MABDS, BDS.TTMOTA, BDS.GIASAN, BDS.DIACHI, VANPHONG.DIADIEM
FROM (VANPHONG INNER JOIN BDS ON VANPHONG.MAVP = BDS.MA_VP) INNER JOIN abc
Trang 20Sở Tài nguyên và Môi trường
Bài giảng
Cơ sở dữ liệu đất đai
Chương 4: XÂY DỰNG CSDL ĐẤT ĐAI
Trường Đại học Tài nguyên và Môi trường TP.HCM KHÁI NIỆM CSDL ĐẤT ĐAI
Cơ sở dữ liệu đất đai: là tập hợp thông tin có cấu trúc của dữ
liệu địa chính, dữ liệu quy hoạch sử dụng đất, dữ liệu giá đất,
dữ liệu thống kê, kiểm kê đất đai được sắp xếp, tổ chức để truy cập, khai thác, quản lý và cập nhật thường xuyên bằng phương tiện điện tử.(theo TT 04/2013/TT-BTNMT)
Nguyên tắc xây dựng cơ sở dữ liệu đất đai
1 Cơ sở dữ liệu đất đai được
(sau đây gọi tắt là cấp huyện).
Nguyên tắc xây dựng cơ sở dữ liệu đất đai
2 Đơn vị hành chính xã, phường, thị trấn là đơn vị cơ bản để thành lập cơ sở dữ liệu đất đai.
q Cơ sở dữ liệu đất đai của cấp huyện là tập hợp dữ liệu đất đai của các xã thuộc huyện;
q Cơ sở dữ liệu đất đai cấp tỉnh được tập hợp từ cơ sở dữ liệu đất đai của tất cả các huyện thuộc tỉnh.
q Cơ sở dữ liệu đất đai cấp Trung ương được tổng hợp từ cơ sở
dữ liệu đất đai của tất cả các tỉnh trên phạm vi cả nước.
Nguyên tắc xây dựng cơ sở dữ liệu đất đai
3 Việc xây dựng, quản lý, khai thác sử dụng, cập nhật sử dụng
dữ liệu đất đai phải đảm bảo tính chính xác, khoa học, khách
quan, kịp thời và thực hiện theo quy định hiện hành về thành lập
hồ sơ địa chính, cấp Giấy chứng nhận quyền sử dụng đất; Giấy
chứng nhận quyền sở hữu nhà ở và quyền sử dụng đất ở; Giấy
chứng nhận quyền sử dụng đất, quyền sở hữu nhà ở và tài sản
khác gắn liền với đất (sau đây gọi chung là Giấy chứng nhận).
Thành phần cơ sở dữ liệu đất đai
File scan
Hồ sơ
CSDL ĐẤT ĐAI
ArcGISKhông gian Thuộc tính
CSDL ĐỊA CHÍNH QUY HOẠCH, CSDL
KẾ HOẠCH GIÁ ĐẤT CSDL
CSDL THỐNG KÊ, KIỂM KÊ
METADATA
Trang 21Cơ sở Dữ liệu không gian
Cơ sở dữ liệu không gian chứa đựng những thông tin định vị
của các đối tượng, cho biết vị trí, kích thước, hình dạng, sự
phân bố… của các đối tượng Các đối tượng không gian được
định dạng về 3 loại: đối tượng dạng điểm, dạng đường và dạng
vùng Dữ liệu không gian có hai mô hình lưu trữ: mô hình dữ
liệu raster và mô hình dữ liệu vector
Cơ sở Dữ liệu không gian
REAL WORLD
1 2 3 4 5 6 7 8 9 10
1 2345678910
Cơ sở Dữ liệu không gian
Mô hình dữ liệu Vector: thông tin về điểm, đường, vùng được
mã hóa và lưu dưới dạng tập hợp các tọa độ x,y.
Cơ sở Dữ liệu không gian
Mô hình dữ liệu Raster: Trong cấu trúc dữ liệu Raster, đối
tượng được biểu diễn thông qua các ô (cell) hay ô ảnh (pixel) của một lưới các ô.
Thông tin đầu vào: có thể là các dạng dữ liệu thô chưa được trích
lọc (như ảnh vệ tinh, số liệu đo đạc hoặc các loại bản đồ giấy, và các
loại thông tin khác)
Tiến trình xử lý: là quá trình trích lọc, phân loại, chuyển đổi và xử
lý thông tin.
Thông tin đầu ra: kết quả của tiến trình xử lý, có thể được thể hiện
ở dạng biểu đồ, báo cáo, bản đồ chuyên đề, các lớp dữ liệu được tổ
chức lưu trữ trong cơ sở dữ liệu…
Cơ sở Dữ liệu không gian
Phân loại dữ liệu sau mô hình hóa
Cơ sở Dữ liệu không gian
Trang 22Cơ sở Dữ liệu không gian
Cơ sở dữ liệu không gian được tổ chức dưới dạng các Layer.
Các Layer có thể được tạo ra từ nhiều khuôn dạng dữ liệu khác
nhau như: Shape files, Geodatabase, ArcInfo cover datasets,
CAD drawings, photo, image Hiện nay, theo các chuẩn dữ
liệu ISO-TC 211 và chuẩn dữ liệu của Bộ Tài nguyên và Môi
trường, dữ liệu được tổ chức theo khuôn dạng chuẩn
là GeoDatabase
Geodatabase là một cấu trúc dữ liệu đặc biệt và là định dạng dữ liệu do ERSI đề xuất được dùng để có thể quản lý
dữ liệu không gian trong một hệ cơ sở dữ liệu tùy ý.
Geodatabase bao gồm tập hợp dữ liệu không gian được tổ chức lưu trữ trong một hệ quản trị CSDL một người dùng
MS Access, hoặc hệ quản trị CSDL đa người dùng (Oracle, Microsoft SQL Server, PostgreSQL, Informix, or IBM DB2).
Cơ sở Dữ liệu không gian
Thành phần quan trọng của Geodatabase là dataset, nó là
cơ sở để tổ chức và sử dụng thông tin địa lý trong ArcGIS.
Một Geodatabase bao gồm 3 loại dataset chính sau:
Cơ sở Dữ liệu không gian
Single - user GDB
Mô hình CSDL một người dùng (Single-user GDB): bao gồm Personal
Geodatabase và File Geodatabase, đây là mô hình Geodatabase hỗ trợ
cho các ứng dụng GIS một người dùng.
Personal Geodatabase: Mô hình sử dụng hệ quản trị cơ sở dữ liệu
MS Access để lưu trữ dữ liệu không gian và thuộc tính, nó chỉ hỗ trợ
một người dùng và được cài đặt trên máy đơn Dung lượng lưu trữ
của mô hình này giới hạn 2GB, Personal Geodatabase không hỗ trợ
Versioning.
File Geodatabase: tương tự Personal Geodatabase, nhưng dữ liệu
được tổ chức thành thư mục/tập tin Dung lượng một table lưu trữ
Cơ sở Dữ liệu không gian
Trang 23Lợi thế của Multi - user GDB
Có tính bảo mật dữ liệu cao hơn thông qua việc cấp từng
người dùng có từng quyền khác nhau truy cập vào dữ liệu.
Có tính năng sao lưu và phục hồi dữ liệu.
Có tính năng tạo ra các phiên bản (Versioning) cung cấp cơ
chế cho nhiều người dùng truy cập và chỉnh sửa dữ liệu
cùng một lúc.
Lưu trữ mà làm cho nó có thể theo dõi hiệu quả thay đổi
trên bộ dữ liệu theo thời gian
Có tính năng theo dõi thay đổi dữ liệu theo thời gian
Cơ sở Dữ liệu không gian
Cơ sở Dữ liệu không gian
Là một tập hợp các đối tượng không gian dùng chung một hệ
quy chiếu không gian (WGS84, VN2000,…);
Một Feature dataset có thể chứa các đối tượng như: feature
class, Object class, relationship, geometry network;
Feature class, Object class, relationship có thể nằm trong hoặc
nằm ngoài feature dataset.
Cơ sở Dữ liệu không gian
Feature classes
Là một tập hợp các đối tượng không gian có cùng dạng hình học (điểm, đường, vùng hoặc chú giải), có chung một hệ quy chiếu không gian và có cùng kiểu thuộc tính;
Bốn dạng cơ bản của Feature classes trong cơ sở dữ liệu không gian là: điểm (points), đường (lines), vùng (polygons), và chú giải (annotation).
Cơ sở Dữ liệu không gian
Raster dataset
Raster là cấu trúc dữ liệu dạng lưới được tổ chức thành các dòng và
các cột (tạo thành lưới – grid), giao của dòng và cột gọi là pixel, mỗi
pixel chứa một giá trị đặc trưng cho đối tượng (nhiệt độ, độ cao,…);
Các dữ liệu raster thường là các bức ảnh hàng không, ảnh vệ tinh,
ảnh kỹ thuật số, ảnh scan.
Trang 24Dữ liệu không gian đất đai
1 Dữ liệu không gian đất đai
nền:
- N hóm lớp dữ liệu điểm khống
chế đo đạc gồm:
Lớp dữ liệu điểm thiên văn,
điểm tọa độ quốc gia, điểm địa
chính cơ sở, điểm địa chính,
điểm khống chế đo vẽ chôn
mốc cố định;
Lớp dữ liệu điểm độ cao
quốc gia, điểm độ cao kỹ thuật
có chôn mốc;
Quy định hiển thị dữ liệu không gian đất đai (Nhóm lớp dữ liệu điểm khống chế đo đạc )
Dữ liệu không gian đất đai
Dữ liệu không gian đất đai
1 Dữ liệu không gian đất đai nền (tt):
- Nhóm lớp dữ liệu biên giới, địa giới gồm:
Lớp dữ liệu mốc biên giới, địa giới;
Lớp dữ liệu đường biên giới, địa giới;
Lớp dữ liệu địa phận của
Dữ liệu không gian đất đai
Quy định hiển thị dữ liệu không gian đất đai (Nhóm lớp dữ liệu biên giới, địa giới)
Dữ liệu không gian đất đai
1 Dữ liệu không gian đất đai nền (tt):
- Nhóm lớp dữ liệu thủy hệ gồm lớp dữ liệu thủy hệ dạng đường,
lớp dữ liệu thủy hệ dạng vùng;
- Nhóm lớp dữ liệu giao thông gồm lớp dữ liệu tim đường, lớp dữ
liệu mặt đường bộ, lớp dữ liệu ranh giới đường, lớp dữ liệu đường sắt;
- Nhóm lớp dữ liệu địa danh và ghi chú gồm lớp dữ liệu điểm địa
danh, điểm kinh tế, văn hóa, xã hội; lớp dữ liệu ghi chú.
Dữ liệu không gian đất đai
Quy định hiển thị dữ liệu không gian đất đai (Nhóm lớp dữ liệu thủy văn, giao thông)