Giáo trình môn đun Hệ quản trị cơ sở dữ liệu

UỶ BAN NHÂN DÂN TỈNH HẢI PHÒNG  
TRƯỜNG CĐCN HẢI PHÒNG  
GIÁO TRÌNH  
Tên môn đun: Hệ quản trị cơ sở dữ liệu  
Hải Phòng , năm 2019  
1
Vị trí, tính chất của mô đun:  
- Vị trí: Là môn đun kỹ thuật chuyên ngành. Môn đun có thể được bố trí  
học sau môn cơ sở.  
- Tính chất: Là mô đun chuyên môn nghề giúp sinh viên có kiến thức cơ  
sở về hệ quản trị CSDL MS SQL server.  
Mục tiêu mô đun:  
- Về kiến thức:  
+ Trình bày được mô hình dữ liệu Client/Server;  
+ Trình bày được phương pháp xây dựng các đối tượng hỗ trợ xử lý dữ liệu.  
- Về kỹ năng:  
+ Cài đặt hệ QTCSDL SQL Server trên môi trường Windows;  
+ Tạo lập CSDL, thiết lập quan hệ giữa các bảng ( xây dựng biểu đồ ER);  
+ Thực hiện các thao tác xử lý dữ liệu ( bổ xung, xoá, hiệu chỉnh dữ liệu, tạo  
và thực hiện Views);  
+ Xây dựng các đối tượng hỗ trợ xử lý dữ liệu (thủ tục lưu trữ, Trigger,..).  
- Về năng lực tự chủ và trách nhiệm:  
+ Tự chủ và độc lập trong công việc xử lý các vấn đề liên quan;  
+ Đảm bảo các hoạt động diễn ra trong an toàn lao động.  
Nội dung mô đun:  
Số TT  
Tên Bài/mục  
I.  
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: SQL Server Management Studio  
II.  
III.  
IV.  
V.  
Bài 4: Quản lý bảo mật trong SQL Server  
Bài 5: Truy vấn dữ liệu trong MS SQL Server  
Thực hành tổng hợp  
VI.  
2
MỤC LỤC  
3
TUYÊN BỐ BẢN QUYỀN  
Tài liệu này thuộc loại sách giáo trình 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  
‘‘Quản trị CSDL với SQL Server” là môn học bắt buộc trong các trường  
nghề. Tuỳ thuộc vào đối tượng người học và cấp bậc học mà trang bị cho học sinh,  
sinh viên những kiến thức cơ bản nhất.  
Để thống nhất chương trình và nội dung giảng dạy trong các nhà trường  
chúng tôi biên soạn cuốn giáo trình: Quản trị CSDL với SQL Server. Giáo trình  
được biên soạn phù hợp với các nghề trong các trường đào tạo nghề phục vụ theo  
yêu cầu của thực tế xã hội hiện nay.  
Tài liệu tham khảo để biên soạn gồm:  
- Giáo trình SQL Server 2008 hướng dẫn học qua ví dụ, Nhà xuất bản Khoa  
học kỹ thuật năm 2010.  
- Giáo trình SQL, Nhà xuất bản Đại học Huế năm 2004.  
- Quản trị CSDL SQL Server 2008, Nhà xuất bản lao động xã hội năm 2010.  
- Giáo trình thực hành công nghệ thông tin 2, Nhà xuất bản Khoa học kỹ  
thuật năm 2014.  
Kết hợp với kiến thức mới có liên quan môn học và những vấn đề thực tế  
thường gặp trong sản xuất, đời sống để giáo trình có tính thực tế cao, giúp cho  
người học dễ hiểu, dễ dàng lĩnh hội được kiến thức môn học.  
Trong quá trình biên soạn giáo trình kinh nghiệm còn hạn chế, chúng tôi  
rất mong nhận được ý kiến đóng góp của bạn đọc để lần hiệu đính sau được hoàn  
chỉnh hơn.  
Tổ bộ môn Ứng dụng máy tính  
5
PHẦN 1: KIẾN THỨC TỔNG QUAN SQL SERVER  
BÀI 1: TỔNG QUAN VỀ MÔ HÌNH CLIENT/ SERVER  
Mục tiêu:  
- Tiếp cận với mô hình cơ sở dữ liệu Client / Server  
- Các đặc trưng của mô hình Client / Server  
- Phân tích được các tầng cấu trúc của mô hình Client/Server.  
- Phân biệt được các mô hình CSDL  
1.1 Các kiến thức tổng quan về CSDL  
Một hệ CSDL (DB system) bao gồm một CSDL (Database) và một hệ quản  
trị CSDL (DBMS)  
CSDL (CSDL) là một tập hợp dữ liệu được tổ chức và lưu trữ theo một cấu  
trúc chặt chẽ nhằm phục vụ nhiều đối tượng sử dụng với nhiều mục đích khác  
nhau.  
Hệ quản trị CSDL (Database Management System - DBMS) là một công cụ  
phần mềm tổng quát nhằm hỗ trợ việc lưu trữ, truy xuất và quản trị CSDL. Nó  
cung cấp cho người dùng và ứng dụng một môi trường thuận tiện và sử dụng hiệu  
quả tài nguyên dữ liệu. Nói cách khác, Hệ quản trị CSDL là phần mềm chuyên  
dụng để giải quyết tốt các tình huống mà CSDL đặt ra như: bảo mật, cạnh tranh  
trong truy xuất.  
6
     
1.2 Các giai đoạn phát triển của một hệ quản trị CSDL.  
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.  
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.  
1.3 Giới thiệu về mô hình Client/ Server  
Mô hình client-server là một mô hình nổi tiếng trong mạng máy tính, được áp  
dụng rất rộng rãi và là mô hình của mọi trang web hiện có. Ý tưởng của mô hình  
này là máy con (đóng vài trò là máy khách) gửi một yêu cầu (request) để máy chủ  
(đóng vai trò người cung ứng dịch vụ), máy chủ sẽ xử lý và trả kết quả về cho  
máy khách.  
Một mô hình ngược lại là mô hình master-slaver, trong đó máy chủ (đóng vai trò  
ông chủ) sẽ gửi dữ liệu đến máy con (đóng vai trò nô lệ) bất kể máy con có cần  
hay không.  
7
   
Mô hình Web client/server :  
Thuật ngữ server được dùng cho những chương trình thi hành như một dịch vụ  
trên toàn mạng. Các chương trình server này chấp nhận tất cả các yêu cầu hợp lệ  
đến từ mọi nơi trên mạng, sau đó nó thi hành dịch vụ và trả kết quả về máy yêu  
cầu. Một chương trình được coi là client khi nó gửi các yêu cầu tới máy có chương  
trình server và chờ đợi câu trả lời từ server. Chương trình server và client nói  
chuyện với nhau bằng các thông điệp (messages) thông qua một cổng truyền thông  
liên tác IPC (Interprocess Communication).  
Để một chương trình server và một chương trình client có thể giao tiếp được với  
nhau thì giữa chúng phải có một chuẩn để nói chuyện, chuẩn này được gọi là giao  
thức. Nếu một chương trình client nào đó muốn yêu cầu lấy thông tin từ server thì  
nó phải tuân theo giao thức mà server đó đưa ra. Bản thân chúng ta khi cần xây  
dựng một mô hình client/server cụ thể thì ta cũng có thể tự tạo ra một giao thức  
riêng nhưng thường chúng ta chỉ làm được điều này ở tầng ứng dụng của mạng.  
Với sự phát triển mạng như hiện này thì có rất nhiều giao thức chuẩn trên mạng  
ra đời nhằm đáp ứng nhu cầu phát triển này.  
Các giao thức chuẩn (ở tầng mạng và vận chuyển) được sử dụng rộng rãi nhất  
hiện nay như: giao thức TCP/IP, giao thức SNA của IBM, OSI, ISDN, X.25 hoặc  
giao thức LAN-to-LAN NetBIOS. Một máy tính chứa chương trình server được  
coi là một máy chủ hay máy phục vụ (server) và máy chứa chương trình client  
được coi là máy tớ (client). Mô hình mạng trên đó có các máy chủ và máy tớ giao  
tiếp với nhau theo 1 hoặc nhiều dịch vụ được gọi là mô hình client/server.  
Thực tế thì mô hình client/server là sự mở rộng tự nhiên và tiện lợi cho việc  
truyền thông liên tiến trình trên các máy tính cá nhân. Mô hình này cho phép xây  
dựng các chương trình client/server một cách dễ dàng và sử dụng chúng để liên  
tác với nhau để đạt hiệu quả hơn.  
Mô hình client/server như sau: Client/Server là mô hình tổng quát nhất, trên thực  
tế thì một server có thể được nối tới nhiều server khác nhằm làm việc hiệu quả và  
nhanh hơn. Khi nhận được 1 yêu cầu từ client, server này có thể gửi tiếp yêu cầu  
8
vừa nhận được cho server khác ví dụ như database server vì bản thân nó không  
thể xử lý yêu cầu này được. Máy server có thể thi hành các nhiệm vụ đơn giản  
hoặc phức tạp.  
Ví dụ như một máy chủ trả lời thời gian hiện tại trong ngày, khi một máy client  
yêu cầu lấy thông tin về thời gian nó sẽ phải gửi một yêu cầu theo một tiêu chuẩn  
do server định ra, nếu yêu cầu được chấp nhận thì máy server sẽ trả về thông tin  
mà client yêu cầu. Có rất nhiều các dịch vụ server trên mạng nhưng nó đều hoạt  
động theo nguyên lý là nhận các yêu cầu từ client sau đó xử lý và trả kết quả cho  
client yêu cầu. Thông thường chương trình server và client được thi hành trên hai  
máy khác nhau. Cho dù lúc nào server cũng ở trạng thái sẵn sàng chờ nhận yêu  
cầu từ client nhưng trên thực tế một tiến trình liên tác qua lại (interaction) giữa  
client và server lại bắt đầu ở phía client, khi mà client gửi tín hiệu yêu cầu tới  
server. Các chương trình server thường đều thi hành ở mức ứng dụng (tầng ứng  
dụng của mạng).  
Sự thuận lợi của phương pháp này là nó có thể làm việc trên bất cứ một mạng máy  
tính nào có hỗ trợ giao thức truyền thông chuẩn cụ thể ở đây là giao thức TCP/IP.  
Với các giao thức chuẩn này cũng giúp cho các nhà sản xuất có thể tích hợp nhiều  
sản phẩm khác nhau của họ lên mạng mà không gặp phải khó khăn gì. Với các  
chuẩn này thì các chương trình server cho một dịch vụ nào đấy có thể thi hành  
trên một hệ thống chia sẻ thời gian (timesharing system) với nhiều chương trình  
và dịch vụ khác hoặc nó có thể chạy trên chính một máy tính các nhân bình thường.  
Có thể có nhiều chương server cùng làm một dịch vụ, chúng có thể nằm trên nhiều  
máy tính hoặc một máy tính.  
Với mô hình trên chúng ta nhận thấy rằng mô hình client/server chỉ mang đặc  
điểm của phần mềm không liên quan gì đến phần cứng mặc dù trên thực tế yêu  
cầu cho một máy server là cao hơn nhiều so với máy client. Lý do là bởi vì máy  
server phải quản lý rất nhiều các yêu cầu từ các clients khác nhau trên mạng. Ưu  
và nhược điểm chính Có thể nói rằng với mô hình client/server thì mọi thứ dường  
như đều nằm trên bàn của người sử dụng, nó có thể truy cập dữ liệu từ xa (bao  
9
gồm các công việc như gửi và nhận file, tìm kiếm thông tin, ...) với nhiều dịch vụ  
đa dạng mà mô hình cũ không thể làm được.  
Mô hình client/server cung cấp một nền tảng lý tưởng cho phép tích hợp các kỹ  
thuật hiện đại như mô hình thiết kế hướng đối tượng, hệ chuyên gia, hệ thông tin  
địa lý (GIS) ... Một trong những vấn đề nảy sinh trong mô hình này đó là tính an  
toàn và bảo mật thông tin trên mạng. Do phải trao đổi dữ liệu giữa 2 máy ở 2 khu  
vực khác nhau cho nên dễ dàng xảy ra hiện tượng thông tin truyền trên mạng bị  
lộ.  
Client Trong mô hình client/server, người ta còn định nghĩa cụ thể cho một máy  
client là một máy trạm mà chỉ được sử dụng bởi 1 người dùng với để muốn thể  
hiện tính độc lập cho nó. Máy client có thể sử dụng các hệ điều hành bình thường  
như Win9x, DOS, OS/2... Bản thân mỗi một client cũng đã được tích hợp nhiều  
chức năng trên hệ điều hành mà nó chạy, nhưng khi được nối vào một mạng LAN,  
WAN theo mô hình client/server thì nó còn có thể sử dụng thêm các chức năng  
do hệ điều hành mạng (NOS) cung cấp với nhiều dịch vụ khác nhau (cụ thể là các  
dịch vụ do các server trên mạng này cung cấp), ví dụ như nó có thể yêu cầu lấy  
dữ liệu từ một server hay gửi dữ liệu lên server đó...  
Thực tế trong các ứng dụng của mô hình client/server, các chức năng hoạt động  
chính là sự kết hợp giữa client và server với sự chia sẻ tài nguyên, dữ liệu trên cả  
2 máy Vai trò của client Trong mô hình client/server, client được coi như là người  
sử dụng các dịch vụ trên mạng do một hoặc nhiều máy chủ cung cấp và server  
được coi như là người cung cấp dịch vụ để trả lời các yêu cầu của các clients.  
Điều quan trọng là phải hiểu được vai trò hoạt động của nó trong một mô hình cụ  
thể, một máy client trong mô hình này lại có thể là server trong một mô hình khác.  
Ví dụ cụ thể như một máy trạm làm việc như một client bình thường trong mạng  
LAN nhưng đồng thời nó có thể đóng vai trò như một máy in chủ (printer server)  
cung cấp dịch vụ in ấn từ xa cho nhiều người khác (clients) sử dụng. Client được  
hiểu như là bề nổi của các dịch vụ trên mạng, nếu có thông tin vào hoặc ra thì  
chúng sẽ được hiển thị trên máy client.  
10  
Server Server còn được định nghĩa như là một máy tính nhiều người sử dụng  
(multiuser computer). Vì một server phải quản lý nhiều yêu cầu từ các client trên  
mạng cho nên nó hoạt động sẽ tốt hơn nếu hệ điều hành của nó là đa nhiệm với  
các tính năng hoạt động độc lập song song với nhau như hệ điều hành UNIX,  
WINDOWS... Server cung cấp và điều khiển các tiến trình truy cập vào tài nguyên  
của hệ thống. Các ứng dụng chạy trên server phải được tách rời nhau để một lỗi  
của ứng dụng này không làm hỏng ứng dụng khác.  
Tính đa nhiệm đảm bảo một tiến trình không sử dụng toàn bộ tài nguyên hệ thống.  
Vai trò của server. Như chúng ta đã bàn ở trên, server như là một nhà cung cấp  
dịch vụ cho các clients yêu cầu tới khi cần, các dịch vụ như cơ sở dữ liệu, in ấn,  
truyền file, hệ thống... Các ứng dụng server cung cấp các dịch vụ mang tính chức  
năng để hỗ trợ cho các hoạt động trên các máy clients có hiệu quả hơn. Sự hỗ trợ  
của các dịch vụ này có thể là toàn bộ hoặc chỉ một phần thông qua IPC.  
Để đảm bảo tính an toàn trên mạng cho nên server này còn có vai trò như là một  
nhà quản lý toàn bộ quyền truy cập dữ liệu của các máy clients, nói cách khác đó  
là vai trò quản trị mạng. Có rất nhiều cách thức hiện nay nhằm quản trị có hiệu  
quả, một trong những cách đang được sử dụng đó là dùng tên Login và mật khẩu  
Các cấu hình cơ sở dữ liệu Client/Server  
Nhìn chung mọi ứng dụng cơ sở dữ liệu đều bao gồm các phần:  
- Thành phần xử lý ứng dụng (Application processing components)  
- Thành phần phần mềm cơ sở dữ liệu (Database software componets)  
- Bản thân cơ sở dữ liệu (The database itself)  
Các mô hình về xử lý cơ sở dữ liệu khác nhau là bởi các trường hợp của 3  
loại thành phần nói trên định vị ở đâu. Hiện 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 của hệ thống máy tính Client/Server.  
- Mô hình cơ sở dữ liệu tập trung (Centralized database model)  
- Mô hình cơ sở dữ liệu theo kiểu file - server (File - server database model)  
- Mô hình xử lý từng phần cơ sở dữ liệu (Database extract processing model)  
- Mô hình cơ sở dữ liệu Client/Server (Client/Server database model)  
11  
- Mô hình cơ sở dữ liệu phân tán (Distributed database model)  
1.4 Các đặc trưng của mô hình Client/server  
Mô hình Client/ Server, mà cụ thể trong module này chúng ta sẽ tìm hiểu về mô  
hình của hệ quản trị cơ sở dữ liệu SQL. 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 bao gồm:  
- Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa cá cơ sở dữ liệu,  
các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các  
thành phần dữ liệu.  
- Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực  
hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các  
CSDL.  
- Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát  
các thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho  
CSDL.  
- Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong  
CSDL nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao  
tác cập nhật cũng như các lỗi của hệ thống.  
Như vậy, SQL là một ngôn ngữ hoàn thiện được sử dụng trong các hệ thống  
cơ sở dữ liệu và là một thành phàn không thể thiếu trong các hệ quản trị cơ  
sở dữ liệu. Mặc dù SQL không phải một ngôn ngữ lập trình như C, Java…  
song các câu lệnh mà SQL cung cấp có thể nhúng vào trong các ngôn ngữ lập  
trình nhằm xây dựng các ứng dụng tương tác với CSDL.  
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).  
12  
 
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 nối với  
phần mềm CSDL chạy trên Server. Phần mềm CSDL trên Server sẽ truy nhập vào  
CSDL và gửi trả kết quả cho máy Client.  
1.5 Các tầng cấu trúc  
Theo kiến trúc ANSI-PARC, một CSDL có 3 mức biểu diễn:  
a. Mô hình dữ liệu mức thấp (Mức vật lý hay mức trong)  
Đưa ra các khái niệm mô tả chi tiết về cách thức dữ liệu được lưu trữ trong  
máy tính nên còn được gọi là mức lưu trữ CSDL.  
Tại mức này, vấn đề cần giải quyết là, dữ liệu gì và được lưu trữ như thế nào, lưu  
ở đâu (đĩa từ, băng từ, track, sector)? Cần các chỉ mục gì? Việc truy xuất là tuần  
tự (Sequential AcceSQL Server) hay ngẫu nhiên (Random AcceSQL Server) đối  
với từng loại dữ liệu.  
Những người hiểu và làm việc với CSDL tại mức này là người quản trị CSDL  
(Administrator), những người sử dụng (NSD) chuyên môn.  
Ví dụ : Mô hình quan hệ, mô hình mạng, mô hình phân cấp.  
b.Mô hình dữ liệu mức cao (Mức quan niệm)  
Cung cấp các khái niệm gần gũi với người dùng. Mô hình tự nhiên và giàu  
ngữ nghĩa.  
Tại mức này sẽ giải quyết cho câu hỏi CSDL cần phải lưu giữ bao nhiêu loại dữ  
liệu? Đó là những dữ liệu gì? Mối quan hệ giữa các loại dữ liệu này như thế nào?  
Từ thế giới thực các chuyên viên tin học qua quá trình khảo sát và phân tích, cùng  
với những người sẽ đảm nhận vai trò quản trị CSDL, sẽ xác định được những loại  
thông tin gì được cho là cần thiết phải đưa vào CSDL, đồng thời mô tả rõ mối liên  
13  
 
hệ giữa các thông tin này. Có thể nói cách khác, CSDL mức quan niệm là một sự  
biểu diễn trừu tượng CSDL mức vật lý; hoặc ngược lại, CSDL vật lý là sự cài đặt  
cụ thể của CSDL mức quan niệm.  
Ví dụ : Mô hình thực thể kết hợp (ERD), mô hình đối tượng.  
c. Mô hình dữ liệu mức thực hiện  
Đưa ra các khái niệm người dùng có thể hiểu được nhưng không nằm quá  
xa với dữ liệu được tổ chức thực sự trên máy. Đây là mức của người sử dụng và  
các chương trình ứng dụng. Mỗi người sử dụng hay mỗi chương trình ứng dụng  
có thể được "nhìn" (View) CSDL theo một góc độ khác nhau. Có thể "nhìn" thấy  
toàn bộ hay chỉ một phần hoặc chỉ là các thông tin tổng hợp từ CSDL hiện có.  
Người sử dụng hay chương trình ứng dụng có thể hoàn toàn không được biết về  
cấu trúc tổ chức lưu trữ thông tin trong CSDL, thậm chí ngay cả tên gọi của các  
loại dữ liệu hay tên gọi của các thuộc tính. 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 (View).  
1.6 Các mô hình dữ liệu của hệ thống Client/Server  
a. Mô hình CSDL tập trung (Centralized database model)  
Trong mô hình này, các thành phần xử lý ứng dụng, phần mềm CSDL và bản thân  
CSDL đều ở trên một bộ xử lý.  
Ví dụ Người dùng máy tính cá nhân có thể chạy các chương trình ứng dụng có sử  
dụng phần mềm CSDL Oracle để truy nhập tới CSDL nằm trên đĩa cứng của máy  
tính cá nhân đó. Từ khi các thành phần ứng dụng, phần mềm CSDL và bản thân  
CSDL cùng nằm trên một máy tính thì ứng dụng đã thích hợp với mô hình tập  
trung.  
Hầu hết công việc xử lý luồng thông tin chính được thực hiện bởi nhiều tổ chức  
mà vẫn phù hợp với mô hình tập trung. Ví dụ một bộ xử lý mainframe chạy phần  
mềm CSDL IMS hoặc DB2 của IBM có thể cung cấp cho các trạm làm việc ở các  
14  
 
vị trí phân tán sự truy nhập nhanh chóng tới CSDL trung tâm. Tuy nhiên trong rất  
nhiều hệ thống như vậy, cả 3 thành phần của ứng dụng CSDL đều thực hiện trên  
cùng một máy mainframe do vậy cấu hình này cũng thích hợp với mô hình tập  
trung.  
b. Mô hình CSDL theo kiểu file - server (File - server databasemodel)  
Trong mô hình CSDL theo kiểu file - server các thành phần ứng dụng và phần  
mềm CSDL ở trên một hệ thống máy tính và các file vật lý tạo nên CSDL nằm  
trên hệ thống máy tính khác. Một cấu hình như vậy thường được dùng trong môi  
trường cục bộ, trong đó một hoặc nhiều hệ thống máy tính đóng vai trò của server,  
lưu trữ các file dữ liệu cho hệ thống máy tính khác thâm nhập tới. Trong môi  
trường file - server, phần mềm mạng được thi hành và làm cho các phần mềm ứng  
dụng cũng như phần mềm CSDL chạy trên hệ thống của người dùng cuối coi các  
file hoặc CSDL trên file server thực sự như là trên máy tính của người chính họ.  
Mô hình file server rất giống với mô hình tập trung. Các file CSDL nằm trên máy  
khác với các thành phần ứng dụng và phần mềm CSDL; tuy nhiên các thành phần  
ứng dụng và phần mềm CSDL có thể có cùng thiết kế để vận hành một môi trường  
tập trung.  
c. Mô hình xử lý từng phần CSDL (Database extract proceSQL Servering  
model)  
Một CSDL ở xa có thể được truy nhập bởi phần mềm CSDL, được gọi là xử lý  
dữ liệu từng phần. Với mô hình này, người sử dụng có thể tại một máy tính cá  
nhân kết nối với hệ thống máy tính ở xa nơi có dữ liệu mong muốn. Người sử  
dụng có thể tác động trực tiếp đến phần mềm chạy trên máy ở xa và tạo yêu cầu  
để lấy dữ liệu từ CSDL đó. Người sử dụng cũng có thể chuyển dữ liệu từ máy tính  
ở xa về chính máy tính của mình và vào đĩa cứng và có thể thực hiện việc sao  
chép bằng phần mềm CSDL trên máy cá nhân.  
Với cách tiếp cận này, người sử dụng phải biết chắc chắn là dữ liệu nằm ở đâu và  
làm như thế nào để truy nhập và lấy dữ liệu từ một máy tính ở xa. Phần mềm ứng  
dụng đi kèm cần phải có trên cả hai hệ thống máy tính để kiểm soát sự truy nhập  
15  
dữ liệu và chuyển dữ liệu giữa hai hệ thống. Tuy nhiên, phần mềm CSDL chạy  
trên hai máy không cần biết rằng việc xử lý CSDL từ xa đang diễn ra vì người sử  
dụng tác động tới chúng một cách độc lập.  
d. Mô hinh CSDL Client/Server (Client/Server database model)  
Mô hình CSDL Client/Server gần giống như mô hình file - server, tuy nhiên mô  
hình Client/Server có rất nhiều thuận lợi hơn mô hình file - server.  
Xét ví dụ sau đây: Một người dùng cuối muốn tạo ra một vấn tin để lấy dữ liệu  
tổng số, yêu cầu đòi hỏi lấy dữ liệu từ 1000 bản ghi.  
Với cách tiếp cận File-Server nội dung của tất cả 1000 bản ghi phải đưa lên mạng,  
vì phần mềm CSDL chạy trên máy của người sử dụng phải truy nhập từng bản ghi  
để thoả mãn yêu cầu của người sử dụng.  
Với cách tiếp cận CSDL Client/Server, chỉ có lời vấn tin khởi động ban đầu và  
kết quả cuối cùng cần đưa lên mạng. Phần mềm CSDL chạy trên máy lưu giữ  
CSDL sẽ truy nhập các bản ghi cần thiết, xử lý chúng và gọi các thủ tục cần thiết  
để đưa ra kết quả cuối cùng.  
Front-end software  
Trong mô hình CSDL Client/Server, thường nói đến các phần mềm front-end  
software và back-end software. Front-end software được chạy trên một máy tính  
cá nhân hoặc một workstation và đáp ứng các yêu cầu đơn lẻ riêng biệt, phần mềm  
này đóng vai trò của Client trong ứng dụng CSDL Client/Server và thực hiện các  
chức năng hướng tới nhu cầu của người dùng cuối cùng, phần mềm Front-end  
software thường được chia thành các loại sau:  
-
End user database software: Được thực hiện bởi người sử dụng cuối trên  
chính hệ thống của họ để truy nhập các CSDL cục bộ nhỏ cũng như kết  
nối với các CSDL lớn hơn trên CSDL Server.  
-
Simple query and reporting software: Được thiết kế để cung cấp các công  
cụ dễ dùng hơn trong việc lấy dữ liệu từ CSDL và tạo các báo cáo đơn giản từ  
dữ liệu đã có.  
-
Data analysis software: Cung cấp các hàm về tìm kiếm, khôi phục, chúng  
16  
có thể cung cấp các phân tích phức tạp cho người dùng.  
Application development tools: Cung cấp các khả năng về ngôn ngữ mà  
-
các nhân viên hệ thống thông tin chuyên nghiệp sử dụng để xây dựng các ứng  
dụng CSDL.  
-
Database administration Tools: Các công cụ này cho phép người quản trị  
CSDL sử dụng máy tính cá nhân hoặc trạm làm việc để thực hiện việc quản  
trị CSDL như định nghĩa các CSDL, thực hiện lưu trữ hay phục hồi.  
Back-end software  
Phần mềm này bao gồm phần mềm CSDL Client/Server và phần mềm mạng chạy  
trên máy đóng vai trò là Server CSDL.  
e. Mô hình CSDL phân tán (Distributed database model)  
Cả hai mô hình File - Server và Client/Server đều giả định là dữ liệu nằm trên một  
bộ xử lý và chương trình ứng dụng truy nhập dữ liệu nằm trên một bộ xử lý khác,  
còn mô hình CSDL phân tán lại giả định bản thân CSDL có ở trên nhiều máy khác  
nhau.  
17  
BÀI 2: TỔNG QUAN VỀ HQTCSDL SQL SERVER  
Mục tiêu:  
- Trình bày lịch sử phát triển của hệ quản trị CSDL MS SQL Server  
- Cài đặt được phần mềm hệ quản trị CSDL MS SQL Server  
- Sử dụng được các công cụ hỗ trợ của hệ quản trị CSDL MS SQL Server  
Giới thiệu:  
Dữ liệu ngày càng đóng vai trò quan trọng trong thế giới ngày nay. Dùng  
SQL server 2008 để giảm sự phức tạp của cơ sở hạ tầng. Đồng thời vẫn đảm bảo  
cung cấp một nền tảng dữ liệu có khả năng bảo mật, mở rộng và quản lý cho doanh  
nghiệp.  
2.1 Giới thiệu hệ quản trị CSDL MS SQL Server  
SQL viết tắt của Structured Query Language (ngôn ngữ truy vấn có  
cấu trúc), là công cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc  
lưu trữ trong các CSDL. SQL là một hệ thống ngôn ngữ bao gồm tập các  
câu lệnh sử dụng để tương tác với CSDL quan hệ.  
Ngôn ngữ truy vấn có cấu trúc và các hệ quản trị CSDL quan hệ là một  
trong những nền tảng kỹ thuật quan trọng trong công nghiệp máy tính.  
Hiện nay SQL được xem là ngôn ngữ chuẩn trong CSDL. Các hệ quản  
trị CSDL quan hệ thương mại hiện có như Oracle, SQL Server,  
Informix, DB2,... đều chọn SQL làm ngôn ngữ cho sản phẩm của mình.  
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  
SQL được sử dụng để điều  
lớn hiện nay. Mô hình Client/Server trên  
khiển tất cả các chức năng mà một hệ quản trị CSDL cung  
dùng các khả năng:  
cấp cho người  
•
Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các CSDL,  
các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các  
thành phần dữ liệu.  
18  
   
•
Truy xuất và thao tác dữ liệu: Người dùng có thể dễ dàng thực hiện  
các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các  
CSDL.  
•
Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm  
soát các thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho  
CSDL  
•
Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn  
trong CSDL nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các  
thao tác cập nhật cũng như các lỗi của hệ thống.  
SQL Server sử dụng ngôn ngữ lập trình và truy vấn CSDL Transact-  
SQL (T-SQL), một phiên bản của Structured Query Language. Ngôn ngữ  
lập trình và truy vấn T-SQL cho phép truy xuất dữ liệu, cập nhật và quản  
lý hệ thống CSDL quan hệ. Mỗi máy chủ chỉ có một hệ quản trị CSDL  
SQL Server.  
2.2 Những đặc điểm mới của SQL server 2008  
Nền tảng cho các nhiệm vụ then chốt - SQL Server 2008 cho phép các  
ứng dụng phức tạp có thể chạy trên một nền tảng an toàn, tin cậy và có khả năng  
mở rộng. Bên cạnh đó còn giảm được sự phức tạp trong việc quản lý cơ sở hạ tầng  
dữ liệu. SQL Server 2008 bảo đảm những thông tin có giá trị trong các ứng dụng  
đang tồn tại và nâng cao khả năng sẵn có của dữ liệu. SQL Server 2008 có cơ chế  
quản lý cách tân dựa trên có chế cho phép các chính sách có thể được định nghĩa  
quản trị tự động cho các thực thể máy chủ trên một hoặc nhiều máy chủ.  
Sự phát triển động - SQL Server 2008 cùng với .NET Framework đã giảm  
được sự phức tạp trong việc phát triển các ứng dụng mới. ADO.NET Entity  
Framework có thể nâng cao năng suất bằng cách làm việc với các thực thể dữ liệu  
logic. Thay vì lập trình trực tiếp với các bảng và cột như trước đây. Các mở rộng  
của ngôn ngữ truy vấn mới trong .NET Framework giúp các chuyên gia phát triển  
truy vấn dữ liệu bằng việc mở rộng Visual C#® và Visual Basic® .NET. Việc này  
để hỗ trợ cú pháp truy vấn giống SQL vốn đã có. Hỗ trợ cho các hệ thống kết nối,  
cho phép chuyên gia phát triển xây dựng các ứng dụng. Các ứng dụng này cho  
19  
 
phép người dùng mang dữ liệu cùng với nó vào các thiết bị và sau đó đồng bộ dữ  
liệu của chúng với máy chủ trung tâm.  
Dữ liệu quan hệ mở rộng - SQL Server 2008 cho phép làm việc với bất  
kỳ kiểu dữ liệu nào, từ các kiểu dữ liệu truyền thống đến dữ liệu không gian địa  
lý mới.  
Thông tin trong toàn bộ doanh nghiệp - SQL Server 2008 cung cấp một  
cơ sở hạ tầng có thể mở rộng, cho phép quản lý các báo cáo, phân tích với bất kỳ  
kích thước và sự phức tạp nào. Nó còn cho phép người dùng dễ dàng hơn trong  
việc truy cập thông tin thông qua sự tích hợp sâu hơn với Microsoft Office. Điều  
này cho phép CNTT đưa được thông tin của doanh nghiệp rộng khắp trong tổ  
chức…  
Hình 1.1 Toàn cảnh nền dữ liệu của Microsoft  
20  
Tải về để xem bản đầy đủ
pdf 155 trang yennguyen 14901 Free
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình môn đun Hệ quản trị cơ sở dữ liệu", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfgiao_trinh_mon_dun_he_quan_tri_co_so_du_lieu.pdf