Dữ liệu này được duy trì dưới dạng một tập hợp các tập tin trong hệ điều hành hay được lưu trữ trong các hệ quản trị cơ sở dữ liệu.. Tiêu biểu cho cơ sở dữ liệu dạng file là*.mdb Foxpro
Trang 1Mục lục trang
I/
MỤC TIÊU .3
II/ DỮ LIỆU VÀ THÔNG TIN .3
1/ Dữ liệu và thông tin khác nhau như thế nào? 3
2/ Cơ sở dữ liệu là gì? 3
a/ Khái niệm: 3
b/ Những vấn đề mà CSDL cần phải giải quyết 4
c/ Phân loại cơ sở dữ liệu: 4
3/ Khái quát về phần mềm cơ sở dữ liệu: 5
a/ Những điều mà một hệ quản trị CSDL phải có 5
b/ Các mức biểu diễn một CSDL 5
c/ Sơ đồ tổng quát một hệ quản trị CSDL 6
4/ Tính toàn vẹn của dữ liệu là gì? 7
5/ Những tiêu chí đánh giá một thông tin có giá trị là gì? 7
III/ HỆ THỐNG PHÂN CẤP DỮ LIỆU : .8
1/ Một hệ thống phân cấp là gì ? 8
a/ Trường là gì ? 8
b/ Bản ghi là gì ? 8
c/ Tệp tin dữ liệu là gì? 9
IV/ DUY TRÌ DỮ LIỆU : .9
1/ Duy trì tập tin là gì ? 9
a/ Tại sao phải thêm bản ghi? 9
b/ Tại sao phải sửa đổi trên bản ghi? 9
c/ Tại sao phải xóa bản ghi ? 9
2/ Xác thực là gì? 9
a/ Kiểm tra chữ số 9
b/ Kiểm tra dạng chữ/ dạng số 9
c/ Kiểm tra phạm vi 9
d/ Kiểm tra tính đầy đủ 9
e/ Kiểm tra tính nhất quán 9
V/ XỬ LÝ TẬP TIN SO VỚI CƠ SỞ DỮ LIỆU : .10
1/Hệ thống xử lý tập tin là gì? 10
Trang 22/ Tiếp cận cơ sở dữ liệu là gì ? 10
3/ Những điểm mạnh của phương pháp tiếp cận cơ sở dữ liệu là gì? 10
VI/ HỆ THỐNG QUẢN LÝ CƠ SỞ DỮ LIỆU : .10
1/ Từ điển cơ sở dữ liệu là gì? 10
2/ Mẫu hỏi là gì? 10
3/ Mẫu hỏi có sẵn (QBE) là gì? 10
4/ Biểu mẫu là gì ? 11
5/ Bộ tạo báo cáo là gì? 11
6/ Bảo mật hệ thống là gì? 11
7/ Sao lưu và Sổ ghi là gì ? 11
8/ Tiện ích phục hồi làgì? 11
VII/ CƠ SỞ DỮ LIỆU QUAN HỆ, HƯỚNG ĐỐI TƯỢNG, HƯỚNG QUAN HỆ VÀ ĐA CHIỀU : .11
1/Mô hình dữ liệu là gì? 11
2/ Mô hình dữ liệu quan hệ là gì? 12
a/ Quan hệ là gì? 12
b/ Ngôn ngữ truy vấn mang tính cấu trức (SQL)là gì? 12
3/ Cơ sở dữ liệu hướng đối tượng (OODB)là gì? 12
4/ Cơ sở dữ liệu đa chiều làgì? 13
VIII/ CƠ SỞ DỮ LIỆU WEB 13
IX/ NGƯỜI PHÂN PHỐI CƠ SỞ DỮ LIỆU 13
1/Hướng dẫn cho việc phát triển một cơ sở dữ liệu: 13
2/ Vaitròngười đặt ra thuật toán và người phân phối của cơ sở dữ liệu là gì 14 X/ TỔNG KẾT CHƯƠNG 14
Trang 3DISCOVERING COMPUTER
CHƯƠNG X: QUẢN LÝ CƠ SỞ DỮ LIỆU
I/ MỤC TIÊU :
Xác định được các thuật ngữ, cơ sở dữ liệu
Phân biệt được giữa phương pháp tiếp cận hệ thống thực thi tập tin và
phương pháp tiếp cận cơ sở dữ liệu
Xác định được tiêu chí đánh giá của các thông tin có giá trị
Thảo luận về các chức năng chung của hầu hết các DBMSs
Giải thích được tại sao dữ liệu lại quan trọng đối với một tổ chức
Mô tả được đặc điểm của cơ sở dữ liệu quan hệ, cơ sở dữ liệu hướng đối
tượng và cơ sở dữ liệu đa chiều
Thảo luận về các ký tự thuật ngữ, trường, bản ghi và tập tin
Giả ithích cách để tương tác với cơ sở dữ liệu Web
Xác định các kỹ thuật để bảo trì tập tin
Thảo luận về trách nhiệm của người viết thuật toán cho cơ sở dữ liệu và
người phân phối
II/ DỮ LIỆU VÀ THÔNG TIN :
1/ Dữ liệu và thông tin khác nhau như thế nào?
Dữ liệu là những gì chúng ta thu thập được, đa phần là dữ liệu thô, chưa qua
xử lý, tồn tại nhưng không có 1 ý nghĩa rõ ràng, bao gồm 2 loại dữ liệu hữu dụng và dữ liệu không hữu dụng
Thông tin là những dữ liệu được xử lý, hữu dụng và thoả mãn mục đích cụ
thể
Trong máy tính cũng tương tự như vậy, các máy tính chuyển đổi dữ liệu thành thông tin cơ sở dữ liệu tạo thành thông tin dựa vào dựa vào dữ liệu phù hợp
mà nó chứa
2/ Cơ sở dữ liệu là gì?
a/ Khái niệm:
Cơ sở dữ liệu (viết tắt CSDL; tiếng Anh là database) được hiểu theo cách
định nghĩa kiểu kĩ thuật thì nó là một tập hợp thông tin có cấu trúc Tuy
nhiên, thuật ngữ này thường dùng trong công nghệ thông tin và nó thường được hiểu rõ hơn dưới dạng một tập hợp liên kết các dữ liệu, thường đủ lớn
để lưu trên một thiết bị lưu trữ như đĩa hay băng Dữ liệu này được duy trì dưới dạng một tập hợp các tập tin trong hệ điều hành hay được lưu trữ
trong các hệ quản trị cơ sở dữ liệu
Sau đây là một số ưu diểm mà CSDL mang lại:
Trang 4- Giảm sự trùng lặp thông tin xuống mức thấp nhất Do đó đảm bảo thông tin có tính nhất quán và toàn vẹn dữ liệu
- Đảm bảo dữ liệu có thể được truy xuất theo nhiều cách khác nhau
- Nhiều người có thể sử dụng một cơ sở dữ liệu
b/ Những vấn đề mà CSDL cần phải giải quyết
- Tính chủ quyền của dữ liệu
Thể hiện ở phương diện an toàn dữ liệu
Khả năng biểu diễn mỗi liên hệ ngữ nghĩa của dữ liệu và tính chính xác của dữ liệu
Người khai thác cơ sở dữ liệu phải cập nhật cho CSDL những thông tin mới nhất
- Tính bảo mật và quyền khai thác thông tin của người sử dung
Do ưu điểm CSDL có thể cho nhiều người khai thác đồng thời nên cần phải có một cơ chế bảo mật phân quyền khai thác CSDL
Các hệ điều hành nhiều người sử dụng hay cục bộ đều cung cấp cơ chế này
- Tranh chấp dữ liệu
Khi nhiều người cùng truy nhập CSDL với các mục đích khác nhau Rất
có t hể sẽ xảy ra hiện tượng tranh chấp dữ liệu
Cần có cơ chết ưu tiên khi truy cập CSDL Ví dụ: admin luôn có thể tru cập cơ sở dữ liệu
Cấp quyền ưu tiên cho từng người khai thác
- Đảm bảo an toàn dữ liệu khi có sự cố
Khi CSDL nhiều và được quản lý tập trung Khả năng rủi ro mất dữ liệu rất cao Các nguyên nhân chính là mất điện đột ngột hoặc hỏng thiết bị lưu trữ
Hiện tại có một số hệ điều hành đã có cơ chế tự động sao lưu ổ cúng và fix lỗi khi có sự cố xảy ra
Tuy nhiên: cẩn tắc vô áy náy Chúng ta nên sao lưu dự phòng cho dữ liệu
đề phòng trường hợp xấu xảy ra
c/ Phân loại cơ sở dữ liệu:
Cơ sở dữ liệu được phân chia ra nhiều loại khác nhau:
Cơ sở dữ liệu dạng file: dữ liệu được lưu trữ dưới dạng các file có thể là text, ascii, *.dbf Tiêu biểu cho cơ sở dữ liệu dạng file là*.mdb Foxpro
Cơ sở dữ liệu quan hệ: dữ liệu được lưu trữ trong các bảng dữ liệu gọi là các thực thể, giữa các thực thể này có mối liên hệ với nhau gọi là các quan
hệ, mỗi quan hệ có các thuộc tính, trong đó có một thuộc tính là khóa chính Các hệ quản trị hỗ trợ cơ sở dữ liệu quan hệ như: MS SQLserver , Oracle ,
MySQL
Cơ sở dữ liệu hướng đối tượng: dữ liệu cũng được lưu trữ trong các bản
dữ liệu nhưng các bảng có bổ sung thêm các tính năng hướng đối tượng như lưu trữ thêm các hành vi, nhằm thể hiện hành vi của đối tượng Mỗi bảng
xem như một lớp dữ liệu, một dòng dữ liệu trong bảng là một đối tượng Các
Trang 5hệ quản trị có hỗ trợ cơ sở dữ liệu hướng đối tượng như: MS SQL server,
Oracle, Postgres
Cơ sở dữ liệu bán cấu trúc: dữ liệu được lưu dưới dạng XML, với định dạng này thông tin mô tả về đối tượng thể hiện trong các tag Đây là cơ sở
dữ liệu có nhiều ưu điểm do lưu trữ được hầu hết các loại dữ liệu khác nhau nên cơ sở dữ liệu bán cấu trúc là hướng mới trong nghiên cứu và ứng dụng 3/ Khái quát về phần mềm cơ sở dữ liệu:
Phần mềm cơ sở dữ liệu hay còn được gọi là hệ thống quản lí cơ sở dữ liệu
(DBMS)
Hệ quản trị cơ sở dữ liệu (tiếng Anh: Database Management
System - DBMS), là phần mềm hay hệ thống được thiết kế để quản trị một cơ
sở dữ liệu Cụ thể, các chương trình thuộc loại này hỗ trợ khả năng lưu trữ,
sửa chữa, xóa và tìm kiếm thông tin trong một cơ sở dữ liệu (CSDL) Có rất nhiều loại hệ quản trị CSDL khác nhau: từ phần mềm nhỏ chạy trên máy
tính cá nhân cho đến những hệ quản trị phức tạp chạy trên một hoặc nhiều siêu máy tính 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…
a/ Những điều mà một hệ quản trị CSDL phải có::
• 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
Ngôn ngữ truy vấn dữ liệu (Structured Query Language - SQL) cho phép NSD truy vấn các thông tin cần thiết
Ngôn ngữ quản lý dữ liệu (Data Control Language - DCL) cho phép những người quản trị hệ thống thay đổi cấu trúc của các bảng dữ liệu, khai báo
bảo mật thông tin và cấp quyền khai thác CSDL cho NSD
• 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…
• 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
• 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
b/ Các mức biểu diễn một CSDL
Trang 6Để hệ thống có thể dùng được thì phải tìm dữ liệu một cách hiệu quả Điều này dẫn đến việc cần phải thiết kế những cấu trúc dữ liệu phức tạp đối với việc biểu diễn dữ liệu trong cơ sở dữ liệu Vì nhiều người sử dụng các hệ thống cơ sở dữ liệu không phải là người hiểu biết nhiều về máy tính nên những người phát triển hệ thống phải che dấu đi sự phức tạp khỏi người sử dụng thông qua một số mức trừu tượng, nhằm làm đơn giản hóa sự tương tác của người sử dụng đối với hệ thống
Có 3 mức biểu diễn dữ liệu, cụ thể như sau:
Mức trong (mức vật lý - Physical level)
• Nói đến cách thức dữ liệu được lưu trữ thực sự Trả lời câu hỏi dữ liệu gì
và lưu trữ chúng như thế nào? Cần các chỉ mục gì?
• Ví dụ như chỉ mục, B-cây, băm
• Những người thao tác tại mức này là người quản trị CSDL và những NSD chuyên môn
Mức quan niệm hay mức logic (conception level, logical level)
• Trả lời câu hỏi cần phải lưu trữ bao nhiêu loại dữ liệu? Đó là những dữ liệu gì?
Mối quan hệ giữa chúng như thế nào?
• Như vậy CSDL mức vật lý là sự cài đặt cụ thể của CSDL mức quan niệm Mức ngoài hay mức nhìn (view level)
• Là mức của NSD và các chương trình ứng dụng
• Làm việc tại mức này là các nhà chuyên môn, kỹ sư tin học, NSD không chuyên
• Mỗi NSD hay mỗi chương trình ứng dụng có thể được nhìn CSDL theo một góc độ khác nhau Tuỳ thuộc vào vai trò của NSD mà có thể thấy tất
cả hoặc một phần của CSDL NSD hay chương trình ứng dụng có thể
không được biết về cấu trúc tổ chức lưu trữ thông tin trong CSDL Họ chỉ
có thể làm việc trên một phần CSDL theo cách nhìn do người quản trị hay chương trình ứng dụng quy định, gọi là khung nhìn
c/ Sơ đồ tổng quát một hệ quản trị CSDL
Hình 1.1 Sơ đồ tổng quát của một hệ quản trị CSDL
Trang 7Hình 1.1 minh họa sơ đồ tổng quát của một hệ quản trị CSDL Có 3 mức: mức chương trình khai báo cấu trúc và chương trình ứng dụng; mức mô tả CSDL, thao tác CSDL và các tự điển dữ liệu; mức CSDL
Mỗi hệ quản trị CSDL có một ngôn ngữ khai báo hay mô tả (Data
Definition Language - DDL) cấu trúc CSDL riêng Những người thiết kế
và quản trị CSDL thực hiện các công việc khai báo cấu trúc CSDL
Các chương trình khai báo cấu trúc CSDL được viết bằng ngôn ngữ mà hệ quản trị CSDL cho phép Hai công việc khai báo cấu trúc logic (là việc
khai báo các loại dữ liệu và các mối liên hệ giữa các loại dữ liệu đó, cùng các ràng buộc toàn vẹn dữ liệu) và khai báo vật lý (dữ liệu được lưu trữ
theo dạng nào, có bao nhiêu chỉ mục)
Các chương trình ứng dụng được viết bằng ngôn ngữ thao tác CSDL (Data Manipulation Langage - DML) với mục đích:
• Truy xuất dữ liệu
• Cập nhật dữ liệu (thêm, xóa, sửa)
• Khai thác dữ liệu
• Ngôn ngữ thao tác CSDL còn được sử dụng cho những người sử dụng
thao tác trực tiếp với CSDL (Tạo các biểu mẫu và báo cáo)
4/ Tính toàn vẹn của dữ liệu là gì?
Tính toàn vẹn dữ liệu (Tiếng Anh là Data Integrity) là dữ liệu hay thông tin
không bị thay đổi, mất mát trong khi lưu trữ hay truyền tải.[1] Nói cách khác tính toàn vẹn là tính không bị hiệu chỉnh của dữ liệu
Tính toàn vẹn của dữ liệu là mức độ thể hiện tính đúng đắn của dữ liệu
Garbage in, garbage out (GIGO) ( Thuật ngữ tin học: tạm dịch là đầu vào là rác thì đầu ra cũng là rác ) — một cụm từ trong ngành máy tính, nó có nghĩa là bạn không thể tạo một thông tin chính xác từ một dữ liệu không chính xác
5/ Những tiêu chí đánh giá một thông tin có giá trị là gì?
Chính xác
Dễ xác minh
Trang 8 Kịp thời
Có tổ chức
Truy cập được
Có ích
Giá cả hợp lý
III/ HỆ THỐNG PHÂN CẤP DỮ LIỆU :
1/ Một hệ thống phân cấp là gì ?
Cơ sở dữ liệu được tổ chức theo mô hình phân cấp bao gồm các tập tin, tập tin bao gồm các bản ghi, bản ghi bao gồm các trường và trường bao gồm các ký tự
a/ Trường là gì ?
Trường Bao gồm một hay nhiều ký tự, là đơn vị nhỏ nhất của dữ liệu mà người dùng truy cập
Một trường cần phải xác định 3 thược tính cơ bản sau:
Kích thước trường xác định số lượng lớn nhất có thể của số ký tự
trong 1 trường
Tên trường dùng để phân biệt các trường do tên trường là duy nhất
Kiểu dữ liệu quy định cụ thể kiểu của trường dữ kiệu
Các kiểu dữ liệu thường gặp là?
Text(Văn bản) còn gọi là chữ số —chữ cái, chữ số, hoặc các
ký tự đặc biệt
Số (Numeric) Chỉ bao gồm chữ số
AutoNumber (Tựđộng đánh số) Các chữ số riêng biệt được đánh dấu một cách tự động vào mỗi bản ghi mới
Currency (Tiềntệ) Tổng số đồng dollar và cent hoặc số lượng được biểu diễn dưới dạng số có phần thập phân
Date (Thờigian) Tháng, ngày, năm và một số thời gian khác
Memo (Bảng ghi) Những dòng văn bảng dài
Yes/No (còn được gọi là toán tử Boolean) — Chỉ bao gồm giá trị
Yes hoặc No ( hoặc True hoặc False)
Hyperlink (Đường dẫn) Địa chỉ Web được dẫn vào văn bản hoặc
một trang Web khác
Object ( Đối tượng ) (còn được gọi là BLOB với các đối tượng có dung lượng lớn được viết dưới dạng mã nhị phân )— hình ảnh, âm thanh, video được tạo bằng các ứng dụng như xử lý văn bản hoặc
bảng tính
b/ Bản ghi là gì ?
Bảng ghi là Nhóm các trường có quan hệ với nhau Trường chính, hay
khóa chính, là các thành phần riêng biệt dùng để phân biệt giữa các bản
ghi
Trang 9c/ Tệp tin dữ liệu là gì?
Tập hợp các bản ghi có liên quan với nhau và được lưu trên ổ đĩa
IV/ DUY TRÌ DỮ LIỆU :
1/ Duy trì tập tin là gì ?
Duy trì tập tin là Quy trình giữ cho tập tin hiện hành Việc duy trì tập tin bao gồm các công việc:
Thêm các bản ghi
Sửa đổi trên các bản ghi
Xóa các bản ghi
a/ Tại sao phải thêm bản ghi?
Thêm một bản ghi khi mà bạn nhận được dữ liệu mới
b/ Tại sao phải sửa đổi trên bản ghi?
Sửa lại các dữ liệu bị sai
Cập nhật dữ liệu mới
c/ Tại sao phải xóa bản ghi ?
Khi bản ghi không còn được sử dụng nữa
Một số phần mềm gỡ bỏ bản ghi ngay lập tức, còn một số gắn cờ hiệu cho chúng
2/ Xác thực là gì?
Là quy trình so sánh dữ liệu với các luật để xem dữ liệu có đúng hay không
Giảm khả năng bị lỗi của dữ liệu và tăng cường tính đúng đắn của dữ liệu
trước khi lưu vào bộ nhớ
Các loại xác thực dữ liệu là:
a/ Kiểm tra chữ số
một vài số hoặc chữ được thêm vào hoặc chèn vào khóa chính để kiểm tra tính chính xác của giá trị của khóa chính
b/ Kiểm tra dạng chữ/ dạng số
Đảm bảo đúng loại dữ liệu nhập vào
c/ Kiểm tra phạm vi
Xác định xem số có nằm trong phạm vi cho phép hay không
d/ Kiểm tra tính đầy đủ
Chắc rằng một trường yêu cầu phải có dữ liệu
e/ Kiểm tra tính nhất quán
Kiểm tra tính hợp lý giữa các quan hệ của một hay hai trường hay nhiều hơn
V/ XỬ LÝ TẬP TIN SO VỚI CƠ SỞ DỮ LIỆU :
1/Hệ thống xử lý tập tin là gì?
Trang 10Từng bộ phận hoặc khu vưc được tổ chức có các thiết lập dành cho tập tin
riêng
Các bảng ghi trong một tập tin có thể không có quan hệ với bất kỳ bảng ghi trong một tập tin nào khác
Các điểm yếu có thể mắc phải:
Sự dư thừa dữ liệu— nhiều trường giống nhau được lưu ở các tập tin khác
nhau
Dữ liệu biệt lập—gặp khó khăn khi truy cập vào dữ liệu được lưu ở các tập tin khác nhau
2/ Tiếp cận cơ sở dữ liệu là gì ?
Một vài chương trình và người dùng có thể chia sẽ dữ liệu trong cơ sở dữ liệu Những dữ liệu được bảo mật thì chỉ có người dùng được ủy quyền mới có thể truy cập vào một số dữ liệu nhất định
3/ Những điểm mạnh của phương pháp tiếp cận cơ sở dữ liệu là gì?
Giảm sự dư thừa dữ liệu
Tăng cường tính toàn vẹn của dữ liệu
Chia sẻ dữ liệu
Dễ dàng truy cập
Giảm thời gian phát triển
VI/ HỆ THỐNG QUẢN LÝ CƠ SỞ DỮ LIỆU :
Các hệ thống quản lý cơ sở dữ liệu thông dụng (DBMSs) là Visual Foxpro, SQL server, DB2, Microsoft Access, Oracle…
1/ Từ điển cơ sở dữ liệu là gì?
Bao gồm dữ liệu của các tập tin trong cơ sở dữ liệu và các trường trong các tập tin trên
2/ Mẫu hỏi là gì?
Yêu cầu một du liệu nào đó trong một cơ sở dữ liệu
Ngôn ngữ truy vấn bao gồm những câu lệnh đơn giản, giống tiếng Anh cho phép người dùng lựa ra dữ liệu cần được hiển thị, in hoặc lưu trữ
3/ Mẫu hỏi có sẵn (QBE) là gì?
Chương trình xuất ra các bảng ghi phù hợp với tiêu chuẩn nhập vào của các trường mẫu
Có một giao diện đồ họa giúp người dùng có thể xuất ra dữ liệu
4/ Biểu mẫu là gì ?
Một của sổ hiển thị trên màn hình cho thấy khu vực nhập vào hoặc thay đổi dữ liệu trong cơ sở dữ liệu
Dùng để truy xuất và duy trì dữ liệu trong một cơ sở dữ liệu