Tải bản đầy đủ (.doc) (54 trang)

Bài giảng quản lý 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 (4.02 MB, 54 trang )

CHƯƠNG 1: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
1.1.
Hệ quản trị CSDL
1.1.1. Khái niệm
Hệ quản trị cơ sở dữ liệu (Database Management System - DBMS): là một hệ thống phần mềm
cho phép tạo lập cơ sở dữ liệu và điều khiển mọi truy nhập đối với cơ sở dữ liệu đó.
Trên thị trường phần mềm hiện nay ở Việt Nam đã xuất hiện khá nhiều phần mềm hệ quản
trị cơ sở dữ liệu như: Microsoft Access, Foxpro, DB2, SQL Server, Oracle,…
Hệ quản trị cơ sở dữ liệu quan hệ (Relation Database Management System – RDBMS) là
một hệ quản trị cơ sở dữ liệu theo mô hình quan hệ.
Có các khả năng chính cho phép phân biệt các hệ quản trị cơ sở dữ liệu với các kiểu hệ thống
lập trình khác:










1.1.2.

Khả năng quản lý dữ liệu tồn tại lâu dài: đặc điểm này chỉ ra rằng có một cơ sở dữ liệu tồn
tại trong một thời gian dài, nội dung của cơ sở dữ liệu này là các dữ liệu mà hệ quản trị
CSDL truy nhập và quản lý.
Khả năng truy nhập các khối lượng dữ liệu lớn một cách hiệu quả
Hỗ trợ ít nhất một mô hình dữ liệu hay một sự trừu tượng toán học mà qua đó người sử dụng
có thể quan sát dữ liệu
Đảm bảo tính độc lập dữ liệu hay sự bất biến của chương trình ứng dụng đối với các thay đổi


về cấu trúc trong mô hình dữ liệu.
Hỗ trợ các ngôn ngư cao cấp nhất định cho phép người sử dụng định nghĩa cấu trúc dữ liệu,
truy nhập dữ liệu và thao tác dữ liệu.
Quản lý giao dịch, có nghia là khả năng cung cấp các truy nhập đồng thời, đúng đắn đối với
CSDL từ nhiều người sử dụng tại cùng một thời điểm.
Điều khiển truy nhập, có nghĩa là khả năng hạn chế truy nhập đến các dữ liệu bởi những
người sử dụng không được cấp phép và khả năng hạn chế truy nhập đến các dữ liệu bởi
những người sử dụng không được phép và khả năng kiểm tra tính đúng đắn của CSDL.
Phục hồi dữ liệu, có nghĩa là có khả năng phục hồi dữ liệu, không làm mất mát dữ liệu với
các lỗi hệ thống.
Chức năng của hệ quản trị cơ sở dư liệu quan hệ.

1.1.2.1. Các khái niệm trong mô hình dữ liệu quan hệ
- Miền: là một tập các giá trị hoặc các đối tượng
- Thực thể: thực thể là một đối tượng cụ thể hay trừu tượng trong thế giới thực mà nó tồn tại và có
thể phân biệt được với các đối tượng khác.
Ví du: Nguyễn Văn A là một thực thể cụ thể. Hay sinh viên cũng là một thực thể, thực thể trừu
tượng
1


-

-

Thuộc tính: là tính chất của thực thể
• Các thực thể có các đặc tính, được gọi là các thuộc tính. Nó kết hợp với một thực thể
trong tập thực thể từ miền giá trị của thuộc tính. Thông thường, miền giá trị của một
thuộc tính là một tập các số nguyên, các số thực hay các xâu ký tự.
• Một thuộc tính hay một tập thuộc tính mà giá trị của nó xác định duy nhất mỗi thực

thể trong tập các thực thể được gọi là khóa đối với tập thực thể này.
• Mỗi một thuộc tính nhận tập số các giá trị nhất định được gọi là domain của thuộc
tính đó.
Một quan hệ: định nghĩa một cách đơn giản, một quan hệ là một bảng dữ liệu có các cột là
các thuộc tính và các hàng là các bộ dữ liệu cụ thể của quan hệ.
Các liên kết: một liên kết là một sự kết hợp giữa một số thực thể hay quan hệ. Ví dụ: Mối
liên kết giữa phòng ban và nhân viên thể hiện: một nhân viên A sẽ thuộc một phòng ban B
nào đó.
• Các liên kết một – một: đây là dạng liên kết đơn giản, liên kết trên hai thực thể là một
– một, có nghĩa là mỗi thực thể trong tập thực thể này có nhiều nhất một thực thể
trong tập thực thể kia kết hợp với nó và ngược lại.
• Các liên kết một – nhiều: trong một liên kết một – nhiều, một thực thể trong tập thực
thể A được kết hợp với không hay nhiều thực thể trong tập thực thể B. Nhưng mỗi
thực thể trong tập thực thể B được kết hợp với nhiều nhất một thực thể trong tập thực
thể A.
• Các liên kết nhiều – nhiều: đây là dạng liên kết mà mỗi thực thể trong tập thực thể
này có thể liên kết vv[í không hay nhiều thực thể trong tập thực thể kia và ngược lại.

Ví dụ : Các mối liên kết giữa các thực thể:
LOP(malop, tenlop, khoa)
SINHVIEN(masv, hoten,ngaysinh,malop)
MONHOC(mamon, tenmon, sdvht)
KETQUA(masv, mamon, diem)
Ta có mối quan hệ giữa các thực thể đó:

-

Mô hình dữ liệu quan hệ: làm việc trên bảng hay trên quan hệ trong đó: mỗi cột là một thuộc
tính, mỗi dòng là một bộ (một bản ghi)
• Các ưu điểm của mô hình dữ liệu quan hệ:

2


Cấu trúc dữ liệu dễ dàng, không cần hiểu biết sâu về kỹ thuật cài đặt
Cải thiện tính độc lập dữ liệu và chương trình
Cung cấp ngôn ngữ thao tác phi thủ tục
Tối ưu hóa cách truy xuất dữ liệu
Tăng tính bảo mật và toàn vẹn dữ liệu
Cung cấp các phương pháp thiết kế có hệ thống và mở ra cho nhiều loại ứng
dụng
Khóa của quan hệ:
 Khóa của quan hệ: là tập các thuộc tính dùng để phân biệt hai bộ bất kỳ trong
quan hệ
 Khóa ngoại của quan hệ: một thuộc tính được gọi là khóa ngoại của quan hệ
nếu nó là thuộc tính không khóa của quan hệ này nhưng là thuộc tính khóa
của quan hệ khác.









1.1.2.2. Các chức năng của hệ quản trị cơ sở dữ liệu quan hệ
Các chức năng của hệ quản trị CSDL quan hệ có thể được phân thành các tầng chức năng:
-

-


-

-

-

Tầng giao diện: quản lý giao diện với các ứng dụng. Các chương trình ứng dụng CSDL được
thực hiện trên các khung nhìn của CSDL. Đối với một ứng dụng, khung nhìn rất có ích cho
việc biểu diễn một hình ảnh cụ thể về CSDL (được dùng chung bởi nhiều ứng dụng).
Khung nhìn quan hệ là một quan hệ ảo, được dẫn xuất từ các quan hệ cơ sở bằng cách áp
dụng các phép toán đại số quan hệ.
Quản lý khung nhìn bao gồm việc phiên dịch câu vấn tin người dùng trên dữ liệu ngoài thành
dữ liệu khái niệm. Nếu câu vấn tin của người dùng được diễn tả bằng các phép toán quan hệ,
câu vấn tin được áp dụng cho dữ liệu khái niệm vẫn giữ nguyên dạng này.
Tầng điều khiển: chịu trách nhiệm điều khiển câu vấn tin bằng cách đưa thêm các vị từ toàn
vẹn ngữ nghĩa và các vị từ cấp quyền.
Tâng xử lý vấn tin: chịu trách nhiệm ánh xạ câu vấn tin thành chuỗi thao tác đã được tối ưu ở
mức thấp hơn.
Tầng này liên quan đến vấn đề hiệu năng. Nó phân rã câu vấn tin thành một câu biểu thị các
phép toán đại số quan hệ và thử tìm ra một thứ tự “tối ưu” cho các phép toán này. Kết xuất
của tầng này là câu vấn tin được diễn tả bằng đại số quan hệ hoặc một dạng mã ở mức thấp.
Tầng thực thi: có trách nhiệm hướng dẫn việc thực hiện các hoạch định truy xuất, bao gồm
việc quản lý giao dịch (ủy thác, tái khởi động) và đồng bộ hóa các phép đại số quan hệ. Nó
thông dịch các phép toán đại số quan hệ bằng cách gọi tầng truy xuất dữ liệu qua các yêu
cầu truy xuất và cập nhật.
Tầng truy xuất dữ liệu: quản lý các cấu trúc dữ liệu dùng để cài đặt các quan hệ (tập tin, chỉ
mục). Nó quản lý các vùng đệm bằng cách lưu tạm các dữ liệu thường được truy xuất đến
nhiều nhất. Sử dụng tầng này làm giảm thiểu việc truy xuất đến đĩa.
Tầng duy trì nhất quán: chịu trách nhiệm điều khiển các hoạt động đồng thời và việc ghi vào

nhật ký các yêu cầu cập nhật. Tầng này cũng cho phép khôi phục lại giao dịch, hệ thống và
thiết bị sau khi bị sự cố.
3


Các chức năng của hệ quản trị CSDL quan hệ

1.2.

Phân tích, thiết kế hệ thống thông tin

1.2.1. Khái niệm
Là hệ thống nhằm cung cấp các thông tin cần thiết cho sự quản lý, điều hành của một doanh
nghiệp (hoặc tổ chức). Hạt nhân của HTTT quản lý là một cơ sở dữ liệu chứa các thông tin phản ánh
tình trạng hiện thời và hoạt động kinh doanh hiện thời của doanh nghiệp. HTTT thu thập các thông
tin đến từ môi trường của doanh nghiệp, phối hợp với các thông tin có trong cơ sở dữ liệu để kết
xuất các thông tin mà các nhà quản lý cần, đồng thời thường xuyên cập nhật các dữ liệu để phản ánh
đúng thực trạng hiện thời của doanh nghiệp.
Ví dụ: Hệ thống quản lý nhân sự trong một cơ quan, hệ thống quản lý sinh viên trong một
trường đại học, hệ thống kết toán trong một siêu thị, hệ thống trợ giúp công tác điều hành bay hoặc
hệ thống quản lý bán hành trong một công ty,…
Các hệ thống quản lý thường được phân theo hai mức:
4


- Mức tác nghiệp (Mức thấp): Hệ thống chỉ có nhiệm vụ in ra một số bảng biểu, chứng từ giao dịch
theo khuôn mẫu của cách xử lý bằng tay truyền thống.
- Mức điều hành (Mức cao): Hệ thống phải đưa ra các thông tin có tính chất chiến lược và kế hoạch
giúp cho người lãnh đạo doanh nghiệp đưa ra các quyết định đúng đắn.
* Nhiệm vụ và vai trò của hệ thống thông tin.

Quá trình xử lý thông tin như một mô hình hộp đen bao gồm: Bộ xử lý, thông tin đầu vào,
thông tin đầu ra và thông tin phản hồi cần thiết của hệ thống. Bộ xử lý biến đổi thông tin đầu vào và
cho ra dữ liệu đầu ra.
Input
(Dữ liệu vào)

Output

Process

(Dữ liệu ra)

(Bộ xử lý)
Feed back
(Phản hồi)

Hình 1.2. Mô hình xử lý thông tin đơn giản của hệ thống
+ Nhiệm vụ của hệ thống thông tin:
- Về đối ngoại: Hệ thống thông tin thu nhận thông tin từ môi trường bên ngoài và đưa thông
tin ra môi trường bên ngoài như: giá cả, thị trường, sức lao động, nhu cầu hàng hóa…
- Về đối nội: Hệ thống thông tin là cầu nối liên lạc giữa các bộ phận của hệ nghiệp vụ. Nó
cung cấp cho hệ tác nghiệp, hệ quyết định các thông tin gồm hai loại tự nhiên và cấu trúc nhằm phản
ánh cơ cấu tổ chức nội bộ và tình trạng hoạt động nghiệp vụ của hệ thống.
+ Vai trò của hệ thống thông tin: Hệ thống thông tin đóng vai trò trung gian giữa hệ thống nghiệp
vụ và mô trường, giữa hệ thống con quyết định và hệ thống con tác nghiệp. Mỗi hệ thống con đều có
đầu vào và đầu ra. Ngoài ra, HTTT cung cấp các thông tin cho các hệ quyết định và tác nghiệp. Các
thông tin xuất phát từ hệ tác nghiệp và hệ quyết định sẽ được HTTT chế biến, tổng hợp trước khi
đưa ra môi trường bên ngoài.
* Đặc điểm của hệ thống thông tin
HTTT là hệ thống được tổ chức thống nhất từ trên xuống dưới có chức năng tổng hợp các

thông tin giúp các nhà quản lý tốt cơ sở của mình và trợ giúp ra quyết định hoạt động nghiệp vụ.
5


Một hệ thống quản lý các nghiệp vụ được phân thành nhiều cấp do vậy các thông tin được xử lý và
luân chuyển từ mức trên xuống dưới và chuyền từ các mức dưới lần lượt lên dần mức trên.
1.2.2. Các giai đoạn phân tích và thiết kế HTTT
Quá trình phần tích và thiết kế hệ thống bao gồm các bước sau:
+ Xác định vấn đề, các yêu cầu quản lý hệ thống
+ Xác định mục tiêu, ưu tiên, giải pháp sơ bộ và chứng minh tính khả thi
+ Phân tích các chức năng và dữ liệu của hệ thống
+ Thiết kế logic: Trả lời câu hỏi làm gì? hoặc là gì? Phân tích sâu hơn các chức năng, các dữ liệu
của hoạt động cũ để đưa ra mô tả hoạt động mới.
+ Thiết kế vật lý đưa ra những biện pháp, phương tiện thực hiện nhằm trả lời câu hỏi: Làm như thế
nào?
+ Cài đặt hệ thống: Lựa chọn ngôn ngữ, hệ quản trị cơ sở dữ liệu và lập trình
+ Khai thác và bảo trì
Trình tự phát triển của hệ thống tuân theo một số chu trình:
* Chu trình thác nước:
+ Là loại chu trình phát triển đầu tiên. Vào những năm 70, mô tả sự phát triển của hệ thống gồm 5
giai đoạn: phân tích, thiết kế,, mã hóa, kiểm định và nghiệm thu (bảo trì). Các giai đoạn này kế
tiếp nhau. Nhược điểm chính của chu trình này là không có sự quay lui để chỉnh sửa các bước
trước nên các sai sót dễ gây ra các rủi ro cho quá trình phát triển hệ thống. Tuy nhiên, chu trình
này lại đơn giản, phù hợp với hệ thống vừa và nhỏ, ít phức tạp và được dùng phổ biến.
+ Sự tiến hóa của quy trình phát triển phần mềm dẫn đến một số kiểu chu trình tiên tiến nhu chu
trình chữ V, chu trình tăng trưởng, chu trình lắp ráp các thành phần, chu trình xoắn ốc. Các chu
trình này khắc phục được nhược điểm của chu trình thác nước truyền thống.
Các giai đoạn phát triển của hệ thống bao gồm:
Giai đoạn 1: - Khảo sát hiện trạng và xác lập dự án
- Tìm hiểu phê phán để đưa ra các giải pháp

Giai đoạn 2:

Phân tích hệ thống (thiết kế logic)
6


Giai đoạn 3:

Thiết kế tổng thể: Xác lập vai trò của tổng thể trong hệ thống

Giai đoạn 4:

- Thiết kế chi tiết, bao gồm các thiết kế về các thủ tục

- Thủ công
- Kiểm soát, phục hồi
- Thiết kế cơ sở dữ liệu
- Thiết kế các mô đun, cấu trúc chương trình
Giai đoạn 5: Cài đặt, lập trình
Giai đoạn 6: Khai thác và bảo trì
Nghiên cứu sơ bộ

Khai thác và bảo
dưỡng

Đặc tả nhu cầu

Nghiệm thu

Thiết kế tổng thế


Tích hợp

Thiết kế chi tiết

Kiểm định đơn
nguyên
Mã hóa

*Tăng trởng 1

Phân tích

Hình 1.4. Chu trình phát triển hình V

Thiết kế

Mã hóa

Kiểm định

Chuyển giao phần 1

Thiết kế

Mã hóa

Kiểm định

Chuyển giao phần 2


Tăng trưởng 2
Phân tích

v.v…
Hình 1.5. Chu trình phát triển tăng
trưởng

7


Xác định các mục tiêu,
các phương án và các
ràng buộc

Đánh giá các
phương án

Người sử dụng mong
Mô hình hệ
Thiết kế và tạo lập 1
muốn xử lý trực tiếp

tả
hoạt
động
thống mức
nguyên
Mômẫu
tả hoạt động

Thử nghiệm
nguyên
của hệ thống hiện
vật lý
của hệ thống mới
mẫu
tại làm việc như
làm việc như thế
thế nào?
Hình 1.6. Chu trình xoắn ốc
nào?
(HOW TO DO)

(HOW TO DO)

I

IV

Người sử dụng và người
phân tích

Mô hình hệ
thống mức
Logic

Người sử dụng
mong muốn

Đây là vấn đề khó


Mô tả hệ thống
hiện tại làm gì?

Mô tả hệ thống
mới làm gì?

(WHAT TO DO)

(WHAT TO DO)

II

III
Người thiết kế mong
muốn
Hình 1.7. Các giai đoạn phát triển
8


1.3. Một số hệ quản trị cơ sở dữ liệu thường dùng

1.3.1. SQL Server
1.3.1.1.
Giới thiệu về SQL Server 2005
SQL Server 2005 là một hệ thống quản lý cơ sở dữ liệu (Relational Database
Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Client
computer và SQL Server computer. Một RDBMS bao gồm databases, database engine và các ứng
dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS.
SQL Server 2005 được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (Very Large

Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL
Server 2005 có thể kết hợp "ăn ý" với các server khác như Microsoft Internet Information Server
(IIS), E -Commerce Server, Proxy Server....
Các phiên bản của SQL Server 2005:
Enterprise: Hỗ trợ không giới hạn số lượng CPU và kích thước Database. Hỗ trợ không giới
hạn RAM (nhưng tùy thuộc vào kích thước RAM tối đa mà HĐH hỗ trợ) và các hệ thống 64bit.

Standard: Tương tự như bản Enterprise nhưng chỉ hỗ trợ 4 CPU. Ngoài ra phiên bản này cũng
không được trang bị một số tính năng cao cấp khác.
Workgroup: Tương tự bản Standard nhưng chỉ hỗ trợ 2 CPU và tối đa 3GB RAM
9


Express: Bản miễn phí, hỗ trợ tối đa 1CPU, 1GB RAM v à kích thước Database giới hạn
trong 4GB.
1.3.1.2.

Các thao tác với SQL Server

a. Tạo cơ sở dữ liệu.
Theo lý thuyết cơ sở dữ liệu, trước khi tạo CSDL ta phải thực hiện phân tích các thông tin liên
quan mục đích sử dụng CSDL cho bài toán của mình: Tên CSDL, các table, ràng buộc, … tuân theo
các chuẩn CSDL,
Trong các thao tác với CSDL và đối tượng khác gồm 2 phần: Phần thao tác theo công cụ
Wizard và câu lệnh T-SQL
* Tạo theo công cụ:
- Vào Enterprise Manager / nhấn chuột phải vào Databases / new database/ đặt tên Database/ xác
định tên vật lý và tên logic / chọn OK
* Xóa cơ sở dữ liệu
- Chọn vào CSDL cần xóa

- Nhấn phải chuột
- Chọn Delete

b. Thiết kế bảng dữ liệu

Table (bảng dữ liệu) là một thành phần cơ bản của CSDL, một CSDL được
thiết kế từ một hoặc nhiều bảng dữ liệu, mỗi bảng dữ liệu được cấu trúc từ các hàng
và cột dữ liệu, mỗi hàng dùng mô tả một đối tượng, vấn đề, sự kiện,... cột thể hiện
thuộc tính của các đối tượng, sự kiện,... của hàng. Dữ liệu cùng cột có cùng kiểu
(data type). Ngoài các hàng, cột bảng còn có các khóa, liên kết, ràng buộc,...
Trước khi bắt tay vào thiết lập bảng dữ liệu trước hết ta phải xác định xem
10


bảng sẽ xây dựng như thế nào, dựa trên một số thông tin sau:
- Kiểu dữ liệu trong bảng.
- Các cột, kiểu dữ liệu tương ứng (và độ dài nếu cần thiết).
- Cột nào cho phép giá trị NULL (là giá trị mà phần dữ liệu thuộc hàng, cột
xác định không được gán giá trị nào, vì vậy nên 2 phần tử có cùng giá trị NULL là
không bằng nhau).
- Giá trị ngầm định (là giá trị mà khi chưa nhập vào nó nhận giá trị này).
- Chỉ số Index, khóa chính, khóa ngoài.
* Kiểu dữ liệu.
SQL Server gồm những kiểu dữ liệu sau:
-

Binary: Là kiểu dữ liệu chứa dạng số ở hệ hexa, gồm 3 kiểu dữ liệu Bin

ary, Varbinary, Image.
- Text: Là kiểu ký tự, chứa chữ cái, ký hiệu, số, gồm những kiểu dữ liệu sau:

- Char: Kiểu ký tự, khi xác định độ dài thì độ dài trong CSDL sẽ xác định
theo độ dài đặt trước mà không theo độ dài dữ liệu thực có, không sử dụng với
ký tự dạng Unicode, độ dài tối đa là 8000.
- Nchar: Tương tự như Char nhưng sử dụng với ký tự Unicode, độ dài tối đa
4000.
- Nvarchar: Tương tự như NChar nhưng kích thước trong CSDL sẽ là kích
thước thực dữ liệu hiện có, không tính theo kích thước đặt trước, kích thước tối
đa là 4000.
- Varchar: Tương tự như Nvarchar nhưng không hỗ trợ Unicode.
- Text: Kiểu văn bản, chứa cả ký tự xuống dòng, lưu trữ theo dạng văn bản,
11


có kích thước lớn, có thể lên đến vài Gb, cơ chế quản lý kiểu dữ liệu theo dạng
con trỏ và cách thức chèn và cập nhật sẽ khác, kiểu dữ liệu này không hỗ trợ
cho Unicode.
- Ntext: Tương tự như Text nhưng có hỗ trợ Unicode.
Data/Time: Kiểu dữ liệu ngày, thời gian, ngày và thời gian, gồm 2 kiểu:
- DateTime: Đầy đủ cả ngày và thời gian.
- SmallDataTime: Chỉ ngày hoặc thời gian.
Numeric: Dữ liệu kiểu số, gồm các kiểu dữ liệu sau:
- Int, smallint, tinyint, bigint: Số nguyên
- Float, real, decimal, numeric: Số thực.
Monetary: Tiền tệ:
- Money, Smallmoney.
- Bit: Kiểu số 0, 1.
- Sql_variant: Là kiểu dữ liệu xác định theo kiểu dữ liệu khác, một cột dữ liệu được
định nghĩa dữ liệu kiểu này có thể lưu trữ nhiều dữ liệu có kiểu khác nhau trong
cùng một bảng. Ví dụ có thể lưu trữ nhiều kiểu dữ liệu int, binary, char, nhưng
không chứa dữ liệu kiểu text, ntext, image, timestamp, sql_variant.

- Timestamp: Là kiểu dữ liệu có kích thước 8 byte, lưu trữ dạng số nhị phân do hệ
thống tự sinh ra, mỗi giá trị timestamp trong CSDL là duy nhất.
- Table: Là kiểu dữ liệu đặc biệt lưu trữ tập hợp các hàng (dạng bảng), mục đích sử
dụng chính là lưu trữ tạm thời tập hợp các hàng sau truy vấn.
* Tạo bằng công cụ.
- Chọn CSDL
12


- Chọn Tables
- Nhấn phải chuột ở cửa sổ bên phải

13


- Chọn New Table.

* Đặt khóa chính.
Để xác định khóa chính ta thực hiện chọn những cột tham gia khóa bằng
cách giữ phím shift và chọn chuột -> nhấn chuột phải -> chọn Set primary key.



* Xác định Identity.
- Chọn cột dữ liệu -> Chọn yes trong mục Identity -> đặt seed (giá trị
khởi
đầu) -> đặt increment (bước tự động tăng).

c. Tạo khung nhìn (view)
Sử dụng công cụ.

- Chọn chức năng Views của CSDL.

- Nhấn phải chuột.


- Chọn New View.

-

Thêm các bảng tham gia câu lệnh truy vấn cho view
Soạn câu lệnh truy vấn hoặc đánh dấu các cột tham gia vào view


- Sửa đổi lệnh Select theo ý muốn.
- Ghi kịch bản -> đặt tên view.

d. Thủ tục lưu trữ và hàm.
Thủ tục lưu trữ có thuật ngữ Stored Procedure, là một đối tượng của CSDL
tương tự như khung nhìn, thủ tục lưu trữ có thể tạo ra từ công cụ và câu lệnh. THủ
tục được thực hiện như câu lệnh (có thể thực hiện từ SQL Query analyzer, các vị trí
gọi câu lệnh T-SQL).
Thủ tục lưu trữ được kết cấu từ một kịch bản câu lệnh T-SQL, thủ tục có
những đặc điểm cơ bản sau:
+ Truyền tham số.
+ Gọi thủ tục khác.
+ Trả về các giá trị tham số, chuyển giá trị tham số cho các thủ tục được gọi.
+ Trả về giá trị trạng thái thủ tục là thành công hay không thành công.


Thủ tục lưu trữ có nhiều ưu điểm so với thực hiện câu lệnh T-SQL từ các máy

khách:
+ Lập trình theo module: Thủ tục được thiết lập trong từng CSDL một lần,
có thể gọi thực hiện nhiều lần trong một ứng dụng, có thể gọi từ nhiều ứng dụng.
+ Thực hiện nhanh hơn: Khi cần thực hiện một lượng lớn câu lệnh T-SQL,
thủ tục lưu trữ thực hiện nhanh hơn vì khi máy chủ nhận được nhiều cầu lệnh cùng
một lúc đều phải kiểm tra tính hợp lệ quyền của tài khoản từ máy khách và các
tham số khác. Khi thủ tục cần gọi nhiều lần trên các máy khách thì thủ tục thực
hiện một lần đầu tiên, những lần sau máy khách sẽ chạy thủ tục đã được biên dịch.
+ Làm giảm lưu lượng trên mạng: Thay cho vì máy khách phải gửi nhiều
dòng lệnh từ các ứng dụng đến máy chủ, khi sử dụng thủ tục thì nó chỉ cần gửi một
lệnh, từ đó dẫn đến lưu lượng thông tin lệnh truyền qua mạng giảm.
+ An ninh bảo mật hơn: Khi không muốn cho một user trực tiếp khai thác
một đối tượng hay bảng dữ liệu nào đó, mà cần cho user đó được khai thác thì thủ
tục có thể giúp bạn gán quyền khai thác cho người đó. Việc gán quyền khai thác
như nói trên sẽ giúp cho vấn đề an ninh bảo mật trong CSDL tốt hơn.
* Phân loại thủ tục lưu trữ.
Thủ tục lưu trữ được phân thành 5 loại như sau:
System Stored Procedure.
Là thủ tục được lưu trữ tỏng CSDL Master, thủ tục loại này được bắt đầu
bằng chữ sp_ thủ tục loại này thường được sử dụng trong quản trị CSDL và an ninh
bảo mật.
Ví dụ: Muốn biết tất cả các tiến trình đang thực hiện bởi user nào:


sp_who @loginame='sa'
Kết quả

Local Stored Procedure.
Đây là loại thủ tục thường dùng nhất, nằm trong CSDL do người dùng tạo ra,
thực hiện một công việc nào đó. Thủ tục loại này thường được tạo bởi DBA

(Database Administrator) hoặc người lập trình.
Temporary Stored Procedure.
Có chức năng tương tự như Local Stored Prcedure nhưng thủ tục loại này tự
hủy khi kết nối tạo ra nó ngắt hoặc SQL Server ngưng hoạt động và nó được tạo ra
trên CSDL TempDB.
Extended Stored Procedure.
Đây là loại thủ tục sử dụng chương trình ngoại vi đã được biên dịch thành
DLL. Tên thủ tục được bắt đầu bằng xp_. Ví dụ thủ tục xp_sendmail dùng gửi
mail, thủ tục xp_cmdshell dùng thực hiện lệnh của DOS (xp_cmdshell ‘dir c:\’).
Remote Stored Procedure:
Là loại thủ tục sử dụng thủ tục của một server khác.
* Thiết lập công cụ lưu trữ
- Chọn CSDL cần tạo thủ tục trong Enterprise Manager –> Stored
Procedures
- Nhấn nút phải chuột -> New Stored Procedure…


- Đặt tên thủ tục, xác định role người khai thác, soạn kịch bản câu lệnh.


1.3.2. Hệ quản trị dữ liệu Oracle
1.3.2.1. Khái niệm Oracle
Oracle Server: là tập hợn các file, tiến trình và cấu trúc bộ nhớ trong Oracle Server
Oracle Batabase: tập hợp các fiel hệ thống: file database (thông tin về thiết bị lưu trữ vật lý, về
database)

* Cấu trúc

dữ liệu trong Oracle


- Cấu
-

trúc luận lý: mô tả vùng nhớ dùng để lưu trữ các
đối
tượng như các bảng, hàm, thủ tục, …
Cấu trúc vật lý: các tập tin hệ thống hình thành cơ sở dữ liệu

* Các kiểu dữ liệu

CHƯƠNG 2: TỔNG QUAN VỀ BÀI TOÁN QUẢN LÝ
2.1. Khái niệm bài toán quản lý


2.1.1. Khái niệm
- Bài toán quản lí là bài toán phổ biến trong mọi hoạt động kinh tế - xã hội. Một xã hội ngày càng văn
minh thì trình độ quản lí các tổ chức hoạt động trong xã hội đó ngày càng cao. Công tác quản lí chiếm
phần lớn trong các ứng dụng của tin học.
- Để quản lý HSSV trong nhà trường, người ta thường lập các biểu bảng gồm các cột, hàng để chứa
thông tin cần quản lý.
- Một trong những biểu bảng được thiết lập để lưu trữ thông tin về điểm của hs như sau:

Chú ý:
- Hồ sơ
nhà trường là
lớp.

quản lí HSSV của
tập hợp các hồ sơ


- Trong
quá trình quản lí, hồ
sơ có thể có những bổ sung, thay đổi hay nhầm lẫn đòi hỏi phải sửa đổi lại.
- Việc tạo lập hồ sơ không chỉ đơn thuần là để lưu trữ mà chủ yếu là để khai thác, nhằm
phục vụ các yêu cầu quản lí của nhà trường.
2.1.2. Chức năng của lập trình quản lý
Công việc quản lí tại mỗi nơi, mỗi lĩnh vực có những đặc điểm riêng về đối tượng quản lí
cũng như về phương thức khai thác thông tin. Công việc thường gặp khi xử lí thông tin bao
gồm: tạo lập, cập nhật và khai thác hồ sơ.
* Tạo lập hồ sơ:
Để tạo lập hồ sơ, cần thực hiện các công việc sau:
- Tùy thuộc nhu cầu của tổ chức mà xác định chủ thể cần quản lí VD: Chủ thể cần quản lí là
học sinh, ...
- Dựa vào yêu cầu quản lí thông tin của chủ thể để xác định cấu trúc hồ sơ. VD: ở hình 1, hồ
sơ của mỗi học sinh là một hàng có 11 thuộc tính.
- Thu thập, tập hợp thông tin cần thiết cho hồ sơ từ nhiều nguồn khác nhau và lưu trữ chúng
theo đúng cấu trúc đã xác định. VD; hồ sơ lớp dưới, kết quả điểm thi học kì các môn học, ...
* Cập nhật hồ sơ:
Thông tin lưu trữ trong hồ sơ cần được cập nhật để đảm bảo phản ánh kịp thời, đúng với
thực tế.
Một số việc thường làm để cập nhật hồ sơ:


- Sửa chữa hồ sơ;
- Bổ sung thêm hồ sơ;;
- Xóa hồ sơ.
* Khai thác hồ sơ:
Việc tạo lập, lưu trữ và cập nhật hồ sơ là để khai thác chúng, phục vụ cho công việc quản
lí.
Khai thác hồ sơ bao gồm các công việc chính sau:

- Sắp xếp hồ sơ theo một tiêu chí nào đó phù hợp với yêu cầu quản lí của tổ chức. VD: sắp
xếp theo bảng chữ cái của tên học sinh, theo điểm của môn học nào đó, ...
- Tìm kiếm là việc tra cứu các thông tin thỏa mãn một số yêu cầu nào đó. VD: tìm họ tên hs
có điểm môn Tin cao nhất, ...
- Thống kê là cách khai thác hồ sơ dựa trên tính toán để đưa ra các thông tin đặc trưng..
VD: Xác định điểm cao nhất, thấp nhất môn Tin, ...
- Lập báo cáo là việc sử dụng các kết quả tìm kiếm, thống kê, sắp xếp các bộ hồ sơ để tạo lập
một bộ hồ sơ mới có nội dung và cấu trúc khuôn dạng theo một yêu cầu nào đó. VD: danh
sách HSG của lớp, ...
2.3. Các bước tiến hành lập trình bài toán quản lý
2.3.1. Khảo sát hệ thống
Việc khảo sát thường được tiến hành thông qua hai giai đoạn:
- Khảo sát sơ bộ nhằm xác định tính khả thi của dự án
- Khảo sát chi tiết nhằm xác định chính xác những gì sẽ thực hiện và khẳng định những lợi ích kèm
theo.
* Mục đích
Việc khảo sát hiện trạng là nhằm để:
-

Tiếp cận với nghiệp vụ chuyên môn, môi trường hoạt động của hệ thống

-

Tìm hiểu các chức năng, chức vụ và cung cách hoạt động của hệ thống

-

Chỉ ra các chỗ hợp lý của hệ thống, cần được kế thừa và các chỗ bất hợp lý của hệ
thống, cần được nghiên cứu khắc phục


* Yêu cầu


Yêu cầu của giai đoạn khảo sát cũng chính là mục tiêu của người phân tích và thiết kế cần xác
định trong giai đoạn này bao gồm:
-

Khảo sát đánh giá sự hoạt động của hệ thống cũ

-

Đề xuất mục tiêu, ưu tiên cho hệ thống mới

-

Đề xuất ý tưởng cho giải pháp mới

-

Vạch kế hoạch cho dự án

-

Lập báo cáo về khảo sát và xác định tính khả thi

* Tìm hiểu, đánh giá hiện trạng
Tìm hiểu và đánh giá hiện trạng nhằm phát hiện những nhược điểm cơ bản của hệ thống cũ
đồng thời cũng định hướng cho hệ thống mới cần giải quyết “cải tạo cái cũ, xây dựng cái mới”.
* Cách thức tiến hành
Có nhiều hình thức khảo sát, chúng được sử dụng kết hợp để nâng cao hiệu quả, tính xác thực,

tính khách quan và tính toàn diện của phương pháp luận.
- Quan sát theo dõi: Bao gồm quan sát chính thức và không chính thức
+ Quan sát chính thức: Thường có chuẩn bị và thông báo trước. Đây không phải là phương
pháp tốt nhất vì hệ thống tương lai có thể có cách thức làm việc thay đổi, hơn nữa, những gì
ta dễ nhìn thấy có thể không thuận tiện và không bình thường, có thể ảnh hưởng đến chất
lượng nghiên cứu.
+ Quan sát không chính thức: Để có cái nhìn tổng quát về một tổ chức cần xem xét các giấy tờ
và tài liệu, lý do dừng công việc, phân chia thời gian không hợp lý và sự phản ánh trung
thực về môi trường làm việc tốt. Quan sát không chính thức thường cho ta kết quả khách
quan hơn.
- Phỏng vấn, điều tra: Phương pháp trao đổi trực tiếp với người tham gia hệ thống thông qua
các buổi gặp mặt bằng một số kĩ thuật. Phương pháp này đòi hỏi các chỉ dẫn rõ ràng cho người sử
dụng. Khi phân tích sử dụng các bảng hỏi, các mẫu điều tra. Danh sách các câu hỏi có thể được thiết
kế dựa trên các điểm sau:
+ Tiêu đề: Mô tả các mục tiêu và các nội dung chính
+ Phân lớp dữ liệu: Các loại dữ liệu sẽ sử dụng
+ Dữ liệu: Nội dung của dữ liệu trong từng loại
→ Phương pháp này phức tạp và không có hiệu quả với những người phân tích thiếu kinh nghiệm.


×