Để khai thác CSDL: Cần có dữ liệu! Sau khi khai báo cấu trúc: Các hệ thống cho phép nhập dữ liệu.. Cập nhật dữ liệu: Thêm bản ghi bộ dữ liệu, dòng vào đầu, giữa hoặc cuối bảng, Xó
Trang 3Các phép thao tác với
dữ liệu Xét một cách tổ chức
dữ liệu
Trang 4 Vai trò của mô hình dữ liệu:
tham gia của nhiều người,
lập với Hệ QTCSDL xây dựng mô hình dữ liệu
Tồn tại nhiều loại mô hình dữ liệu,
Mô hình dữ liệu xác định:
Cấu trúc dữ liệu
Mối quan hệ giữa các dữ liệu.
Phổ biến: mô hình quan hệ.
4
Trang 5Chương I : Nêu các yêu cầu chung của các CSDL và Hệ QTCSDL.
Chương III :
Cách mô tả CSDL: cấu trúc và ràng buộc
ngôn ngữ định nghĩa dữ liệu,
Các thao tác cần thực hiện trên dữ liệu đã
mô tả ngôn ngữ thao tác dữ liệu.
cụ thể
Trang 7Với mỗi thành phần trong cấu trúc: tạo,
cập nhật,
Các loại tìm kiếm, tra cứu thông tin.
Trang 8 Ràng buộc với bộ dữ liệu (các dòng),
Quan hệ giữa các chủ thể (các bảng).
Cần có những khái niệm riêng cho mô
hình này.
8
Trang 9 Đặc thù: Phải đảm bảo trong tương lai không
có hai bộ dữ liệu nào có giá trị giống nhau.
Chú ý: Ý nghĩa của đặc trưng “ thứ tự các bộ
Trang 11Khóa của bảng: Tập ít nhất các thuộc tính – tập ít nhất các cột trên đó không có cặp hàng nào có dãy giá trị như nhau.
Khóa chính: thông thường chọn cột tương ứng với khóa có khả năng phân biệt lớn nhất.
Chú ý: Nét đặc biệt – khi thiết kế cần lưu ý
tập giá trị !
Liên kết các bảng:
Thông thường - thông qua các trường khóa,
Tương tự như liên kết các dòng cột trong ô đoán
Trang 12 Chia một bảng lớn thành các bảng nhỏ,
Dùng chung các bảng,
Phân chia công việc: mỗi nhóm tạo một vài bảng riêng,
Tăng cường khả năng bảo mật thông tin.
So sánh với vai trò và chức năng chương trình chính – chương trình con trong các ngôn ngữ lập trình.
Nhận xét: Các công cụ tin học khai thác MTĐT đều dựa trên những nguyên lý chung
và được triển khai tương tự nhau.
12
Trang 13Mục đích:
Rèn luyện kỹ năng chọn khóa, khóa chính,
Làm cho học sinh hiểu rõ hơn về vai trò của
liên kết và cách xác lập liên kết,
Củng cố kỹ năng thực hành (học ở chương II)
Các kiến thức lý thuyết được trình bày lại:
Một cách trực quan,
Có sự tham gia tích cực của học sinh
Một số vấn đề lý thuyết được nhắc đến như những nhận xét: mở rộng khả năng nhận thức nhưng không bắt buộc phải
Trang 14 Thời điểm thực hành: tùy chọn, có thể
sau khi học xong cả chương.
Phân bố lý tưởng:
Tiết thực hành 1: giải quyết các bài 1, 2, tiến hành sau khi học mục §10,
Tiết thực hành 2: sau khi học mục §11
Cần lưu ý học sinh xem lại các kiến thức chương II.
14
Trang 15Bài toán nêu trong sách Giáo khoa là bài toán đủ đơn giản, gần gũi với học sinh và giáo viên dễ hiểu và dễ trình bày,
Có thể chọn bài toán khác dựa trên các files dữ liệu
đã tạo khi học chương II, nhưng các bảng phải đủ nhỏ!
Có thể thay thuộc tính (cột), ví dụ thay “Trường” bằng “Lớp” (12A, 12B, ) và chỉnh lý tương ứng yêu cầu trong bài 3,
Lưu ý:
Có các cách chọn khóa khác nhau
Phân tích tại sao không nên chọn “STT” làm khóa.
Cần chuẩn bị trước files nội dung dữ liệu với 10 – 15
Trang 16 Có thể trình chiếu dữ liệu đã chuẩn bị để giải quyết các bài 1 và 2.
Bài 3: Có thể giải quyết tương tự như trình bày thí nghiệm Lý, Hóa: qua hệ thống trình chiếu, giáo viên thao tác, trình tự và nội dung thao tác – theo phát biểu của học sinh.
Có thể sử dụng bài 3 như bài tập (nếu 2 tiết thực hành tách rời nhau) Tiết thức hành 2 – chữa bài tậpđã yêu cầu Phân tích một vài bài điển hình sai và đúng.
16
Trang 17B¶ng thÝ sinh
SBD hä T£N thÝ
sinh
ngµy sinh
Trang 18Bảng thí sinh SBD họ TÊN thí sinh ngày sinh tr ờng
HA10 Đỗ Hà Anh 02-01-1990 Lê Hồng Phong
HA11 Lê Nh Bình 21-11-1990 Phan Chu Trinh
HA12 Trần Thu Cúc 14-05-1899 Phan Chu Trinh
HA14 Nguyễn Anh Quân 29-11-1990 Lê Hồng Phong
Bảng đánh phách sbd Phách HA10 S28
HA12 S26
HA11 S27 HA14 S25
Bảng phách-điểm phách điểm S25 9
S26 6 S27 8 S28 10
18
Trang 19Ngôn ngữ lập trình vạn năng (C, C++,
PASCAL, JAVA, ) phải có:
Các chỉ thị khai báo biến (biến đơn, mảng, bản ghi, tệp, ),
Trang 21Hệ QT CSDL có các đặc thù:
Không phải là ngôn ngữ lập trình vạn năng,
Định hướng tổ chức và khai thác thông tin trên thiết bị ngoài
Trang 23Khai báo cấu trúc:
Tương tự như khai báo bản ghi trong C+ +, PASCAL,
Các công việc trong khai báo cấu trúc:
Trang 24Cấu trúc
Bảng rỗng
Đã khai báo cấu trúc
Chưa có bản ghi
dữ liệu nào
Trang 25Để khai thác CSDL: Cần có dữ liệu!
Sau khi khai báo cấu trúc: Các hệ thống cho phép nhập dữ liệu Nhập dữ liệu ở giai đoạn này coi là tạo lập hay cập nhật đều được.
Công cụ cho phép thực hiện nhập dữ liệu: thuộc nhóm cập nhật.
Tất cả những gì khai báo được: Được phép thay đổi (Cập nhật).
Trang 26 Các yêu cầu kết xuất thông tin ít thay đổi,
Dữ liệu: thường xuyên biến động, nhầm lẫn, sai sót khi nhập dữ liệu,
Bảng biểu: hay làm mới thay cho cập nhật.
26
Trang 27Lưu ý: Không đi sâu vào việc cập nhật cấu
Đổi tên, thêm, bớt trường,
Thay đổi kiểu dữ liệu,
Thay đổi kích thước trường,
Trang 28 Cập nhật dữ liệu:
Thêm bản ghi (bộ dữ liệu, dòng) vào đầu, giữa
hoặc cuối bảng,
Xóa một bản ghi,
Thay đổi giá trị của một vài trường trong bản ghi.
Việc cập nhật giá trị trường không làm thay đổi kích thước bảng.
Xóa bản ghi: thông thường có 2 mức:
Lô gic,
Vật lý.
Công cụ cập nhật cũng hay được dùng để
xem nội dung dữ liệu.
28
Trang 29Cần liên hệ các công cụ cập nhật của Access (chương II),
Có thể dùng các công cụ khai thác CSDL
để tạo các công cụ hỗ trợ cập nhật (cần thiết khi phải kiểm tra các ràng buộc phức tạp đối với dữ liệu).
Trang 30 Các công cụ khai thác CSDL được chia
theo nhóm công việc ,
Sách giáo khoa xét các nhóm công việc:
Sắp xếp các bản ghi,
Truy vấn CSDL,
Xem dữ liệu,
Kết xuất báo cáo
Trình tự trình bày các nhóm công việc:
không quan trọng,
Mọi hệ QT CSDL đều cung cấp các công
cụ thực hiện những nhóm công việc trên.
30
Trang 31Xem dữ liệu: Dạng đặc biệt của truy vấn,
Được sử dụng nhiều nhất: “Trăm nghe không
bằng mắt thấy”,
Cung cấp rất nhiều dạng xem dữ liệu khác nhau: loại thông tin hiển thị, dạng hiển thị, chế độ một bản ghi/màn hình, nhiều bản ghi/màn hình,
Sử dụng nhiều công cụ hỗ trợ khác, đặc biệt: Lọc
Trang 32 Các công cụ xem và cập nhật: đi đôi với nhau.
vào đều phải có công cụ cho phép xem lại:
Xem cấu trúc dữ liệu,
Xem nội dung bản ghi,
Xem quan hệ liên kết,
Xem cấu trúc bảng biểu,
Xem nội dung bảng biểu, báo cáo,
WYSIWYG
32
Trang 33Mục tiêu của CSDL: để truy vấn – dẫn xuất các
thông tin cần thiết cho công việc của mình,
dung đúng như đã nhập (nhưng dạng đưa ra có thể khác),
liệu đã có (Khai khoáng dữ liệu – Data mining)
mạnh: CSDL cho phép rút ra các thông tổng hợp
Trang 34 Nêu nhiều ví dụ trên một CSDL cụ thể,
dựa vào các bài thực hành và CSDL đã
tạo ra ở đó.
Chọn các ví dụ quen thuộc: Quản lý hồ
sơ, Quản lý điểm số, Quản lý thư viện, .
34
Trang 35Sắp xếp – công việc thường cần thực hiện khi chuẩn bị truy vấn ,
Có hai loại sắp xếp: vật lý và lô gic,
Không cần đi sâu vào cơ chế thực hiện
hai loại sắp xếp này,
Chỉ cần lưu ý HS hiểu:
Sắp xếp vật lý: thay đổi trình tự bố trí các bản ghi trong tệp,
Sắp xếp lô gic: lµ tæ chøc hoÆc cung cÊp ph ¬ng tiÖn
Trang 36 Cần thiết khi phải đưa thông tin dưới dạng phù hợp với các quy định về văn bản, giấy tờ,
những người dùng không chuyên nghiệp,
lưu ý đảm bảo quy cách ra:
ta hay làm lại cấu trúc mới khi cần thay đổi
36
Trang 37lượng
3 Giới thiệu nội dung và vị trí chương III
Nêu sơ đồ P2
5
Đặt câu hỏi ôn tập kiến thức các mục 3 – 5 trên P2:
1 Chuẩn bị xây dựng CSDL, vấn đề gì được thảo luận trong nhóm?
2 Ở chương II, sau khi kích hoạt ACCESS, việc đầu tiên cần làm khi xây dựng một CSDL là gi?
3 Việc tiếp theo phải làm sau khi khai báo cấu trúc
Giới thiệu sự cần thiết của mô hình CSDL (P3, P4)
Trang 38Thời
lượng
2 Nêu vai trò vị trí các chương I, II và III (P5)
15
Giới thiệu các khái niệm cơ bản của mô hình quan hệ Liên hệ hai loại khái niệm (Cụ thể/Mô hình Bảng/Chủ thể),
Giới thiệu cấu trúc, Giới thiệu một số bảng, yêu cầu HS chỉ ra các chủ thể, thuộc tính, tên thuộc tính, bộ giá trị, trường)
Trả lời các câu hỏi với từng bảng cụ thể
Trang 40 MỤC TIÊU:
Kiến thức :
Biết các kiến trúc hệ CSDL: tập trung
và phân tán ,
Ưu nhược điểm của mỗi loại kiến trúc,
Tầm quan trọng của bảo mật và một
số giải pháp bảo mật.
40
Trang 41 Nêu tư tưởng thiết kế có tính khả thi,
Phân lớp người dùng và xác định quyền của
mỗi lớp Đơn giản nhất: Người quản trị và
Trang 42 Thái độ :
Có ý thức trách nhiệm bảo vệ thông tin dùng
chung,
Biết tự bảo vệ thông tin của mình.
Bảo vệ quá mức gây rắc rối phức tạp không cần thiết, giảm hiệu quả của hệ thống,
Không quan tâm đến bảo vệ.
khóa, loại khóa gì, ai giữ chìa
42
Trang 43Các hệ CSDL
Hệ CSDL tập trung Hệ CSDL phân tán
Trang 46N g ư ờ i
d ù n g
Người dùng
N g ư ờ i
d ù n g
Người dùng
Trang 47Người dùng
MẠNG
Trang 48 Nâng cao khả năng thực hiện: các CPU ở máy chủ và máy khách khác nhau có thể cùng hoạt động song song , mỗi CPU thực hiện nhiệm vụ của riêng nó;
Chi phí cho phần cứng có thể đ ợc giảm do chỉ cần máy chủ có cấu hình đủ mạnh để l u trữ và quản trị cơ sở dữ liệu;
Bổ sung thêm máy khách là dễ dàng.
Trang 49Cơ sở dữ liệu phân
tán
Trang 50 CSDL ph©n t¸n lµ mét tËp hîp d÷ liÖu cã liªn quan
(vÒ l«gic) ® îc dïng chung vµ ph©n t¸n vÒ mÆt vËt lÝ
trªn mét m¹ng m¸y tÝnh
Mét hÖ QTCSDL ph©n t¸n lµ mét hÖ thèng phÇn mÒm cho phÐp qu¶n trÞ CSDL ph©n t¸n vµ lµm cho
ng êi dïng kh«ng nhËn thÊy sù ph©n t¸n
50
Trang 52Lưu ý khi trình bày:
Có thể có những nút không chứa dữ liệu, chỉ thực hiện truy vấn,
Ở những nút có chứa dữ liệu: có thể khai thác như một hệ CSDL độc lập,
Có những dữ liệu được lưu trữ ở nhiều nút (bản sao),
Việc lưu dữ liệu gì ở đâu tác động lên
năng suất hệ thống.
52
Trang 53 Một dữ liệu có thể được lưu trữ ở nhiều
nơi,
Một yêu cầu truy vấn: có thể sử dụng dữ
Trang 54 Chương trỡnh ứng dụng: 2 loại:
Ch ơng trình không yêu cầu dữ liệu từ nơi khác;
Ch ơng trình có yêu cầu dữ liệu từ nơi khác.
Ưu nhược điểm:
Cấu trúc phân tán dữ liệu thích hợp cho bản chất phân tán của nhiều ng ời dùng;
Dữ liệu đ ợc chia sẻ trên mạng nh ng vẫn cho phép quản trị dữ liệu địa ph ơng (dữ liệu đặt tại mỗi trạm);
Dữ liệu có tính tin cậy cao vì khi một trạm gặp sự cố, có thể khôi phục đ ợc dữ liệu tại đây do bản sao của nó có thể
đ ợc l u trữ tại một trạm khác nữa;
Cho phép mở rộng các tổ chức một cách linh hoạt Có thể thêm nút mới vào mạng máy tính mà không ảnh h ởng đến hoạt động của các nút sẵn có
54
Trang 55Nhược điểm:
Phức tạp vì phải làm ẩn sự phân tán,
Chi phí thiết kế cao,
Đảm bảo an ninh khó khăn,
Đảm bảo tính nhất quán khó
Tồn tại các bản sao
Trang 56 Không yêu cầu HS thuộc lòng các ưu
nhược điểm các loại hệ CSDL,
Nên gợi cho HS so sánh theo một số tiêu chí, ví dụ:
Trang 57Có thể bổ sung thêm nhiều dòng với các tiêu chí khác,
So sánh giữa các loại hệ thống để đi đến kết luận so sánh (khó hơn/dễ hơn, đắt
hơn/rẻ hơn, )
Không nhất thiết điền hết các ô giá trị,
Để cho HS chủ động lập luận bảo vệ ý
kiến của mình, chỉ chỉnh sửa khi có ý kiến sai cơ bản.
Trang 58 Ôn tập : Lấy một số hệ thống cụ thể , cho
HS thảo luận , nhận dạng đó là loại hệ
thống nào
Ví dụ, hệ thống tra cứu điểm thi đại học
là loại hệ gì? Những đặc điểm nào của hệ thống thể hiện điều đó?
58
Trang 60Nhiệm vụ bảo mật:
Ngăn chặn các truy nhập không được
phép,
Hạn chế tối đa sai sót của người dùng,
Đảm bảo thông tin không bị mất hoặc
t hay đổi ngoài ý muốn ,
Không tiết lộ nội dung dữ liệu và chương trình.
60
Trang 62 Thực hiện đúng quy trình (định kỳ thay
đổi mật khẩu, cơ chế bảo vệ, )
62
Trang 63Mỗi người dùng chỉ có quyền:
Tiếp cận với một phần thông tin của CSDL (liên hệ với CSDL tra cứu điểm thi ĐH, với CSDL quản lý
học tập ở trường, Hệ thống quản lý thư viện, ),
Thực hiện một số phép xử lý với một bộ phận dữ liệu
Hệ QT CSDL cần có:
Cấu trúc dữ liệu xác định loại thông tin và người được quyền tiếp cận (bảng phân quyền),
Cơ chế nhận dạng người truy nhập,
Cung cấp hoặc ngăn chặn thông tin/dịch vụ.
Trang 65Có rất nhiều phương pháp mã hóa và lý
thuyết mã hóa vẫn được tiếp tục hoàn thiện phát triển,
Ứng dụng các giải thuật nén thông tin cũng góp phần tăng khă năng bảo mật thông tin.
Không cần đi sâu vào các phương pháp mã hóa hay nén thông tin, tuy vậy để tạo hứng thú cho HS có thể giới thiệu và cho làm bài tập về các pháp mã hóa đơn giản (Mã
Cesar, Bảng mã hóa, ).
Trang 66 Biên bản hệ thống lưu các thông tin liên quan tới những thao tác làm thay đổi giá trị dữ liệu các, các truy vấn (người yêu
cầu, thời điểm, loại thao tác, ),
Có nhiều loại biên bản,
Ví dụ: biên bản các phép truy cập
Internet, Biên bản làm việc với Excel,
Access, biên bản Boot hệ thống,
66
Trang 67Biên bản hệ thống có nhiều tác dụng khác
nhau,
Trong phần này chỉ xét vai trò của biên bản trong công tác bảo vệ,
thường, ví dụ: cố gắng truy nhập vào các thông tin nhạy cảm của CSDL,
nhiệm hình sự với những người vi phạm (nêu
các ví dụ truy bắt hacker đã nêu trên Internet)
Trang 68Cỏc điểm chớnh cần để lại trong mỗi HS :
Cần tự giác thi hành các điều khoản quy định của
pháp luật;
Nhất thiết phải có các cơ chế bảo vệ , phân quyền
truy cập thì mới có thể đ a CSDL vào khai thác thực tế;
Không tồn tại cơ chế an toàn tuyệt đối trong công tác bảo vệ cần thường xuyờn thay đổi tham số bảo
vệ ;
Bảo vệ cả dữ liệu lẫn ch ơng trình xử lí.
68
Trang 69 Bài định hướng nội dung học cách phân tích thiết kế một hệ CSDL thực tế,
chỉ đơn giản là khai báo các bản, nhập dữ liệu
và dịch vụ một số truy vấn,
các công cụ hỗ trợ xây dựng hệ QT CSDL (ví
dụ như Microsoft Access) công việc phải làm
là rất nhiều, kể các những hệ thống đơn giản.
Trang 70 Dù các bảng chính giống nhau, các hệ CSDL vẫn có thể khác nhau ở các v/đ:
Các bảng dữ liệu bổ trợ,
Phương bảo vệ và phân phối thông tin với từng lớp người dùng
Qua bài tập/thực hành này HS thấy được:
Vấn đề phân quyền và bảo mật là thực sự cần
thiết,
Thiết kế không đơn giản,
Tổ chức thực hiện – còn phức tạp hơn!
70
Trang 71BÀI TẬP VÀ THỰC HÀNH 11
Bài 1:
mỗi đối tượng,
2
Bài 2:
nhiệm vụ và quyền hạn (xác định ở bài 1) của
mỗi đối tượng,
Trang 72Bài 3:
HS không cần lập trình thực hiện trực
tiếp bài này,
GV nên chuẩn bị phần mềm trình diễn,
Ý kiến của HS sẽ thống nhất với nhau, cần lưu ý cho HS thấy rõ: người dùng không tiếp cận CSDL trực tiếp bằng ngôn ngữ của hệ QT CSDL!
72
Trang 73Trong CSDL xử lý các vi phạm luật giao thông hai bảng VIPHAM
và XULY liên kết với nhau thông qua trường bien_so Có thể khẳng định “Trường bien_so là khóa của hai bảng trên” được
không và tại sao?
Trả lời: Không Trường dùng để liên kết chỉ cần có mặt trong hai bảng và không nhất thiết phải là khóa
Khi khai báo một trường cần phải chỉ ra những thông tin gì?
Trả lời: Tên trường, Kiểu dữ liệu, kích thước
bộ khóa của bảng ở điểm nào?
Trả lời:Trường khóa chính bắt buộc phải có giá trị Các trường còn lại – có thể để trống
Trang 74 Một bảng chứa các thông tin độc lập không liên kết với các bảng khác có nhất thiết phải có khóa hay không?
Trả lời: Phải chỉ định trường khóa Mỗi bảng phải có ít nhất một khóa
Những yếu tố nào thường được trao đổi trong quá trình nghiên
Trang 75Hãy nêu sự khác biệt giữa tạo lập bảng và Nhập/cập nhật dữ liệu.
Trả lời: Tạo lập bảng là khai báo cấu trúc dữ liệu Nhập/cập nhật
dữ liệu là ghi thông tin vào các trường của bản ghi hoặc sửa lại giá trị trị thông tin trong trường
Hãy nêu một số thao tác thường thực hiện trước khi truy vấn
Trả lời: Các thao tác lọc dữ liệu (lọc trường, lọc bản ghi), định vị bản ghi Không sai nếu HS nêu thêm sắp xếp, thiết lập liên kết
Tại sao cần có các công cụ kết xuất báo cáo?
Trả lời: Để kết xuất thông tin theo các khuôn mẫu định sẵn theo yêu cầu của người dùng