Giáo trình Mô hình Client Server trên SQL Server

MỤC LỤC

ĐỀ MỤC TRANG

1. LỜI TỰA . 3

2. MỤC LỤC . 4

3. GIỚI THIỆU VỀ MÔN HỌC . 6

4. CÁC HÌNH THỨC HỌC TẬP CHÍNH TRONG MÔN HỌC . 9

Bài 1: TỔNG QUAN VỀ MÔ HÌNH Client/Server . 10

1.1 Các kiến thức tổng quan về cơ sở dữ liệu. . 11

1.2 Các giai đoạn phát triển của một hệ quản trị cơ sở dữ liệu. . 11

1.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. . 11

1.4 Các đặc trưng của mô hình Client/server . 12

BÀI 2: CẤU HÌNH CƠ SƠ DỮ LIỆU CLIENT/SERVER . 13

2.1 Tổng quan về cấu trúc Client/Server . 14

2.2 Các tầng cấu trúc . 14

2.3 Các mô hình dữ liệu của hệ thống Client/Server . 15

BÀI 3: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU SQL SERVER . 19

3.1 Giới thiệu hệ quản trị cơ sở dữ liệu SQL Server. . 20

3.2 Cài đặt SQL Server . 21

3.3 Các thành phần cua Sql Server . 26

3.4 Các thao tác cơn bản trên môi trường SQL Server . 28

BÀI 4: CÁC THAO TÁC TRÊN SQL SERVER . 30

4.1 Đăng nhập vào SQL Server . 32

4.2 Các thành phần của SQL Server . 33

4.3 Các kiểu dữ liệu trong SQL Server . 34

4.4 Tạo cơ sở dữ liệu trong SQL Server . 35

3

4.5 Tạo bảng trong SQL Server . 36

4.6 Tạo quan hệ trong SQL Server . 39

4.7 Nhập dữ liệu trong SQL Server . 42

BÀI 5: THIẾT KẾ, BẢO TRÌ VÀ PHÁT TRIỂN MÔ HÌNH

CLIENT/SERVER . 44

5.1 Đọc hồ sơ thiết kế cơ sở dữ liệu . 46

5.2 Thiết kế cơ sở dữ liệu hoàn hảo ứng dụng cơ sở dữ liệu . 46

5.3 Bảo mật cơ sở dữ liệu . 46

5.4 Chuyển đổi cơ sở dữ liệu từ các nguồn cơ sở dữ liệu. 53

5.5 Sao lưu dự phòng cơ sở dữ lịêu . 58

5.6 Bảo trì cơ sở dữ liệu . 60

BÀI 6: LẬP TRÌNH TRÊN SQL SERVER . 62

6.1 Các câu lệnh SQL Server . 63

6.2 Lập tin batch . 77

6.3 Stored Procedure . 80

6.4 Trigger . 88

BÀI 7: KẾT NỐI ỨNG DỤNG VỚI CƠ SỞ DỮ LIỆU . 103

7.1 ODBC, JDBC . 103

7.2 ADO . 108

7.3 Data Environment . 110

7.4 OLE_DB . 118

7.5 Lập trình được trên các đối tượng Record Set . 120

THUẬT NGỮ CHUYÊN MÔN . 123

TÀI LIỆU THAM KHẢO . 124

pdf126 trang | Chuyên mục: SQL Server | Chia sẻ: dkS00TYs | Lượt xem: 3624 | Lượt tải: 4download
Tóm tắt nội dung Giáo trình Mô hình Client Server trên SQL Server, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 sử dụng ADO để làm việc với cơ sở dữ liệu 
Client/Server thì dễ dàng hơn các kỹ thuật khác. 
Tuy nhiên, với xu hướng phát triển của công nghệ Internet thì việc kết nối dự 
liệu từ xa là một nhu cầu rất thực tế và thông dụng. Do đó, chúng ta sẽ tìm hiểu về 
đối tượng ADO trong môi trường Web, mà cụ thể là môi trường của ngôn ngữ kịch 
bản ASP. 
Để tạo một đối tượng Recordset ASP, chúng ta dùng phương thức CreateObject 
với cú pháp như sau: 
Dim rs „Khai báo biến recordset 
Set rs = Server.CreateObject(“ADODB.Recordset”) 
 111 
Bởi vì đối tượng Server là mặc định của ASP nên ta không cần phải tham chiếu 
đến nó trực tiếp, có nghĩa là chúng ta có thể dùng CreateObject() thay vì 
Server.CreateObject(). 
Để tham chiếu đến một trường của đối tượng Recordset, chúng ta sử dụng một 
trong hai cú pháp sau: 
rs.Fields(“Tên trƣờng”) 
Hoặc: 
rs! 
Để đóng đối tượng Recordset lại, chúng ta dùng cú pháp: 
rs.Close 
set rs = nothing „hủy đối tƣợng Recordset 
Ví dụ sau sẽ mô tả tổng quát một cách sử dụng đối tượng ADO để hiển thị dang 
sách nhân viên trong cơ sở dữ liệu QuanLyNhanVien (quản lý nhân viên) đã được 
tạo bởi ODBC với tên DSN là QLNV: 
 Hien thi dang sach nhan vien 
<% 
set rs = Server.CreateObject(“ADODB.Recordset”) 
rs.ActiveConnection = “DSN = QLNV” 
rs.Open “SELECT * FROM NHANVIEN WHERE Luong>=1000000” 
Do Until rs.EOF 
 Response.write(“rs.Fields(“HotenNV”) & “ – “) 
 Response.write(“rs.Fields(“NgaySinh”) & “– ”) 
 Response.write(“rs.Fields(“Luong”) & “”) 
 rs.MoveNext 
Loop 
rs.Close 
set rs = nothing 
%> 
 112 
Chú ý: Ở ví dụ trên, đoạn lệnh VB Script được đặt trong cặp dấu . 
7.3 Data Environment 
Trong phần này chúng ta sẽ tìm hiểu về cách sử dụng môi trường dữ liệu (Data 
Environment) để xây dựng một ứng dụng Visual Basic 6.0 kết nối đến cơ sở dữ liệu 
SQL, đối với các hệ quản trị cơ sở dữ liệu khác chúng ta cũng có cách làm tương 
tự. 
Trước tiên, chúng ta chắc chắn rằng đã thiết kế cơ sở dữ liệu 
QuanLyNhanVien như trên. Các bước thực hiện sau sẽ cho phép sử dụng đối tượng 
Textbox để điều khiển các bản ghi trong bảng NHANVIEN của cơ sở dữ liệu: 
1. Trong môi trường Visual Basic, vào menu Prọect  Add Data 
Environment: 
Hình 7.1:Add Data Environment 
một đối tượng Data Environment sẽ được bổ sung vào có tên 
DataEnvironment1 và một dối tượng Connection có tên Connection1 được tạo sẵn 
như hình sau: 
 113 
Hình 7.2: Data Environment 1 
2. Để với tên mặc định hoặc có thể thay đổi bằng cách nhắp chuột phải lên đối 
tượng  Rename để đổi tên lại nếu bạn muốn. 
3. Tạo kết nối cho đối tượng Connection1 bằng cách nhắp chuột phải lện tên 
Connection1  Properties, một cửa sổ sẽ xuất hiện: 
Hình 7.3:Properties 
Ở đây chung ta muốn kết nối tới cơ sở dữ liệu SQL Server nên sẽ chọn chuỗi 
kết nối Microsoft OLE DB Provider for SQL Server như hình trên, lưu ý nếu sử 
 114 
dụng cơ sở dữ liệu khác thì sẽ dùng chuỗi kết nối khác trong danh sách tương ứng. 
Nhấn Next để tiếp tục và chọn tên cơ sở dữ liệu như hình dưới đây: 
Hình 7.4:Connection and select database 
- Nếu muốn hạn chế quyền truy cập thì chọn vào tab Advanced và thiết lập 
như hình dưới đây: 
 115 
Hình 7.5: Advanced access permissions 
Nhấn OK để hoàn tất 
4. Nhắp chuột phải lên tên đối tượng Connection1  Add Command để bổ 
sung vào một đối tượng Command1: 
Hình 7.6:Add Command 
 116 
Hình 7.7:Command 
5. Tiếp theo, nhắp chuột phải lên tên đối tượng Command1  Properties: 
Hình 7.8:Properties 
Một cửa sổ sau sẽ hiện ra: 
 117 
Hình 7.9:General command properties 
6. Đặt tên cho lệnh, giả sử ở đây chúng ta đặt tên là NHANVIEN, và trong 
Source of Data, chúng ta chọn Database Object là Table, chọn Object Name là 
NHANVIEN như hình sau: 
Hình 7.10:Object Name 
Nhấn OK để hoàn tất, chúng ta sẽ thấy xuất hiện một bảng NHANVIEN trong 
môi trường dữ liệu như sau: 
 118 
Hình 7.11:bảng trong môi trường dữ liệu 
7. Kết gán các trường cho các trường dữ liệu vào Form bằng cách nhắp chuột 
vào trường tương ứng và thả vò Form: 
Hình 7.12:Tạo Form 
8. Sau khi hoàn tất, nhấn F5 để chạy thử chương trình, chúng ta sẽ thấy 
chương trình được hiển thị như sau: 
 119 
Hình 7.13: chương trình được hiển thi 
Quả là rất đơn giản, chúng ta đã có thể hiển thị được dữ liệu của bảng nhân 
viên, nếu chúng ta thay đổi thông tin này thì dữ liệu cũng sẽ được cập nhật đối với 
cơ sở dữ liệu. Và dĩ nhiên sẽ chỉ thay đổi đối với bản ghi hiện hành, đối với ví dụ 
trên là bản ghi đầu tiên, nếu muốn di chuyển đến bản ghi khác chúng ta có thể dùng 
các phương thức MoveNext, MovePrevious,… của đối tượng Recordset trong 
DataEnvironment1: 
Private Sub cmdLui_Click() 
 DataEnvironment1.rsNHANVIEN.MovePrevious 
End Sub 
Private Sub cmdToi_Click() 
 DataEnvironment1.rsNHANVIEN.MoveNext 
End Sub 
Lưu ý, ở đoạn lệnh trên chúng ta đã sử dụng một đối tượng Recordset mặc 
định tên là rsNHANVIEN để trỏ đến bảng NHANVIEN do môi trường tự động 
sinh ra. Đoạn lệnh trên là thủ tục sự kiện của hai nút lệnh Lui và Tới. 
 120 
7.4 OLE_DB 
Phần lớn các nhà lập trình không tương tác trực tiếp với OLE DB. Thay vào 
đó họ lập trình với đối tượng ADO, tuy nhiên chúng ta cũng cần phải biết mô hình 
đối tượng cung cấp giao diện với OLE DB. 
Chúng ta có thể tham khảo ba mô hình sau để có cái nhìn sâu hơn về OLE DB: 
Mô hình 1: Sử dụng ADO và OLE DB truy cập thông tin trong một cơ sở dữ 
liệu 
Client Application 
Client Workstation 
Remote Data 
Objects 
ODBC Driver 
ODBC Driver 
Maager 
ActiveX Data 
Objects 
OLE DB Data 
Provider 
OLE DB Document 
Server 
Email 
Server 
Relational Database 
 121 
Mô hình 2: Cấu trúc truy cập cơ sở dữ liệu ODBC dùng trình cung cấp ODBC 
OLE DB. 
Internet 
Information 
Sever (IIS) 
ActiveX Server 
(DDL hoặc 
EXE) 
ADO OLE DB 
Database 
Trình duyệt Web 
Ứng dụng 
Client 
Máy chủ 
HTTP 
DCOM 
Client Application 
Client Workstation 
ODBC Driver 
ODBC Driver 
Maager 
ActiveX Data 
Objects 
OLE DB ODBC 
Provider 
OLE DB 
Relational Database 
 122 
Mô hình 3: Cấu trúc sử dụng một thành phần chương trình ActiveX chung với 
cả trình duyệt Web và các ứng dụng Client. 
7.5 Lập trình trên các đối tƣợng RecordSet 
Như một số ví dụ trên, chúng ta đã làm quen với đối tượng Recordset. Bây 
giờ chúng ta sẽ tìm hiểu rõ hơn về các phương thức, thuộc tính của đối tượng 
Recordset. 
* Các phƣơng thức của đối tƣợng Recordset: 
PHƢƠNG THỨC DIỄN GIẢI 
AddNew Tạo một bản ghi mới 
Cancel Hủy bỏ thao tác đang thực thi 
CancelBatch Hủy bỏ các cập nhật bị treo 
CancelUpdate Hủy bỏ các thay đổi với bản ghi hiện hành 
Clone Tạo một bản sao của đối tượng Recordset 
Close Đóng đối tượng Recordset và các đối tượng liên quan 
CompareBookmarks So sánh 2 chổ đánh dấu 
Delete Xóa bản ghi hay một tập bản ghi hiện hành 
Find Tìm một bản ghi thỏa điều kiện 
GetRows Lấy nhiều bản ghi đưa vào một mảng 
GetString Trả recordset về dưới dạng một chuổi 
Move Di chuyển vị trí của bản ghi hiện hành 
MoveFirst Đưa vị trí của bản ghi hiện hành đến bản ghi đầu tiên trong 
Recordset 
MoveLast Đưa vị trí của bản ghi hiện hành đến bản ghi cuối cùng trong 
Recordset 
MoveNext Đưa vị trí của bản ghi hiện hành đến bản ghi tiếp theo trong 
Recordset 
MovePrevious Đưa vị trí của bản ghi hiện hành đến bản ghi trước đó trong 
Recordset 
NextRecordset Xóa đối tượng recordset hiện hành và trả về đối tượng 
recordset kế tiếp 
Open Mở một Recordset 
 123 
Requery Cập nhật lại dữ liệu bằng cách thực thi lại câu truy vấn ban 
đầu 
Resync Refresh lại dữ liệu trong đối tượng Recordset hiện hành 
Save Lưu recordset xuống file 
Seek Tìm chỉ mục của Recordset 
Supports Xác định xem đối tượng recordset có hổ trợ chức năng gì đặc 
biệt 
Update Lưu các thay đổi 
UpdateBatch Lưu các khối thay đổi xuống đĩa 
* Các thuộc tính của đối tƣợng Recordset: 
THUỘC TÍNH DIỄN GIẢI 
BOF Trả về giá trị là TRUE nếu vị trí bản ghi hiện thời nằm phía 
trước bản ghi đầu tiên, ngược lại là FALSE 
EOF Trả về giá trị là TRUE nếu vị trí bản ghi hiện thời nằm phía sau 
bản ghi cuối cùng, ngược lại là FALSE 
RecordCount Trả về số bản ghi trong Recordset 
Sort Sẵp xếp 
Để thấy rõ hơn lợi ích và tính khả thi của đối tượng Recordset trong các thao tác 
dữ liệu, chúng ta hãy xem xét cách thức kết nối và thao tác trên cơ sở dữ liệu SQL 
Server. 
Trong thực tế, người ta ít khi thực hiện việc kết nối trực tiếp qua đối tượng 
Recordset mà thường thông qua một đối tượng kết nối cơ sở dữ liệu gọi là đối 
tượng Connection nhằm tăng tính linh động và hiệu quả cho ứng dụng cũng như 
Website. Chuỗi kết nối OLE DB của hệ quản trị cơ sở dữ liệu SQL Server được 
cung cấp như sau: 
“Data Source = tên_server; Initial Catalog = tên_cơ_sở_dữ_liệu; User ID = 
tên_sử_dụng; Password = mật_khẩu” 
Ví dụ sau sẽ dùng đối tượng Connection kết nối dữ liệu, dùng đối tượng 
Recordset hiển thị thông tin nhân viên: 
<% 
Dim Conn 
 124 
Dim rs 
Set Conn = server.CreateObject(“ADODB.Connection”) 
Conn.Open “DSN = QLNV” 
Dim sqlText 
sqlText = “SELECT * FROM NHANVIEN” 
Set rs = Conn.Execute(sqlText) 
While Not rs.EOF 
 Response.Write(rs(“HotenNV”) & “ – “) 
 Response.Write(rs(“NgaySinh”) & “ – “) 
 Response.Write(rs(“Luong”) & “ “) 
 rs.MoveNext 
WEnd 
Rs.Close 
Set rs = nothing 
Conn.Close 
%> 
BÀI TẬP THỰC HÀNH 
1. Xây dựng một ứng dụng WEB bằng ngôn ngữ VB Script kết nối đến cơ sở dữ 
liệu SQL Server QuanLyNhanVien và thực hiện các công việc sau: 
- Hiển thị danh sách nhân viên và đơn vị. 
- Bổ sung các nhân viên và đơn vị. 
- Sửa đổi thông tin một nhân viên và đơn vị dựa vào mã nhân viên, mã đơn vị. 
- Xóa các nhân viên và đơn vị dựa vào mã nhân viên, mã đơn vị. 
 125 
CÁC THUẬT NGỮ CHUYÊN MÔN 
1. Database: Cơ sở dữ liệu 
2. Server: Máy chủ 
3. Client: Máy khách 
 126 
TÀI LIỆU THAM KHẢO 
1. Giáo trình SQL Server – Trần Nguyên Phong – Trường Đại học Khoa học Huế 
2. Website:  
3. ASP.NET- Kỹ thuật và ứng dụng – Nhà xuất bản thống kê 2002. 

File đính kèm:

  • pdfGiáo trình Mô hình Client Server trên SQL Server.pdf
Tài liệu liên quan