You are on page 1of 20

UBND 

TỈNH BÀ RỊA – VŨNG TÀU
TRƯỜNG CAO ĐẲNG KỸ THUẬT CÔNG NGHỆ

GIÁO TRÌNH

MÔ ĐUN HỆ QUẢN TRỊ CSDL MS SQL SERVER
NGHỀ: CÔNG NGHỆ THÔNG TIN
TRÌNH ĐỘ: CAO ĐẲNG
(Ban hành kèm theo Quyết định số: ……/QĐ­CĐKTCN, ngày … tháng … năm  
20…… của Hiệu trưởng Trường Cao đẳng Kỹ thuật Công nghệ BR­VT)

BÀ RỊA – VŨNG TÀU, NĂM 2020
TUYÊN BỐ BẢN QUYỀN

Nhằm đáp  ứng nhu cầu học tập và nghiên cứu cho giảng viên và sinh 
viên nghề  Công nghệ  Thông tin trong trường Cao đẳng Kỹ  thuật Công nghệ 
Bà Rịa – Vũng Tàu, chúng tôi đã thực hiện biên soạn tài liệu Hệ  quản trị 
CSDL MS SQL Server này.

Tài liệu được biên soạn thuộc loại giáo trình phục vụ giảng dạy và học  
tập, lưu hành nội bộ  trong Nhà trường nên các nguồn thông tin có thể  được 
phép dùng nguyên bản hoặc trích dùng cho các mục đích về  đào tạo và tham  
khảo.

Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh 
doanh thiếu lành mạnh sẽ bị nghiêm cấm.
LỜI GIỚI THIỆU

Giáo trình “Hệ quản trị CSDL MS SQL Server” được biên soạn dựa trên 
khung chương trình đào tạo Trung cấp nghề  Công nghệ  Thông tin đã được 
Trường Cao đẳng Kỹ thuật Công nghê Bà Rịa – Vũng Tàu phê duyệt.
Tác giả  đã nghiên cứu một số  tài liệu, công nghệ  hiện đại kết hợp với  
kinh nghiệm làm việc thực tế  để  viết nên giáo trình này. Nội dung được tác  
giả  trình bày cô động, dễ  hiểu kèm theo các bước hướng dẫn thực hành chi  
tiết theo nguyên tắc quan tâm đến kết quả  đầu ra, khả  năng tự  học và kỹ 
năng cần thiết để  HSSV sử  dụng các phát biểu T­SQL: tạo CSDL, tạo user, 
truy vấn dữ liệu… thực hiện thành thạo các thao tác quản trị  tài khoản người  
dùng và tài khoản nhóm đối với hệ  thống MS SQL Server , đáp  ứng nhu cầu 
thực tế của doanh nghiệp.
Nội dung giáo trình được chia thành 11 bài, trong đó:
Bài 1: Tổng quan về mô hình Client/Server
Bài 2: Hệ quản trị cơ sở dữ liệu Microsoft SQL Server
Bài 3: Ngôn ngữ định nghĩa và thao tác dữ liệu (T­SQL)
Bài 4: Thủ tục lưu trữ
Bài 5: Quản lý giao tác
Bài 6: Bảo mật trong SQL Server
Trong quá trình biên soạn, chắc chắn giáo trình còn nhiều thiếu sót. Tác  
giả rất mong nhận được ý kiến đóng góp của quý thầy/cô và các em học sinh,  
sinh viên để tiếp tục hoàn thiện hơn.
Xin chân thành cảm  ơn quý đồng nghiệp, bạn bè đã có những ý kiến  
đóng góp trong quá trình biên soạn giáo trình này.

Bà Rịa – Vũng Tàu, ngày …… tháng …… năm ………

Tham gia biên soạn

1. Nguyễn Phạm Ái Hương – Chủ biên

1
BM/QT08/P.ĐT/02/06
Ban hành lần: 3
MỤC LỤC

 LỜI GIỚI THIỆU                                                                                                 
 
................................................................................................
   
 1
 MỤC LỤC                                                                                                              
 
.............................................................................................................
   
 2
 6.1. Mô hình CSDL tập trung (Centralized database model)                              
 
.............................
    
 19
 6.2. Mô hình CSDL theo kiểu file ­ server (File ­ server databasemodel)          
 
.........
    
 19
6.3. Mô hình xử  lý từng phần CSDL (Database extract proceSQL Servering 
 model)                                                                                                             
 
............................................................................................................
    
 20
 6.4. Mô hình CSDL Client/Server (Client/Server database model)                     
 
....................
    
 20
 6.5. Mô hình CSDL phân tán (Distributed database model)                                
 
...............................
    
 21
   Tạo CSDL bằng SQL Server    Management Studio                                           
 
..........................................
    
 31
 4.1.  Sử dụng  truy vấn con                                                                               
 
..............................................................................
    
 108
 4.2.  Sử dụng biến con trỏ                                                                                
 
...............................................................................
    
 111
 2.1. Tạo View trong SQL                                                                                  
 
.................................................................................
    
 117
 2.2. Xóa View trong SQL                                                                                   
 
..................................................................................
    
 118
CHƯƠNG TRÌNH MÔ ĐUN
(Ban hành kèm theo Quyết định số      /QĐ–CĐKTCN ngày    tháng    năm    của Hiệu  
trưởng Trường Cao đẳng Kỹ thuật Công nghệ Bà Rịa – Vũng Tàu)

Tên mô đun: Hệ quản trị CSDL MS SQL Server
Mã mô đun: MD15
Thời   gian   thực   hiện   mô   đun:  90  giờ;   (Lý  thuyết:  27  giờ;    Thực   hành,  thí 
nghiệm, thảo luận, bài tập: 55giờ;  Kiểm tra: 8 giờ)
Vị trí, tính chất của mô đun:

­ Vị trí: được giảng dạy sau khi học xong các module Cơ sở dữ liệu, Quản trị Cơ 
sở dữ liệu Access, Quản trị mạng
­ Tính chất: Là mô đun chuyên ngành của nghề công nghệ thông tin, trình bày các 
kiến trúc của hệ quản trị cơ sở dữ liệu MS SQL Server, cách làm việc và tương 
tác giữa các thành phần kiến trúc trong hệ thống. Kết nối hệ thống mạng để sử 
dụng hệ thống cơ sở dữ liệu.
Mục tiêu mô đun:

­ Về kiến thức: 
+ Trình bày mô hình cơ sở dữ liệu Client/Server
+ Nêu các đặc trưng của mô hình Client/Server
+ Trình bày cú pháp và công dụng của các phát biểu T­SQL: tạo CSDL, tạo  
user
+ Thực hiện các ràng buộc dữ liệu: Check, primary 
+ Trình bày cú pháp ngôn ngữ lập trình SQL để định nghĩa được các hàm
+ Phân tích trigger, các nguyên lý quản lý giao tác cho CSDL
+ Biết chọn giải pháp cơ chế an toàn dữ liệu
­ Về kỹ năng:
+ Kết nối hệ thống mạng để sử dụng hệ thống cơ sở dữ liệu.

3
+ Thực hiện thành thạo các thao tác quản trị   tài khoản người  dùng và tài 
khoản nhóm đối với hệ thống MS SQL Server.
+ Thiết lập cấu hình và giải quyết các vấn đề thường xảy ra trên mạng khi 
sử dụng truy cập cơ sở dữ liệu.
+ Bảo vệ tài nguyên dữ liệu trên các hệ thống MS SQL Server.
+ Sao   lưu   và   phục   hồi   đồng   thời   lập   được   lịch   sao   lưu   tự   động   trong 
HQTCSDL SQL Server 
­ Về năng lực tự chủ và trách nhiệm: 
+ Có tinh thần trách nhiệm, ý thức tổ chức kỷ luật, tác phong công nghiệp, 
tinh thần hợp tác trong công việc
+ Có ý chủ động, độc lập trong công việc, tự học cập nhật kiến thức, nâng 
cao trình độ chuyên môn.
+ Có khả năng tổ chức và điều hành một nhóm, đánh giá được các thành viên 
trong nhóm.
+ Rèn luyện tính cẩn thận, kiên trì, sáng tạo, độc lập và hoạt động nhóm. 
+ Bảo đảm an toàn và vệ sinh cho người và thiết bị trong phòng máy.
Nội dung mô đun:
Thời gian (giờ)
Số Thực hành, thí 
Tên các bài trong mô đun Tổng  Lý  Kiểm 
TT nghiệm, thảo 
số thuyết tra
luận, bài tập
Bài 1: Tổng quan về mô hình  4 1 3 0
1
Client/Server
1. Các kiến thức tổng quan về cơ  0.4 0.2 0.2 0
sở dữ liệu
2. Các giai đoạn phát triển của một  0.3 0.1 0.2 0
hệ quản trị cơ sở dữ liệu
3. Các đặc trưng của mô hình  0.8 0.2 0.6 0
Client/server

4
4. Tổng quan về cấu trúc  1.2 0.2 1.0 0
Client/Server
5. Các   mô   hình   dữ   liệu   của   hệ  1.3 0.3 1.0 0
thống Client/Server
Bài 2: Hệ quản trị cơ sở dữ liệu  10 4 6 0
2
Microsoft SQL Server
1. Giới thiệu hệ quản trị cơ sở dữ  0.7 0.2 0.5 0
liệu MS SQL Server
2. Cài đặt MS SQL Server 1.0 0.5 0.5 0
3. Các công cụ của MS SQL Server  1.3 0.3 1 0
4. Làm việc với công cụ Enterprise  4.0 2.0 2 0
Manager
5. Các dịch vụ của SQL 3 1.0 2 0
Bài 3: Ngôn ngữ định nghĩa và thao  24 9 13 2
3
tác dữ liệu (T­SQL)
1. Create Database 1.5 0.5 1 0
2. Create Table 2.5 1.5 1 0
3. Alter Table 2 1.0 1 0
4. Toàn vẹn dữ liệu 3.5 1.5 2 0
5. Insert 3.0 1 2 0
6. Delete 1.5 0.5 1 0
7. Update 3 1.0 2 0
8.  Select 5 2 3 0
Kiểm tra 2 0 0 2
4 Bài 4: Thủ tục lưu trữ 19 6 11 2
1. Khái niệm về thủ tục lưu trữ 1.5 0.5 1 0
2. Tạo thủ lư trữ 4.5 1.5 3 0
3. Lời gọi thủ tục 1.5 0.5 1 0
4. Sử dụng biến trong thủ tục 3 1.0 2 0
5. Giá trị trả về của tham số trong  3 1.0 2 0
thủ tục lưu trữ
6. Sửa đổi thủ tục 2.5 1.0 1.5 0

5
7. Xóa thủ tục 1 0.5 0.5 0
Kiểm tra 2 0 0 2
5 Bài 5: Quản lý giao tác 16 6 7 3
1. Định nghĩa Trigger 1.5 0.5 1 0
2. Sử dụng mệnh đề IF UPDATE  3.5 1.5 2.0 0
trong Trigger
3. ROLLBACK TRANSACTION 3.5 1.5 2.0 0
4. Sử dụng Trigger trong trường  4.5 2.5 2.0 0
hợp câu lệnh Insert, Update, và 
Delete có tác động đến nhiều 
dòng dữ liệu
Kiểm tra 2 0 0 3
6 Bài 6: Bảo mật trong SQL Server 17 4 10 3
1. Cơ chế an toàn dữ liệu 1.5 0.5 1 0
2. Khung nhìn (view) như các cơ  2.5 0.5 2 0
chế bảo vệ dữ liệu
3. Tạo và quản lý User 2.0 0.5 1.5 0
4. Tạo roles và sử dụng các loại  4.5 1.5 3 0
roles trên server, DB và Object
5. Tạo User: cấp quyền, thu  3.5 1.0 2.5 0
quyền trên server, DB và Object
Kiểm tra 3 0 0 3
Cộng 90 30 50 10

2. Nội dung chi tiết
Bài 1: Tổng quan về mô hình Client/Server Thời gian: 
04giờ
Mục tiêu:
­ Hiểu rõ  mô hình cơ sở dữ liệu Client/Server
­ Nắm vững các đặc trưng của mô hình Client/Server
­ Nghiêm túc, tự giác trong học tập
Nội dung:
6
1. Các kiến thức tổng quan về cơ sở dữ liệu
2. Các giai đoạn phát triển của một hệ quản trị cơ sở dữ liệu.
3. Giới thiệu về mô hình Client server và các hệ quản trị cơ sở dữ liệu phục  
vụ cho mô hình Client/Server
4. Các đặc trưng của mô hình Client/server
5. Tổng quan về cấu trúc Client/Server
6. Các mô hình dữ liệu của hệ thống Client/Server

Bài 2: Hệ quản trị cơ sở dữ liệu Microsoft SQL Server   Thời gian: 
10 giờ
Mục tiêu:
­ Trình bày lịch sử phát triển của hệ quản trị cơ sở dữ liệu MS SQL Server
­ Cài đặt được phần mềm hệ quản trị cơ sở dữ liệu MS SQL Server
­ Sử dụng được các công cụ hổ trợ của hệ quản trị cơ sở dữ liệu MS SQL  
Server
­ Cấu hình được hệ thống quản trị cơ sở dữ liệu trên Server nội bộ.
­ Nghiêm túc, tự giác trong học tập
­ Đảm bảo an toàn cho nguời và thiết bị
Nội dung:
1. Giới thiệu hệ quản trị cơ sở dữ liệu MS SQL Server
2. Cài đặt MS SQL Server
3. Các công cụ của MS SQL Server
4. Làm việc với công cụ Enterprise Manager
4.1.Tạo CSDL
4.2.Tạo bảng
4.3.Tạo mối quan hệ giữa các bảng

7
4.4.Nhập dữ liệu cho bảng 
    5. Các dịch vụ của SQL

Bài 3: Ngôn ngữ định nghĩa và thao tác dữ liệu (T­SQL)                    Thời 
gian: 24 giờ
Mục tiêu:
⁻ Trình bày cú pháp và công dụng của các phát biểu.
⁻ Thực hiện được việc truy vấn dữ liệu trên câu lệnh T­SQL đúng yêu cầu.
⁻ Tạo được các loại khóa: Khóa chính, khóa phụ, khóa ngoài;
⁻ Các ràng buộc dữ liệu: Check, primary,..
⁻ Thực hiện các thao tác an toàn với máy tính.
⁻ Nghiêm túc, tự giác trong học tập
⁻ Đảm bảo an toàn cho nguời và thiết bị
Nội dung:
1. Tạo cơ sở dữ liệu (Create Database)
2. Tạo bảng (Create Table)
3. Sửa bảng (Alter Table)
4. Toàn vẹn dữ liệu (Contrains)
5. Thêm dữ liệu (Insert)
6. Xóa (Delete)
7. Cập nhật (Update)
8. Chọn lọc (Select)

Bài 4: Thủ tục lưu trữ Thời gian: 19giờ
Mục tiêu:
­ Sử dụng được ngôn ngữ lập trình SQL để định nghĩa được các hàm

8
­ Cài đặt thủ tục nội tại
­ Bẫy lỗi, cách dùng con trỏ trong xử lý dữ liệu
­ Thực hiện các thao tác an toàn với máy tính
Nội dung:
1. Khái niệm về thủ tục lưu trữ
2. Tạo thủ lư trữ 
3. Lời gọi thủ tục 
4. Sử dụng biến trong thủ tục
5. Giá trị trả về của tham số trong thủ tục lưu trữ
6. Sửa đổi thủ tục
7. Xóa thủ tục

Bài 5: Quản lý giao tác Thời gian: 19giờ
Mục tiêu:
⁻ Hiểu được thế nào là trigger
⁻ Hiểu các nguyên lý quản lý giao tác
⁻ Quản lý truy xuất cạnh tranh, phục hồi sau sự cố
⁻ Thực hiện các thao tác an toàn với máy tính
Nội dung:
1. Định nghĩa Trigger
2. Sử dụng mệnh đề IF UPDATE trong Trigger
3. ROLLBACK TRANSACTION
4. Sử dụng Trigger trong trường hợp câu lệnh Insert, Update, và Delete có tác 
động đến nhiều dòng dữ liệu.

Bài 6: Bảo mật trong SQL Server Thời gian: 17giờ
Mục tiêu:

9
⁻ Sử dụng được các lệnh tạo user.
⁻ Sử dụng được các lệnh cấp phát, thu hồi và từ chối quyền đối với người 
sử dụng.
⁻ Thực hiện các thao tác an toàn với máy tính
Nội dung:
1. Cơ chế an toàn dữ liệu
2. Khung nhìn (view) như các cơ chế bảo vệ dữ liệu
3. Tạo và quản lý User
4. Tạo roles và sử dụng các loại roles trên server, DB và Object
5. Tạo User: cấp quyền, thu quyền trên server, DB và Object

IV. Điều kiện thực hiện mô đun
1.   Phòng   học   chuyên   môn   hóa/nhà   xưởng:  máy   tính   được   kết   nối   mạng, 
1hv/máy. Máy tính được cài đặt MS SQL Server 2012, RAM tối thiểu 4GB,  ổ 
cứng còn trống tối thiểu  525 MB
2. Trang thiết bị máy móc: máy chiếu, bảng viết
3. Học liệu, dụng cụ, nguyên vật liệu:
4. Các điều kiện khác:
V. Nội dung và phương pháp đánh giá
1. Nội dung:
­ Kiến thức:
+ Đánh giá thông qua bài kiểm tra viết đạt được các yêu cầu sau:
+ Định nghĩa Database, table và ràn buộc dữ liệu
+ Mô tả được các kiểu dữ liệu trong SQL Server.
+ Trình bày được cú pháp các câu lệnh Select, Insert, Update, Delete.
+ Sao lưu, phục hồi dữ liệu database
+ Export /inport dữ liệu từ SQL sang ứng dụng khác

10
+ Thêm user , gán quyền và thu hồi quyền
­ Kỹ năng:
+ Đánh giá thông qua bài kiểm tra thực hành kỹ  năng thao tác, quản trị  cơ 
sở dữ liệu bằng công cụ Enterprise Manager 
+ Phân biệt được các kiểu dữ liệu khi thiết kế bảng.
+ Phân biệt được mô hình quản trị cơ sở dữ liệu Client/Server với các mô  
hình quản trị cơ sở dữ liệu khác.
+ Cài đặt được cơ sở dữ liệu SQL Server trên máy đơn và máy mạng. 
+ Đăng nhập được vào SQL Server.
+ Tạo   được   cơ   sở   dữ     liệu   và   các   thành   phần   của   cơ   sở   dữ   liệu  
Client/Server
­ Năng lực tự chủ và trách nhiệm:
+ Có tinh thần trách nhiệm, ý thức tổ chức kỷ luật, tác phong công nghiệp, 
tinh thần hợp tác trong công việc
+ Có ý chủ động, độc lập trong công việc, tự học cập nhật kiến thức, nâng 
cao trình độ chuyên môn.

+ Có khả  năng tổ  chức và điều hành một nhóm, đánh giá được các thành 


viên trong nhóm.

+ Rèn luyện tính cẩn thận, kiên trì, sáng tạo, độc lập và hoạt động nhóm. 
+ Bảo đảm an toàn và vệ sinh cho người và thiết bị trong phòng máy.

2. Phương pháp: 
- Đánh giá về kiến thức: tự luận và vẫn đáp.
- Đánh giá về kỹ năng: Quan sát thao tác thực hành trên máy tính và thông qua 
chất lượng sản phẩm.
- Đánh giá về  năng lực tự  chủ  và trách nhiệm: Thông qua kết quả  đánh giá 
kiến thức, kỹ năng và thái độ

11
VI. Hướng dẫn thực hiện mô đun

1. Phạm vi áp dụng mô đun: Chương trình mô đun này được sử  dụng để  giảng 


dạy cho trình độ trung cấp, cao đẳng
2. Hướng dẫn về phương pháp giảng dạy, học tập mô đun:
­ Đối với giáo viên, giảng viên:
+ Chuẩn bị các điều kiện cần thiết trước mỗi bài
+ Chiếu sản phẩm sẽ đạt được trước mỗi bài để nâng cao ý thức học  
tập của học sinh.
+ Thao tác mẫu và hướng dẫn chi tiết để hoàn thiện kỹ năng cho học  
sinh
+ Có thể chia nhóm học sinh để thực hiện bài tập
­ Đối với người học:

Làm bài tập thực hành trên máy tính.

Trao đổi với nhau, thực hiện các bài thực hành theo nhóm.
3. Những trọng tâm cần chú ý:
⁻ Hiểu rõ các đặc trưng của mô hình Client/Server
⁻ Trình bày cú pháp và công dụng của các phát biểu T­SQL: tạo CSDL, tạo 
user
⁻ Sử dụng các ràng buộc dữ liệu: Check, primary 
⁻ Trình bày cú pháp ngôn ngữ lập trình SQL để định nghĩa được các hàm
⁻ Thực hiện nguyên lý quản lý giao tác, cơ chế an toàn dữ liệu
⁻ Thiết lập cấu hình và giải quyết các vấn đề thường xảy ra trên mạng khi  
sử dụng truy cập cơ sở dữ liệu.
⁻ Sao   lưu   và   phục   hồi  đồng  thời  lập   được   lịch   sao   lưu  tự   động   trong  
HQTCSDL SQL Server 
⁻ Giới thiệu các lỗi thường gặp và cách khắc phục.

12
⁻ Đảm bảo các biện pháp an toàn cho máy tính, vệ sinh công nghiệp.

4. Tài liệu tham khảo:

[1]   Database   Management   System,   simply   easy   learning,   2015   (free   book) 
https://www.tutorialspoint.com/dbms/  
[2] Beginning Microsoft SQL Server 2012 Programming, Paul Atkinson, Robert 
Vieira, All Rights Reserved A Division of John Wiley & Sons, Inc, 2012. 
[3].  Bài  tập  và  bài  giải  tham  khảo  SQL  Server   7.0/  Nguyễn  Gia  Tuấn  Anh,  
Trương Châu Long. NXB Thanh niên, 2003.

13
BÀI 1:TỔNG QUAN VỀ MÔ HÌNH CLIENT/SERVER
Mã bài: 15.1

Giới thiệu:

SQL là một hệ quản trị CSDL nhiều người dùng kiểu Client/Server. Đây  
là hệ  thống cơ  bản dùng lưu trữ  dữ  liệu cho hầu hết các  ứng dụng lớn hiện 
nay. Mô hình Client/Server trên SQL được sử  dụng để  điều khiển tất cả  các  
chức năng mà một hệ  quản trị  CSDL cung  cấp cho người dùng các khả  năng: 
định nghĩa dữ liệu, truy xuất và thao tác dữ liệu, điều khiển truy cập, đảm bảo  
toàn vẹn dữ liệu.
Mục tiêu:
­ Hiểu rõ  mô hình cơ sở dữ liệu Client/Server
­ Nắm vững các đặc trưng của mô hình Client/Server
­ Nghiêm túc, tự giác trong học tập
Nội dung chính:
1. Các kiến thức tổng quan về cơ sở dữ liệu
1.1. Mô hình dữ liệu quan hệ

Mô hình dữ liệu quan hệ được Codd đề  xuất năm 1970 và đến nay trở 
thành mô hình được sử  dụng phổ  biến trong các hệ  quản trị  cơ  sở  dữ  liệu thương  
mại. Nói một cách đơn giản, một cơ sở dữ liệu quan hệ là một cơ sở dữ liệu trong đó tất  
cả dữ liệu được tổ chức trong các bảng có mối quan hệ  với nhau. Mỗi một bảng bao gồm  
các dòng và các cột: mỗi một dòng được gọi là một bản ghi (bộ) và mỗi một  
cột là một trường (thuộc tính).  
1.2. Bảng (Table)

Như đã nói ở trên, trong cơ sở dữ liệu quan hệ, bảng là đối tượng được  
sử  dụng để  tổ  chức và lưu trữ  dữ  liệu. Một cơ  sở  dữ  liệu bao gồm nhiều  
bảng và mỗi bảng được xác định duy nhất bởi tên bảng. Một bảng bao gồm  
một tập các dòng và các cột: mỗi một dòng trong bảng biểu diễn cho một 
thực thể.

14
Tên của bảng: được sử  dụng để  xác định duy nhất mỗi bảng trong cơ 
sở dữ liệu.  
Cấu trúc của bảng: Tập các cột trong bảng. Mỗi một cột trong bảng  
được  xác định bởi một tên cột và phải có một kiểu dữ  liệu nào đó. Kiểu 
dữ  liệu của mỗi cột qui định giá trị  dữ  liệu có thể  được chấp nhận trên  
cột đó.
Dữ liệu của bảng: Tập các dòng (bản ghi) hiện có trong bảng.

1.3. Khoá của bảng

Trong một cơ sở dữ liệu được thiết kế tốt, mỗi một bảng phải có một 
hoặc một tập các cột  mà giá trị  dữ  liệu của nó xác định duy nhất một dòng  
trong một tập các dòng của bảng. Tập một hoặc nhiều cột có tính chất này  
được gọi là khoá của bảng. Việc chọn khoá của bảng có vai trò quan trọng 
trong việc thiết kế  và cài đặt các  cơ  sở  dữ  liệu quan hệ. Các dòng dữ  liệu 
trong một bảng phải có giá trị khác nhau trên khoá.
Một bảng có thể  có nhiều tập các cột khác nhau có tính chất của khoá 
(tức là giá trị của nó xác định duy nhất một dòng dữ  liệu trong bảng). Trong 
trường hợp này, khoá được chọn cho bảng được gọi là khoá chính (primary 
key)   và   những   khoá   còn   lại   được   gọi   là   khoá   phụ   hay   là   khoá   dự   tuyển 
(candidate key/unique key).
1.4. Mối quan hệ và khoá ngoài

Các bảng trong một cơ  sở  dữ  liệu không tồn tại độc lập mà có mối 


quan hệ mật thiết với nhau về mặt dữ liệu. Mối quan hệ này được thể hiện 
thông qua ràng buộc giá trị  dữ liệu xuất hiện  ở  bảng này phải có xuất hiện  
trước trong một bảng khác. Mối quan hệ giữa các bảng trong cơ  sở dữ  liệu  
nhằm đàm bảo được tính đúng đắn và hợp lệ  của dữ  liệu trong cơ  sở  dữ 
liệu. Trong hình 1.1, hai bảng LOP và KHOA có mối quan hệ với nhau. Mối  
quan hệ này đòi hỏi giá trị cột MAKHOA của một dòng (tức là một lớp) trong  
bảng LOP phải được xác định từ cột MAKHOA của bảng KHOA.  

15
Hình 1.1: Mối quan hệ giữa hai bảng LOP và KHOA

Mối quan hệ  giữa các bảng trong một cơ  sở  dữ  liệu thể  hiện đúng mối 


quan hệ giữa các thực thể trong thế giới thực. Trong hình 1.3, mối quan hệ giữa 
hai bảng LOP và KHOA không cho phép một lớp nào đó tồn tại mà lại thuộc vào  
một khoa không có thật. Khái niệm khoá ngoài (Foreign Key) trong cơ sở dữ liệu  
quan hệ  được sử  dụng để  biểu diễn mối quan hệ  giữa các bảng dữ  liệu. Một  
hay một tập các cột trong một bảng mà giá trị  của nó được xác định từ  khóa 
chính của một bảng khác được gọi là khoá ngoài. Trong hình 1.1, cột MAKHOA 
của bảng LOP được gọi là khoá ngoài của bảng này, khoá ngoài này tham chiếu  
đến khoá chính của bảng KHOA là cột MAKHOA.
2. Các giai đoạn phát triển của một hệ quản trị cơ sở dữ liệu.

Những năm 1975­1976, IBM lần đầu tiên đưa ra hệ  quản trị  CSDL kiểu  


quan   hệ   mang   tên   SYSTEM­R   với   ngôn   ngữ   giao   tiếp   CSDL   là   SEQUEL 
(Structured   English  QUEry  Language),   đó  một  ngôn  ngữ  con   để   thao  tác  với 
CSDL.
16
Năm 1976 ngôn ngữ SEQUEL được cải tiến thành SEQUEL2. Khoảng năm 
1978­1979 SEQUEL2 được cải tiến và đổi tên thành Ngôn ngữ  truy vấn có cấu 
trúc (Structured Query Language ­ SQL) và cuối năm 1979 được cải tiến thành 
SYSTEM­R.
Năm 1986 Viện Tiêu Chuẩn Quốc Gia Mỹ  (American National Standards 
Institute ­ ANSI) đã công nhận và chuẩn hóa ngôn ngữ  SQL, và sau đó Tổ  chức  
Tiêu chuẩn Thế  giới (International Standards Organization ­ ISO) cũng đã công 
nhận ngôn ngữ này. Đó là chuẩn SQL­86.
Tới nay SQL đã qua 3 lần chuẩn hóa lại (1989, 1992, 1996) để mở rộng các  
phép toán và tăng cường khả năng bảo mật và tính toàn vẹn dữ liệu. 
Ngôn ngữ CSDL được cài đặt khác nhau đối tùy theo các hệ quản trị CSDL  
khác nhau, tuy nhiên đều phải theo một chuẩn (Standard) nhất định. Hiện nay, đa 
phần các ngôn ngữ truy vấn CSDL dựa trên chuẩn SQL­92.
3. Giới thiệu về  mô hình Client server và các hệ  quản trị  cơ  sở  dữ  liệu  
phục vụ cho mô hình Client/Server

SQL là một hệ quản trị CSDL nhiều người dùng kiểu Client/Server. Đây là 
hệ thống cơ  bản dùng lưu trữ  dữ  liệu cho hầu hết các ứng dụng lớn hiện nay.  
Mô hình Client/Server trên SQL được sử  dụng để  điều khiển tất cả  các chức 
năng mà một hệ quản trị CSDL cung cấp cho người dùng các khả năng:
⁻ Định nghĩa dữ liệu
⁻ Truy xuất và thao tác dữ liệu
⁻ Điều khiển truy cập
⁻ Đảm bảo toàn vẹn dữ liệu
4. Các đặc trưng của mô hình Client/server

Một  ứng dụng kiểu Client/Server bao gồm 2 phần: Một phần chạy trên 
Server (máy chủ) và phần khác chạy trên các Workstations (máy trạm).

17
Hình 1.2: Mô hình Client/Server trên SQL Server
Phần Server: (Máy chủ) chứa các CSDL, cung cấp các chức năng phục vụ 
cho việc tổ  chức và quản lý CSDL, cho phép nhiều người sử  dụng cùng truy  
cập dữ  liệu. Điều này không chỉ  tiết kiệm mà còn thể  hiện tính nhất quán về 
mặt dữ liệu. Tất cả dữ liệu đều được truy xuất thông qua server, không được  
truy xuất trực tiếp. Do đó, có độ  bảo mật cao, tính năng chịu lỗi, chạy đồng 
thời, sao lưu dự phòng…
Phần Client (Máy khách): Là các phần mềm chạy trên máy trạm cho phép 
người sử dụng giao tiếp CSDL trên Server.
Hệ thống máy tính Client/Server có 5 mô hình kiến trúc dựa trên cấu hình phân  
tán về truy nhập dữ liệu, gồm:
­ Mô hình CSDL tập trung (Centralized database model)
­ Mô hình CSDL theo kiểu file ­ server (File ­ server database model)
­ Mô hình xử lý từng phần CSDL (Database extract proceSQL Servering model)
­ Mô hình CSDL Client/Server (Client/Server database model)
­ Mô hình CSDL phân tán (Distributed database model)
5. Tổng quan về cấu trúc Client/Server

Một CSDL phải đảm bảo được  tính độc lập  giữa  dữ  liệu  và  chương  


trình ứng dụng. Vì vậy, trong mô hình CSDL Client/Server, hệ thống Server lưu  
trữ  CSDL  ở  trên máy A, thì hệ  thống Client chạy các chương trình  ứng dụng  
phải ở trên máy khác.
Trong mô hình này, các thành phần xử  lý  ứng dụng trên hệ  thống Client  
đưa ra yêu cầu cho phần mềm CSDL trên máy Client, phần mềm này sẽ  kết  

18

You might also like