8/25/2017<br />
<br />
Nội dung<br />
<br />
Chương 1.<br />
Tổng quan về Hệ quản trị<br />
Cơ sở dữ liệu<br />
<br />
1. Nhắc lại một số khái niệm<br />
2. Quá trình phát triển của Hệ quản trị Cơ sở dữ liệu (HQT CSDL)<br />
(Database Management System - DBMS)<br />
3. Định nghĩa HQT CSDL<br />
4. Các mức biểu diễn một CSDL<br />
5. Các thành phần chính của HQTCSDL<br />
6. Một số HQT CSDL<br />
7. Tổng quan về HQT CSDL SQL Server<br />
8. Transact – SQL<br />
<br />
GV: Lê Thị Minh Nguyện<br />
Email: nguyenltm@huflit.edu.vn<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
1. Nhắc lại một số khái niệm<br />
<br />
1.1. Dữ liệu<br />
<br />
1.1. Dữ liệu<br />
<br />
• Dữ liệu là những giá trị ban đầu mà chưa có nghĩa nhiều<br />
với người dùng mà máy tính có thể tiếp nhậ và xử lý<br />
<br />
2<br />
<br />
1.2. Thông tin<br />
1.3. Cơ sở dữ liệu<br />
1.4. Siêu dữ liệu (Meta data)<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
3<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
4<br />
<br />
1<br />
<br />
8/25/2017<br />
<br />
1.2. Thông tin<br />
<br />
1.3. Cơ sở dữ liệu<br />
<br />
• Thông tin được xử lý từ dữ liệu ra và hoàn toàn có nghĩa<br />
với người dùng<br />
<br />
• Phần dữ liệu được lưu giữ trong máy tính theo một quy<br />
định hay cấu trúc nào đó gọi là cơ sở dữ liệu<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
5<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
1.4. Siêu dữ liệu (Meta data)<br />
<br />
2. Quá trình phát triển của HQT CSDL<br />
(Database Management System)<br />
<br />
• Siêu dữ liệu tức là thông tin mô tả về dữ liệu<br />
<br />
2.1. Hệ thống tập tin cổ điển (file systems)<br />
<br />
6<br />
<br />
2.2. Cơ sở dữ liệu (Database)<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
7<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
8<br />
<br />
2<br />
<br />
8/25/2017<br />
<br />
2.1. Hệ thống tập tin cổ điển (file systems)<br />
<br />
2.1. Hệ thống tập tin cổ điển (file systems) (tt)<br />
• Ưu điểm:<br />
• Gọn nhẹ, phù hợp thực tiễn. Ít tốn thời gian, chi phí thấp<br />
• Khả năng đáp ứng khai thác nhanh chóng và kịp thời<br />
<br />
• Nhược điểm:<br />
•<br />
•<br />
•<br />
•<br />
•<br />
•<br />
<br />
Sales Files<br />
PropertyForRent(propertyNo, street, city, postcode, type, rooms, rent, ownerNo)<br />
PrivateOwner(ownerNo, fName, lName, address, telNo)<br />
Client(clientNo, fName, lName, address, telNo, preType, maxRent)<br />
Contracts Files<br />
Lease(leaseNo, propertyNo, clientNo, rent, paymentMethod, deposit, paid, rentStart, rentFinish)<br />
PropertyForRent(propertyNo, street, city, postcode, rent)<br />
Client(clientNo, fName, lName, address, telNo)Hệ quản trị Cơ sở dữ liệu<br />
<br />
Thông tin lưu nhiều nơi, dư thừa, không nhất quán<br />
Lãng phí thời gian cập nhật dữ liệu và lưu trữ<br />
Phối hợp tổ chức và khai thác là khó khăn<br />
Thiếu sự chia sẽ thông tin giữa các đơn vị và bộ phận.<br />
Khó khi nâng cấp ứng dụng.<br />
Không có người quản trị dữ liệu, mọi người có quyền sử dụng<br />
thêm, xóa, sửa không an tòan, không bảo mật thông tin<br />
<br />
9<br />
<br />
1.2. Cơ sở dữ liệu (Database)<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
10<br />
<br />
1.2. Cơ sở dữ liệu (Database) (tt)<br />
• Ưu điểm nổi bật của CSDL là:<br />
• Giảm sự trùng lặp thông tin xuống mức thấp nhất và do đó bảo<br />
đảm được tính nhất quán và toàn vẹn dữ liệu.<br />
• Đảm bảo dữ liệu có thể được truy xuất theo nhiều cách khác<br />
nhau.<br />
<br />
PropertyForRent(propertyNo, street, city, postcode, type, rooms, rent, ownerNo)<br />
PrivateOwner(ownerNo, fName, lName, address, telNo)<br />
Client(clientNo, fName, lName, address, telNo, preType, maxRent)<br />
Lease(leaseNo, propertyNo, clientNo, paymentMethod, deposit, paid, rentStart, rentFinish)<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
11<br />
<br />
• Khả năng chia sẻ thông tin cho nhiều người sử dụng và nhiều<br />
ứng dụng khác nhau<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
12<br />
<br />
3<br />
<br />
8/25/2017<br />
<br />
1.2. Cơ sở dữ liệu (Database) (tt)<br />
<br />
1.2. Cơ sở dữ liệu (Database) (tt)<br />
<br />
• Các vấn đề cần giải quyết<br />
<br />
• Là HTTT có cấu trúc, được lưu trữ trên các thiết bị mang tin từ<br />
<br />
• Tính chủ quyền bị vi phạm<br />
• Tính nhất quán CSDL<br />
• Vấn đề bảo mật<br />
• Tính an tòan dữ liệu<br />
• Vấn đề tranh chấp dữ liệu<br />
• Chia sẽ thông tin cho nhiều người sử dụng một cách đồng thời<br />
• Đảm bảo dữ liệu truy xuất đồng thời theo nhiều cách khác<br />
nhau<br />
• Tính độc lập giữa dữ liệu và chương trình / hệ thống ứng dụng<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
tính, phục vụ việc khai thác thông tin của nhiều người sử dụng<br />
một cách đồng thời với nhiều mục đích khác nhau.<br />
<br />
13<br />
<br />
3. Định nghĩa HQT CSDL<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
14<br />
<br />
4. Các mức biểu diễn CSDL<br />
<br />
• Là một hệ thống phần mềm cung cấp các công cụ để xây<br />
<br />
View Level<br />
<br />
dựng và quản lý CSDL<br />
<br />
View 1<br />
<br />
View 2<br />
<br />
…<br />
<br />
View n<br />
<br />
• Định nghĩa cấu trúc dữ liệu (DDL)<br />
<br />
• Cung cấp khả năng thao tác trên CSDL (MDL)<br />
<br />
Logical Level<br />
<br />
• Hỗ trợ lưu trữ dữ liệu<br />
• Điều khiển truy xuất dữ liệu giữa nhiều người dùng<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
Physical Level<br />
<br />
15<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
16<br />
<br />
4<br />
<br />
8/25/2017<br />
<br />
4. Các mức biểu diễn CSDL<br />
<br />
4. Các mức biểu diễn CSDL<br />
<br />
• Mức vật lý<br />
<br />
• Mức quan niệm:<br />
<br />
• Đây là mức lưu trữ CSDL. Tại mức này, vấn đề cần giải quyết<br />
là dữ liệu gì và được lưu trữ như thế nào? ở đâu (đĩa từ, băng<br />
từ, track, sector ... nào)? Cần các chỉ mục gì? Việc truy xuất là<br />
tuần tự (Sequential Access) hay ngẫu nhiên (RandomAccess)<br />
đối với từng loại dữ liệu.<br />
• Những người hiểu và làm việc với CSDL tại mức này là người<br />
quản trị CSDL (Administrator), những người sử dụng (NSD)<br />
chuyên môn.<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
• Tại mức này sẽ giải quyết cho câu hỏi CSDL cần phải lưu<br />
giữ bao nhiêu loại dữ liệu? đó là những dữ liệu gì? Mối quan<br />
hệ giữa các loại dữ liệu này như thế nào?<br />
• Từ thế giới thực (Real Universe) các chuyên viên tin học qua<br />
quá trình khảo sát và phân tích, cùng với những người sẽ<br />
đảm nhận vai trò quản trị CSDL, sẽ xác định được những<br />
loại thông tin gì được cho là cần thiết phải đưa vào CSDL,<br />
đồng thời mô tả rõ mối liên hệ giữa các thông tin này.<br />
<br />
17<br />
<br />
4. Các mức biểu diễn CSDL<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
18<br />
<br />
5. Các thành phần chính của DBMS<br />
<br />
• Mức ngoài.<br />
• Đó là mức của người sử dụng và các chương trình ứng<br />
dụng.<br />
<br />
Ngôn ngữ<br />
giao tiếp<br />
<br />
• Làm việc tại mức này có các nhà chuyên môn, các kỹ sư tin<br />
học và những người sử dụng không chuyên.<br />
<br />
• Mỗi người sử dụng hay mỗi chương trình ứng dụng có thể<br />
được "nhìn" (View) CSDL theo một góc độ khác nhau. Có<br />
thể "nhìn" thấy toàn bộ hay chỉ một phần hoặc chỉ là các<br />
thông tin tổng hợp từ CSDL hiện có.<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
Xử lý<br />
truy vấn<br />
<br />
19<br />
<br />
Quản lý<br />
khôi phục<br />
<br />
Quản lý<br />
giao tác<br />
<br />
Quản lý<br />
lưu trữ<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
20<br />
<br />
5<br />
<br />