Mô hình cơ sở dữ liệu
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.
Dựa vào mô hình chúng ta có một cái nhìn tổng
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.
Mô hình cơ sở dữ liệu
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.
73 trang |
Chia sẻ: trungkhoi17 | Lượt xem: 953 | Lượt tải: 1
Bạn đang xem trước 20 trang 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, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
By TRAN DAC PHI HUNG
CƠ SỞ DỮ LIỆU
ThS. TRẦN ĐẮC PHI HÙNG
Thanhcong_ph@yahoo.com
0983.823.709
Bộ môn Công nghệ Địa chính
Khoa Quản lý đất đai và Bất động sản
CƠ SỞ DỮ LIỆU ACCESS
LẬP TRÌNH
CƠ BẢN
CƠ SỞ DỮ LIỆU
NÂNG CAO
VBA for
EXCEL, ACCESS
GIS
LẬP TRÌNH
NÂNG CAO
VBA for
ARCMAP
NOTES
DỮ LIỆU VÀ THÔNG TIN
CƠ
SỞ
DỮ
LIỆU
NOTES
Dữ liệu (Data): sự biểu diễn của các đối tượng và sự kiện
đượ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.
CƠ
SỞ
DỮ
LIỆU
NOTES
COLLECTION DATA
CƠ
SỞ
DỮ
LIỆU
NOTES
SAVE DATA
CƠ
SỞ
DỮ
LIỆU
NOTES
GET INFORMATION
CƠ
SỞ
DỮ
LIỆU
NOTES
COLLECTION DATA
- MÀU SẮC :
- HÌNH DÁNG :
- KÍCH THƯỚC :
- MÙI VỊ :
- TRỌNG LƯỢNG:
CƠ
SỞ
DỮ
LIỆU
NOTES
GET INFORMATION: WHAT
CƠ
SỞ
DỮ
LIỆU
NOTES
BUILDING INFORMATION: WHERE
CƠ
SỞ
DỮ
LIỆU
NOTES
BUILDING INFORMATION
CƠ
SỞ
DỮ
LIỆU
NOTES
CƠ SỞ DỮ LIỆU
CƠ
SỞ
DỮ
LIỆU
NOTES
Một cơ sở dữ liệu là một tập hợp dữ liệu có liên
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.
CƠ
SỞ
DỮ
LIỆU
NOTES
CƠ
SỞ
DỮ
LIỆU
NOTES
CƠ
SỞ
DỮ
LIỆU
NOTES
CƠ
SỞ
DỮ
LIỆU
NOTES
CƠ
SỞ
DỮ
LIỆU
NOTES
TÍNH CHẤT CƠ SỞ DỮ LIỆU
CƠ
SỞ
DỮ
LIỆU
NOTES TÍNH TIỀN LƯƠNG CHO NHÂN VIÊN
CƠ
SỞ
DỮ
LIỆU
NOTES TÍNH CHẤT CƠ SỞ DỮ LIỆU
Một cơ sở dữ liệu biểu thị một khía cạnh nào đó
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.
CƠ
SỞ
DỮ
LIỆU
NOTES TÍNH CHẤT CƠ SỞ DỮ LIỆU
Một cơ sở dữ liệu là một tập hợp dữ liệu liên kết
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.
CƠ
SỞ
DỮ
LIỆU
NOTES TÍNH CHẤT CƠ SỞ DỮ LIỆU
CƠ
SỞ
DỮ
LIỆU
NOTES TÍNH CHẤT CƠ SỞ DỮ LIỆU
Tùy thuộc vào yêu cầu của công việc, cơ sở dữ 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.
CƠ
SỞ
DỮ
LIỆU
HỆ
QUẢN
TRỊ
CSDL
NOTES
HỆ QUẢN TRỊ CSDL
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.
Hiện nay có nhiều hệ quản trị CSDL trên thị trường
như: Visual Foxpro, SQL server, DB2, Microsoft
Access, Oracle
HỆ
QUẢN
TRỊ
CSDL
NOTES
USER DBMS DATABASE
HỆ QUẢN TRỊ CSDL (DBMS – Database Management System )
Ngôn ngữ giao tiếp giữa NSD và CSDL:
Ngôn ngữ mô tả dữ liệu (Data Definition Language
- DDL) để cho phép khai báo cấu trúc của CSDL, khai
báo các mối liên hệ của dữ liệu (Data Relationship) và
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.
HỆ
QUẢN
TRỊ
CSDL
NOTES THÀNH PHẦN HỆ QUẢN TRỊ CSDL
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
sử dụng
HỆ
QUẢN
TRỊ
CSDL
NOTES THÀNH PHẦN HỆ QUẢN TRỊ CSDL
Có biện pháp bảo mật tốt.
Có cơ chế giải quyết tranh chấp dữ liệu.
Có cơ chế sao lưu và phục hồi dữ liệu khi có sự
cố xảy ra.
Có giao diện tốt, dễ sử dụng.
HỆ
QUẢN
TRỊ
CSDL
NOTES THÀNH PHẦN HỆ QUẢN TRỊ CSDL
HỆ
QUẢN
TRỊ
CSDL
NOTES THÀNH PHẦN HỆ QUẢN TRỊ CSDL
Có biện pháp bảo mật tốt.
HỆ
QUẢN
TRỊ
CSDL
NOTES THÀNH PHẦN HỆ QUẢN TRỊ CSDL
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
NOTES THÀNH PHẦN HỆ QUẢN TRỊ CSDL
Có giao diện tốt, dễ sử dụng.
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
trúc lưu trữ các bảng dữ liệu, thêm các chỉ mục,)
thì các chương trình ứng dụng đang chạy trên
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.
HỆ
QUẢN
TRỊ
CSDL
NOTES THÀNH PHẦN HỆ QUẢN TRỊ CSDL
NOTES
MÔ HÌNH CSDL
Lược đồ CSDL
MÔ
HÌNH
CSDL
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ớ.
+ Truy cập nhanh chóng và chính xác.
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.
MÔ
HÌNH
CSDL
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.
Dựa vào mô hình chúng ta có một cái nhìn tổng
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.
MÔ
HÌNH
CSDL
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
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ó
nhiều địa điểm giao dịch. Thông tin của phòng ban bao gồm:
mã phòng ban, tên phòng ban, địa điểm. Mỗi phòng ban có
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?
MÔ
HÌNH
CSDL
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
diễn trong cơ sở dữ liệu chứ không phải cách biểu
diễn dữ liệu.
MÔ
HÌNH
CSDL
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
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.
Các mô hình dữ liệu thể hiện che giấu một số
chi tiết về việc lưu trữ dữ liệu nhưng có thể được
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.
MÔ
HÌNH
CSDL
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
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
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
cấp nói chung có ý nghĩa đối với các chuyên gia
máy tính chứ không có ý nghĩa mấy đối với người
sử dụng thông thường.
MÔ
HÌNH
CSDL
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
Mô hình cơ sở dữ liệu
NOTES
CON NGƯỜI VÀ CSDL
CON
NGƯỜI
& CSDL
NOTES Người quản trị hệ cơ sở dữ liệu
(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
NOTES Người quản trị hệ cơ sở dữ liệu
(Database Administrator – DBA)
CON
NGƯỜI
& CSDL
NOTES Người quản trị hệ cơ sở dữ liệu
(Database Administrator – DBA)
CON
NGƯỜI
& CSDL
NOTES Người quản trị hệ cơ sở dữ liệu
(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
NOTES Những người sử dụng (End User)
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
NOTES Những người sử dụng (End User)
Người sử dụng thụ động
Người sử dụng chủ động
CON
NGƯỜI
& CSDL
NOTES Người thiết kế cơ sở dữ liệu
(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
kế thoả mãn các yêu cầu đó.
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.
CON
NGƯỜI
& CSDL
NOTES Người thiết kế cơ sở dữ liệu
(Database Designer)
CON
NGƯỜI
& CSDL
NOTES Người phân tích hệ thống và lập trình ứng dụng
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
NOTES Người phân tích hệ thống và lập trình ứng dụng
CON
NGƯỜI
& CSDL
NOTES Người thiết kế và cài đặt hệ quản trị dữ liệu
Đó 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.
Hệ quản trị cơ sở dữ liệu phải giao tiếp với các
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.
CON
NGƯỜI
& CSDL
NOTES Người phân tích hệ thống và lập trình ứng dụng
CON
NGƯỜI
& CSDL
NOTES Những người phát triển công cụ
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
NOTES Các thao tác viên và những người bảo trì
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
NOTES
NGÔN NGỮ
HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
NGÔN
NGỮ
HQT
CSDL
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
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
NOTES
Làm thế nào để chú chó làm theo ý của bạn?
NGÔN
NGỮ
HQT
CSDL
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
NOTES Ngôn ngữ định nghĩa dữ liệu (DDL)
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
NOTES Ngôn ngữ định nghĩa dữ liệu (DDL)
Các lệnh liên quan đến bảng biểu:
NGÔN
NGỮ
HQT
CSDL
NOTES Ngôn ngữ định nghĩa dữ liệu (DDL)
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
NOTES Ngôn ngữ định nghĩa dữ liệu (DDL)
Các lệnh liên quan đến khung nhìn:
NGÔN
NGỮ
HQT
CSDL
NOTES Ngôn ngữ thao tác dữ liệu (DML)
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
NOTES Ngôn ngữ thao tác dữ liệu (DML)
Các lệnh liên quan đến các bộ trong bảng :
NGÔN
NGỮ
HQT
CSDL
NOTES Ngôn ngữ thao tác dữ liệu (DML)
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
END
Các file đính kèm theo tài liệu này:
- bai_giang_co_so_du_lieu_tran_dac_phi_hung.pdf