Tải bản đầy đủ (.pdf) (309 trang)

CƠ sở dữ LIỆU

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.35 MB, 309 trang )

CƠ SỞ DỮ LIỆU
Email:


GIỚI THIỆU MÔN HỌC


Môn học cung cấp cho sinh viên các kiến thức lý thuyết về thiết kế
cơ sở dữ liệu, xét dạng chuẩn và phân rã các ược đồ cơ sở dữ liệu
đạt chuẩn tốt nhất, truy vấn trên cơ sở dữ liệu.
• Gồm 7 chương:












Chương 1: Giới thiệu
Chương 2: Mô hình dữ liệu quan hệ
Chương 3: Ngôn ngữ SQL
Chương 4: Ràng buộc toàn vẹn
Chương 5: Phụ thuộc hàm
Chương 6: Chuẩn hóa cơ sở dữ liệu
Chương 7: Tối ưu hóa câu truy vấn


Số Tín chỉ:
Số tiết:
Đánh giá:

4 (45,0,,0,105)
75
LT: 45 TH: 30

– Điểm thứ 1: 10%
– Điểm thứ 2: 20%
– Điểm thứ 3: 70%

Kiểm tra trên lớp
Kiểm tra thực hành giữa kỳ
Thi viết cuối kỳ

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

2


GIỚI THIỆU MÔN HỌC
• Thông tin giảng viên:
– ThS. Lương Thị Ngọc Khánh
– Email:
– />
Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

3



Tài liệu tham khảo
– Tóm tắt bài giảng môn Cơ sở dữ liệu – Trường ĐH Tôn Đức
Thắng
– Lập trình ứng dụng chuyên nghiệp SQL server 2000 – Pham
Hữu Khang
– Modern Database Management – Jeffrey A.Hoffer 2000
– Nguyên lý các hệ cơ sở dữ liệu và cơ sở tri thức – D. Ullman
– Các hệ cơ sở dữ liệu – lý thuyết và thực hành (tập 1, 2) - Hồ
Thuần, Hồ Cẩm Hà
– Giáo trình nhập môn cơ sở dữ liệu – Nguyễn An Tế

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

4


Chương I

GIỚI THIỆU
Email:


Nội dung chương I
• CSDL là gì? Tại sao cần tới các hệ CSDL?
• Cơ sở dữ liệu






Khái niệm
Ưu điểm
Các đối tượng sử dụng csdl
Hệ quản trị csdl

• Các mô hình dữ liệu

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

6


CSDL là gì? Tại sao cần tới các hệ CSDL?
- Các hệ thống dùng phương pháp xử lý tập tin
• Để lưu trữ thông tin và dữ liệu cho công việc của các cơ
quan tổ chức, có thể lưu trữ dưới dạng các file riêng rẽ
và lúc cần lại lấy ra để thao tác, xử lý.
 Hệ thống dùng phương pháp xử lý tập tin được sử dụng
rộng rãi trong suốt những năm 60s, 80s này có ưu điểm
là thời gian triển khai ngắn, ít đầu tư lớn về vật chất,
nhân sự và công sức phân tích - thiết kế, rất phù hợp
với các bài toán nhỏ.
 Tuy nhiên, đối với các bài toán có nhu cầu xử lý dữ liệu
lớn các vấn đề sau sẽ nảy sinh:

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

7



CSDL là gì? Tại sao cần tới các hệ CSDL?
- Các hệ thống dùng phương pháp xử lý tập tin
– Tính dư thừa dữ liệu:
• đó là sự lặp đi lặp lại của những thông tin được lưu trữ gây ra lãng
phí công sức và dễ dẫn đến tình trạng dị thường.

– Tính dị thường (không nhất quán):
• tại một thời điểm thông tin về cùng một đối tượng lại có thể khác
nhau trên các tập tin khác nhau trong cùng một hệ thống thông tin,
điều này thường là do dư thừa dữ liệu gây ra.

– Các vấn đề toàn vẹn:
• khi có thêm những ràng buộc mới, khó thay đổi các chương trình để
có thể tuân thủ chúng.

– Các vấn đề về tính nguyên tố của các giao tác:
• với tệp xử lý truyền thống khó có thể đảm bảo được tính chất “hoặc
thực hiện hoàn toàn hoặc không thực hiện gì” và khó đưa được hệ
thống trở về trạng thái nhất quán trước khi xảy ra sự cố.

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

8


CSDL là gì? Tại sao cần tới các hệ CSDL?
- Các hệ thống dùng phương pháp xử lý tập tin
– Sự thiếu chia sẻ thông tin giữa các hệ thống và khó
mở rộng hệ thống hay kết nối với các hệ thống khác.

– Các dị thường của truy cập tương tranh:
• để tăng tính hiệu quả và trả lời nhanh hơn, nhiều hệ thống
cho phép nhiều người dùng cập nhật dữ liệu đồng thời và
như vậy có thể dẫn đến dữ liệu không nhất quán.

– Tính không toàn vẹn, an toàn dữ liệu:
• Thể hiện sự không đầy đủ của các thông tin cần lưu trữ cho
các mục đích yêu cầu của hệ thống thông tin. An toàn dữ
liệu như các cơ chế bảo mật, phân cấp đối tượng sử dụng
dữ liệu và cả việc sao lưu dữ liệu dự phòng.

 Để khắc phục và giải quyết được các vấn đề
trên, buộc chúng ta phải thay đổi cách tiếp cận hệ
thống  tiếp cận CSDL.
Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

9


Cơ sở dữ liệu
- Khái niệm
• Cơ sở dữ liệu:
– Có thể được xem là tập hợp có cấu trúc của thông tin, được lưu
trữ trên các thiết bị trữ tin để có thể thỏa mãn yêu cầu khai thác
thông tin đồng thời cho nhiều người sử dụng hay nhiều chương
trình ứng dụng với các mục đích khác nhau.

• Ưu điểm:

– 1. Về bản thân thông tin lưu trữ:

• Giảm thiểu sự trùng lắp thông tin đến mức thấp nhất, do đó giúp
– Bảo đảm tính nhất quán
– Tính toán vẹn của dữ liệu
• Đảm bảo dữ liệu có thể được truy xuất theo nhiều cách khác nhau.
• Khả năng chia sẻ thông tin cho nhiều người sử duungj và nhiều ứng
dụng khác nhau.

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

10


Cơ sở dữ liệu
- Ưu điểm
• Ưu điểm: (tt)
– Về hiệu quả sử dụng thông tin:
• Chia sẻ thông tin cho nhiều người dùng khác nhau
• Tiết kiệm tài nguyên
• Tăng hiệu quả khai thác

– Những vấn đề nảy sinh:
• Cần xác định rõ trách nhiệm đối với
– Sự an toàn của dữ liệu
– Tính chính xác của dữ liệu
» Ai có trách nhiệm cập nhật, chỉnh sửa
» Những thông tin nào được phép sửa
– Cần một cơ chế bảo mật hay phân quyền khai thác thông tin
của người sử dụng
– Giải quyết sự tranh chấp trong truy cập dữ liệu khi có nhiều
người dùng cùng truy cập đến một nguồn dữ liệu.


Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

11


Cơ sở dữ liệu
- Các đối tượng sử dụng csdl
• Người sử dụng không chuyên về lĩnh vực tin học và csdl:
– Csdl cần có các công cụ để những người này có thể sử dụng và
khái thác csdl khi cần.

• Chuyên viên tin học biết khai thác csdl:
– Những người này có thể xây dựng các ứng dụng khác nhau
phục vụ cho nhiều mục đích khác nhau trên csdl.

• Người quản trị csdl:
– Là người hiểu biết về tin học, về các hệ quản trị csdl và hệ thống
máy tính.
– Là người tổ chức csdl (khai báo cấu trúc, ghi nhận yêu cầu bảo
mật)
– Là người cấp quyền hạn khai thác csdl.

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

12


Cơ sở dữ liệu
- Kiến trúc ba mức của một hệ CSDL


• Mô hình dữ liệu:
– Là sự hình thức hóa toán học gồm có hai phần:
• ký hiệu mô tả dữ liệu
• tập hợp các phép toán diễn tả sự ràng buộc trong dữ liệu và
các phép xử lý trên dữ liệu.

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

13


Cơ sở dữ liệu
- Kiến trúc ba mức của một hệ CSDL (tt)
3 mức biểu diễn một CSDL:
• Mức vật lý (mức trong):
– Là các loại tệp dữ liệu, tệp giao dịch, tệp chỉ dẫn… theo cấu trúc
nào đó được lưu trữ trên các thiết bị lưu trữ tin.
• Mức khung nhìn (View - mức ngoài):
– Là cách nhìn, là quan điểm của từng người sử dụng đối với CSDL
mức khái niệm. Mỗi khung nhìn là một phần của CSDL hoặc trừu
tượng hóa một phần của CSDL mức khái niệm.
• Mức khái niệm:
(mô hình ER)
– Là sự trừu tượng hóa thế giới thực khi gắn liền với người sử dụng
CSDL. HQTCSDL cung cấp khả năng định nghĩa dữ liệu ở mức
quan niệm nhằm mô tả sơ đồ quan niệm, thường gọi là mô hình
CSDL. Có thể xem mức vật lý là sự cài đặt cụ thể của mức khái
niệm.
Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT


14
14


Cơ sở dữ liệu
- Kiến trúc ba mức của một hệ CSDL (tt)

User 1

View 1

User 2

View 2

User n

View n

CSDL mức
khái niệm

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

CSD mức
vật lý

15



Cơ sở dữ liệu
- Hệ quản trị CSDL

• Hệ quản trị cơ sở dữ liệu (HQTCSDL, database
management system).
– Phần mềm dùng để tạo lập và xử lý dữ liệu.
– Các HQTCSDL thường gặp như: Oracle, Paradox,
MS Access, Sybase, Foxpro, SQL Server….

• CSDL là một thành phần trong HQTCSDL.

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

16


Cơ sở dữ liệu
- Hệ quản trị CSDL (tt)

• Ví dụ: Một DS các số điện thoại, họ tên, địa chỉ của
những người quen.
– có thể lưu trữ DS này trong một chiếc đĩa sử dụng
máy tính cá nhân và các phần mềm như ACCESS
hoặc, EXCEL…
– Tập hợp các dữ liệu có liên quan với nhau này hàm
chứa trong nó một ngữ nghĩa nào đó vì vậy đó là một
CSDL. Các phần mềm Access, Excel là hệ quản trị
CSDL.


Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

17


Cơ sở dữ liệu
- Hệ quản trị CSDL (tt)


Các chức năng của HQTCSDL
Một HQTCSDL phải có khả năng giải quyết tốt những vấn đề mà
cách tổ chức CSDL đặt ra, hai khả năng cơ bản là:
– Quản lý dữ liệu ở mức xử lý tệp như một hệ điều hành
– Truy cập các khối lượng dữ liệu lớn có hiệu quả
Ngoài ra còn có các chức năng khác như:
– Cung cấp giao diện giữa users và CSDL và giữa CSDL với các
hệ thống khác.
– Cung cấp một số ngôn ngữ bậc cao thường là ngôn ngữ phi thủ
tục giúp users truy xuất và thao tác CSDL.
– Quản lý giao tác, phân quyền và an toàn dữ liệu khi có một hay
nhiều người tham gia sử dụng.
– Điều khiển sự tương hợp, tính toàn vẹn khi chuyển hóa dữ liệu
và khi có sự cố của hệ thống…
– Kiểm tra độ tin cậy của dữ liệu.
Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

18


Các mô hình dữ liệu

• Mô hình dữ liệu
– là một tập hợp các khái niệm và ký pháp dùng để mô
tả dữ liệu, các mối quan hệ của dữ liệu, các ràng
buộc trên dữ liệu của một tổ chức.
– gồm ba thành phần:
• phần mô tả cấu trúc của CSDL;
• phần mô tả các thao tác, định nghĩa các phép toán được
phép trên dữ liệu;
• phần mô tả các ràng buộc toàn vẹn để đảm bảo sự chính
xác của dữ liệu.

– Mỗi loại mô hình đặc trưng cho một phương pháp tiếp
cận dữ liệu của người phân tích - thiết kế dữ liệu.
Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

19


Các mô hình dữ liệu (tt)
Phân chia thành 3 nhóm:
• Mô hình dữ liệu logic trên cơ sở đối tượng:
– mô hình thực thể mối quan hệ
– mô hình hướng đối tượng
– mô hình dữ liệu ngữ nghĩa
– mô hình dữ liệu chức năng
• Mô hình dữ liệu logic trên cơ sở bản ghi:
– mô hình quan hệ
– mô hình mạng
– mô hình phân cấp
• Mô hình dữ liệu vật lý: mô tả dữ liệu ở mức thấp nhất, nghĩa

là mô tả dữ liệu được lưu trữ thế nào trong máy tính.
– Có hai mô hình vật lý quen dùng là: mô hình hợp nhất và
mô hình bộ nhớ khung.
Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

20


Các mô hình dữ liệu (tt)
• Mô hình dữ liệu logic trên cơ sở bản ghi:
– Mô hình mạng (Network model):
• các khái niệm chính: các mẩu tin (record), loại mẩu tin
(record type) và loại liên hệ (set type).
• Mỗi loại mẩu tin đặc trưng cho một đối tượng riêng biệt như:
Khoa, SinhVien,…
• mỗi loại mẩu tin được ký hiệu bằng một hình chữ nhật, mỗi
thể hiện của một loại mẩu tin được gọi là mẩu tin.
• Ví dụ, loại mẩu tin SinhVien có các mẩu tin là các sinh viên
đang theo học tại trường.
• Loại liên hệ là sự liên kết giữa mẩu tin chủ và mẩu tin thành
viên.Mô hình được biểu diễn là một đồ thị có hướng.
Khoa

Gồm

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

SinhVien
21



Các mô hình dữ liệu (tt)
• Mô hình thực thể kết hợp (Entity Relationship Model)
– Các khái niệm chính:
• Thực thể:
– Là một đối tượng hoặc một khái niệm có thể nhận biết một
cách duy nhất (tương tự khái niệm mẫu tin trong mô hình dữ
liệu mạng). Vd: SinhVien, Khoa, MonHoc
– Có 2 loại thực thể:
» Thực thể yếu: là thực thể mà sự tồn tại của nó phụ thuộc
vào một thực thể khác. Vd: Thực thể ThanNhan phụ
thuộc vào NhanVien. Kí hiệu bằng đường viền kẻ đôi.
» Thực thể mạnh: là thực thể có một hay nhiều thực thể
yếu phụ thuộc vào sự tồn tại của nó. Kí hiệu bằng
đường viền kẻ đơn.

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

22


Các mô hình dữ liệu (tt)
• Mô hình thực thể kết hợp (tt)
• Loại thực thể: là một loại đối tượng hoặc khái niệm tồn tại
độc lập.
• Thuộc tính của loại thực thể: là các đặc tính riêng biệt của
loại thực thể.
• Khóa của loại thực thể: là các thuộc tính nhận diện loại thực
thể.
• Loại của mối kết hợp: là sự liên kết giữa một loại thực thể

mạnh và một loại thực thể yếu. Giữa 2 thực thể có nhiều mối
kết hợp.
• Số ngôi của mối kết hợp: tổng số loại thực thể tham gia vào
mối kết hợp. Mối kết hợp cũng có thuộc tính riêng của nó.

Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT

23


Các mô hình dữ liệu (tt)
– Mô hình phân cấp (Hierachical model):
• Mô hình dữ liệu là một cây, trong đó các nút biểu diễn tập các thực
thể, giữa các nút cha và nút con được liên hệ theo một mối quan hệ
xác định.

– Mô hình quan hệ (Relation model):
• Mô hình dựa trên cơ sở khái niệm lý thuyết tập hợp của các quan
hệ, tức là các tập k-bộ với k cố định.

– Mô hình hướng đối tượng (Object Oriented Data Model)
• Sử dụng các khái niệm như: lớp (class), đối tượng, sự kế thừa
(inheritance), kế thừa bội.
• Đặc trưng cơ bản của cách tiếp cận này là: tính đóng gói
(encapsulation), tính đa hình (polymorphism) và tính tái sử dụng
(reusability).
• Hướng tiếp cận này hiện đang nhận được sự quan tâm và phát
triên và có thể nó sẽ là mô hình csdl của tương lai.
Ths. Lương Thị Ngọc Khánh – Khoa CNTT – TUD – ĐH TĐT


24


Chương II

MÔ HÌNH DỮ LIỆU QUAN HỆ
Email:


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×