Mụ c lụ c
Mụ c lụ c ............................................................................................................................... 1
1 Giớ i thiệ u về SQL Server 2005 ....................................................................................... 5
1.1 Cài đặ t SQL Server 2005 Express Edition ................................................................ 5
1.1.1 Các yêu cầ u cho hệ thố ng 32bit ........................................................................ 5
1.1.2 Các bư ớ c cài đặ t SQL Server 2005 Express Edition ........................................ 7
1.2 Mộ t số thao tác cơ bả n trên SQL Server 2005 Express Edition ............................. 18
1.2.1 Tạ o mộ t CSDL mớ i ........................................................................................ 18
1.2.2 Tạ o bả ng mớ i .................................................................................................. 19
1.2.3 Xóa bả ng, xóa CSDL ....................................................................................... 21
1.2.4 Mở mộ t query editor để viế t câu lệ nh SQL .................................................... 21
2 Structured Query Language (SQL) ................................................................................. 22
2.1 SQL là ngôn ngữ củ a cơ sở dữ liệ u quan hệ .......................................................... 22
2.2 Vai trò củ a SQL ....................................................................................................... 22
2.3 Giớ i thiệ u sơ lư ợ c về Transact SQL (T-SQL) ...................................................... 23
2.3.1 Ngôn ngữ đị nh nghĩa dữ liệ u ( Data Definition Language – DDL) ................ 24
2.3.2 Ngôn ngữ điề u khiể n dữ liệ u (Data control language – DCL) ....................... 24
2.3.3 Ngôn ngữ thao tác dữ liệ u (Data manipulation language – DML) .................. 25
2.3.4 Cú pháp củ a T-SQL .......................................................................................... 26
2.3.5 Các kiể u dữ liệ u ............................................................................................... 27
2.3.6 Biế n (Variables) ................................................................................................ 29
2.3.7 Hàm (Function) ................................................................................................. 29
2.3.8 Các toán tử (Operators) ..................................................................................... 29
2.3.9 Các thành phầ n điề u khiể n (Control of flow)................................................. 30
2.3.10 Chú thích (Comment) ...................................................................................... 30
2.3.11 Giá trị NULL ................................................................................................... 30
3 Ngôn ngữ thao tác dữ liệ u – DML ................................................................................. 31
3.1 Câu lệ nh SELECT ................................................................................................... 31
3.1.1 Danh sách chọ n trong câu lệ nh SELECT ........................................................ 32
3.1.2 Mệ nh đề FROM ............................................................................................... 36
3.1.3 Mệ nh đề WHERE - điề u kiệ n truy vấ n dữ liệ u ........................................... 36
3.1.4 Phép hợ p (UNION) .......................................................................................... 40
3.1.5 Phép nố i ............................................................................................................ 43
3.1.6 Các loạ i phép nố i ............................................................................................. 45
3.1.7 Phép nố i theo chuẩ n SQL-92 .......................................................................... 47
3.1.8 Mệ nh đề GROUP BY ....................................................................................... 49
3.1.9 Truy vấ n con (Subquery) .................................................................................. 52
3.2 Thêm, cậ p nhậ t và xóa dữ liệ u .............................................................................. 54
3.2.1 Thêm dữ liệ u .................................................................................................... 54
3.2.2 Cậ p nhậ t dữ liệ u ............................................................................................. 55
3.2.3 Xóa dữ liệ u ....................................................................................................... 56
4 Ngôn ngữ đị nh nghĩa dữ liệ u – DDL ............................................................................ 58
4.1 Tạ o bả ng ................................................................................................................. 58
4.2 Các loạ i ràng buộ c .................................................................................................. 60
4.2.1 Ràng buộ c CHECK .......................................................................................... 60
4.2.2 Ràng buộ c PRIMARY KEY............................................................................. 61
4.2.3 Ràng buộ c FOREIGN KEY ............................................................................. 62
4.3 Sử a đổ i đị nh nghĩa bả ng ....................................................................................... 63
4.4 Xóa bả ng.................................................................................................................. 64
4.5 Khung nhìn - VIEW ................................................................................................. 65
4.6 Thêm, cậ p nhậ t, xóa dữ liệ u trong VIEW ............................................................. 66
4.7 Thay đổ i đị nh nghĩa khung nhìn ............................................................................ 67
4.8 Xóa khung nhìn ........................................................................................................ 67
5 Thủ tụ c lư u trữ , hàm và trigger .................................................................................... 68
5.1 Thủ tụ c lư u trữ (Stored procedure) ......................................................................... 68
5.1.1 Tạ o thủ tụ c lư u trữ .......................................................................................... 69
5.1.2 Lờ i gọ i thủ tụ c ................................................................................................ 70
5.1.3 Biế n trong thủ tụ c lư u trữ ............................................................................... 70
5.1.4 Giá trị trả về trong thủ tụ c lư u trữ .................................................................. 71
5.1.5 Tham số vớ i giá trị mặ c đị nh .......................................................................... 72
5.1.6 Sử a đổ i thủ tụ c ................................................................................................ 72
5.1.7 Xóa thủ tụ c ....................................................................................................... 73
5.2 Hàm do ngư ờ i dùng đị nh nghĩa (User Defined Function-UDF) ........................... 73
5.2.1 Hàm vô hư ớ ng - Scalar UDF .......................................................................... 73
5.2.2 Hàm nộ i tuyế n - Inline UDF ........................................................................... 75
5.2.3 Hàm bao gồ m nhiề u câu lệ nh bên trong – Multi statement UDF .................. 76
5.2.4 Thay đổ i hàm .................................................................................................... 77
5.2.5 Xóa hàm ............................................................................................................ 77
5.3 Trigger ...................................................................................................................... 77
5.3.1 Các đặ c điể m củ a trigger ................................................................................ 77
5.3.2 Các trư ờ ng hợ p sử dụ ng trigger .................................................................... 78
5.3.3 Khả năng sau củ a trigger .................................................................................. 78
5.3.4 Đị nh nghĩa trigger ............................................................................................ 78
5.3.5 Kích hoạ t trigger dự a trên sự thay đổ i dữ liệ u trên ct ................................ 82
5.3.6 Sử dụ ng trigger và Giao tác (TRANSACTION) .............................................. 82
5.4 DDL TRIGGER ........................................................................................................ 83
5.5 Enable/ Disable TRIGGER ...................................................................................... 85
6 Sao lư u và phụ c hồ i dữ liệ u (Backup and Restore) .......................................................... 86
6.1 Các lý do phả i thự c hiệ n Backup .......................................................................... 86
6.2 Các loạ i Backup ...................................................................................................... 86
6.2.1 Full backup và Differential backup ................................................................... 86
6.2.2 Transaction log backup...................................................................................... 87
6.3 Các thao tác thự c hiệ n quá trình Backup Restore trong SQL Server 2005 Express
Edition ............................................................................................................................ 88
6.3.1 Sao lư u (Backup) .............................................................................................. 88
6.3.2 Phụ c hồ i (Restore) ........................................................................................... 90
7 Các hàm quan trọ ng trong T-SQL ....................................................................................... 92
7.1 Các hàm làm việ c vớ i kiể u dữ liệ u số .................................................................. 92
7.1.1 Hàm ISNUMERIC ............................................................................................ 92
7.1.2 Hàm ROUND .................................................................................................... 93
7.2 Các hàm làm việ c vớ i kiể u dữ liệ u chuỗ i ............................................................ 94
7.2.1 Hàm LEFT ......................................................................................................... 94
7.2.2 Hàm RIGHT ...................................................................................................... 94
7.2.3 Hàm SUBSTRING ............................................................................................ 94
7.2.4 Hàm LEN .......................................................................................................... 94
7.2.5 Hàm REPLACE ................................................................................................ 95
7.2.6 Hàm STUFF ...................................................................................................... 95
7.2.7 Hàm LOWER/UPPER ...................................................................................... 95
7.2.8 Hàm LTRIM/RTRIM ........................................................................................ 96
7.3 Các hàm làm việ c vớ i kiể u dữ liệ u Ngày tháng/ Thờ i gian ................................ 96
7.3.1 Hàm GETDATE ................................................................................................ 96
7.3.2 Hàm DAY/ MONTH/ YEAR ............................................................................ 96
7.3.3 Hàm DATEPART .............................................................................................. 96
7.3.4 Hàm DATENAME ............................................................................................ 97
7.4 Hàm CAST và CONVERTER .......................................................................................... 98
8 Kế t nố i vào SQL Server 2005 từ các ngôn ngữ lậ p trình để xây dự ng các ứ ng dụ ngliên
quan đế n CSDL .......................................................................................................................... 99
8.1 Cấ u hình Microsoft SQL Server 2005 .............................................................................. 99
8.1.1 Cho phép tiế p nhậ n các kế t nố i từ xa trên thể hiệ n củ a SQL Server ......... 100
8.1.2 Kích hoạ t dị ch vụ SQL Server Browser ........................................................ 101
8.1.3 Tạ o các ngoạ i lệ trên Windows Firewall ....................................................... 102
8.2 Kế t nố i vào SQL Server trong các ngôn ngữ lậ p trình ................................................. 103
8.2.1 C# và VB.NET ................................................................................................ 103
8.2.2 VB 6 ................................................................................................................ 105
Tài liệ u tham khả o ................................................................................................................... 106
1 Giớ i thiệ u về SQL Server 2005
SQL Server 2005 mộ t hệ thố ng quả n sở dữ liệ u (Relational Database Management
System (RDBMS) ) sử dụ ng Transact-SQL để trao đổ i dữ liệ u giữ a Client computer 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 để thể chy trên môi trư ng cơ sở dữ liệ u rấ t lớ n
(Very Large Database Environment) lên đế n Tera-Byte 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: ơ 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
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.
Chi tiế t có thể tham khả o tạ i đị a chỉ :
http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx
1.1 Cài đặ t SQL Server 2005 Express Edition
1.1.1 Các yêu cầ u cho hệ thố ng 32bit
Express Edition System Requirements
32-bit
Processor
PIII 600MHZ hoặc cao hơn
Tốt nhất: 1GHZ hoặc cao hơn
Framewor
k
Microsoft .NET Framework 2.0
Operating
System
Windows XP with Service Pack 2 hoặc cao hơn
Microsoft Windows 2000 Professional SP4
Express Edition System Requirements
32-bit
Microsoft Windows 2000 Server Service Pack 4 hoặc cao hơn
Windows Server 2003 Standard, Enterprise, or Datacenter editions
with Service Pack 1 hoặc cao hơn
Windows Server 2003 Web Edition SP1
Windows Small Business Server 2003 with Service Pack 1 hoặc cao hơn
Vista Home Basic và các phiên bản cao hơn (SQL Express SP1 and SQL Express
Advanced SP2)
Windows XP Embedded SP2 Feature Pack 2007
Windows Embedded for Point of Service SP2
Memory
192 MB RAM hoặc cao hơn; tốt nhất: 512 MB hoặc cao hơn
Hard Disk
350 MB ổ cứng cho các cài đặt cơ bản
425 MB ổ cứng cho các cài đặt SQL Server Books Online, SQL Server Mobile Books
Online, và sample databases
Drive
CD-ROM or DVD-ROM drive
Display
Super VGA (1,024x768) hoặc cao hơn
Other
Devices
Mouse, Keyboard
Other
Requireme
nts
Microsoft Internet Explorer 6.0 SP1 hoặc cao hơn
Chi tiế t yêu cầ u hệ thố ng cho các phiên bả n Microsoft SQL Server 2005 có thể tham khả
o tạ i đị a chỉ :
http://www.microsoft.com/sql/prodinfo/sysreqs/default.mspx
Download và cài đặ t Microsoft .NET Framework 2.0: Để cài đặ t thành công SQL Server
Express Edition hay các phiên bn SQL Server 2005 khác, Microsoft .NET Framework 2.0 ph
i đư ợ c cài đặ t trư ớ c.
Gỡ bỏ các phiên bả n Beta, CTP hoặ c Tech Preview củ a SQL Server 2005, Visual Studio
2005 và Microsoft .NET Framework 2.0.
Download và cài đặ t
Cài đặ t SQL Server 2005 Express Edition: Microsoft SQL Server 2005 Express Edition là
phiên bn miễ n phí, dễ sử dụ ng và “nhẹ củ a Microsoft SQL Server 2005. Microsoft SQL
Server 2005 Express Edition đư c tích hợ p trong Visual Studio 2005 tạ o ra sự dễ dàng trong
việ c phát triể n các ứ ng dụ ngng CSDL. SQL Server 2005 Express Edition đư c tự do sử
dụ ng trong các ng dụ ng thư ơ ng mạ i và dễ dàng cậ p nhậ t lên các phiên bả n cao n khi
cầ n thiế t.
Cài đặ t SQL Server Management Studio Express: SQL Server Management Studio Express
cung cấ p giao diệ n để ngư ờ i dùng dễ dàng tư ơ ng tác vớ i các thành phầ n củ a Microsoft
SQL Server 2005 Express Edition. Trư ớ c khi cài đặ t SQL Server Management Studio Express,
MSXML 6.0 phả i đư c cài đặ t
Download tạ i đị a chỉ :
http://www.microsoft.com/express/sql/download/default.aspx
1.1.2 Các bư ớ c cài đặ t SQL Server 2005 Express Edition
Double click vào file cài đặ t Microsoft SQL Server Express Edition.
Click Next:
Lư u ý: SQL Server 2005 có hai kiể u authentication (kiể m tra ngư ờ i dùng).
Windows authentication mode: Vic kiể m tra ngư i dùng củ a SQL Server 2005 sẽ phụ
thuc vào vic kiể m tra ngư i dùng củ a Windows. Khi ngư i dùng quyề n đăng nhậ p
vào Windows, ngư ờ i dùng đó sẽ có quyề n đăng nhậ p vào SQL Server. Kiể u kiể m tra ngư ờ i
dùng y thư ng đư c sử dụ ng khi ng dụ ng khai thác dữ liệ u SQL Server đư c cài
trên cùng mộ t máy tính.
SQL Server authentication mode: Việ c kiể m tra ngư i dùng củ a SQL Server 2005 sẽ
không phụ thuộ c vào việ c kiể m tra ngư i dùng củ a Windows. Khi ngư i dùng quyề n
đăng nhậ p vào Windows, ngư ờ i dùng đó chư a chắ c sẽ có quyề n đăng nhậ p vào SQL Server.
Để đăng nhậ p vào SQL Server, ngư ờ i dùng này phả i có mộ t bộ username password do SQL
Server quả n lý. Kiu kiể m tra ngư i dùng này thư ng đư c sử dụ ng khi ng dụ ng khai
thác dữ liệ u và SQL Server không đư ợ c cài trên cùng mộ t máy tính.
Khi chọ n Mixed mode, SQL Server có thể dùng bấ t kỳ kiể u kiể m tra ngư ờ i dùng nào
khi cầ n thiế t. Đây là mộ t thiế t lậ p thự c sự rấ t hữ u ích khi xây dự ng các ứ ng dụ ng CSDL.
Ngoài ra, ta cũng phả i đánh password vào hai ô bên dư ớ i để có thể đăng nhậ p vào SQL
Server khi ta xây dự ng mộ t ứ ng dụ ng truy xuấ t vào CSDLmáy này khi ta đang ở máy
khác.
Click Next ba lầ n:
Cài đặ t SQL Server Management Studio Express. Sau khi cài đặ t, đăng nhậ p vào SQL
Server 2005 Express Edition như sau:
Khi đăng nhậ p có thể chọ n Windows Authentication hoặ c SQL Server Authentication. Nế
u chọ n SQL Server Authentication thì phả i nhậ p password. Password này đư c thiế t lậ p trong
quá trình cài đặ t SQL Server 2005 Express Edition.
Nế u trong quá trình cài đặ t SQL Server 2005 Express Edition chúng ta không cho phép
SQL Server kích hoạ t ngay khi khở i độ ng máy, bấ m nút Connect sẽ gây ra lỗ i. Để khắ c phụ
c vào Start->Run đánh services.msc->Enter.
Tìm service SQL Server (SQLExpress), double click và trong comboxbox Startup type ch
n Automatic -> Apply - >Start -> OK.
Giao diệ n sau khi đăng nhậ p thành công
1.2 Mộ t số thao tác cơ bả n trên SQL Server 2005 Express Edition.
Microsoft SQL Server Management Studio cung cp mộ t giao diệ n thân thiệ n giúp cho
ngư ờ i dùng thự c hiệ n các thao tác mộ t cách dễ dàng. Mộ t số các thao tác bả n bao gồ m:
tạ o CSDL mớ i, xóa CSDL, tạ o bả ng, xóa bả ng…Cũng cầ n lư u ý rằ ng các thao tác thự c hiệ
n thông qua giao diệ n thì đề u có thể đư ợ c thự c hiệ n đư ợ c bằ ng các câu lệ nh SQL.
1.2.1 Tạ o mộ t CSDL mớ i
Đặ t tên Database trong Textbox Database Name, click OK.
1.2.2 Tạ o bả ng mớ i
Bả ng gồ m c các cộ t. Mỗ i cộ t gồ m tên cộ t (Column Name), kiể u dữ liệ u (Data Type)
và mộ t giá trị cho biế t cộ t đó thể chứ a giá trị NULL hay không. Trong bả ng sẽ ít nhấ t
mộ t cộ t làm khóa chính (primary key). Cộ t làm khóa chính sẽ có biể u tư ợ ng chìa khóa trư ớ
c tên cộ t.
Sau khi tạ o xong tấ t cả các cộ t củ a bả ng, tiế n hành Save -> OK

Preview text:

Mụ c lụ c
Mụ c lụ c ............................................................................................................................... 1
1 Giớ i thiệ u về SQL Server 2005 ....................................................................................... 5
1.1 Cài đặ t SQL Server 2005 Express Edition ................................................................ 5
1.1.1 Các yêu cầ u cho hệ thố ng 32bit ........................................................................ 5
1.1.2 Các bư ớ c cài đặ t SQL Server 2005 Express Edition ........................................ 7
1.2 Mộ t số thao tác cơ bả n trên SQL Server 2005 Express Edition ............................. 18
1.2.1 Tạ o mộ t CSDL mớ i ........................................................................................ 18
1.2.2 Tạ o bả ng mớ i .................................................................................................. 19
1.2.3 Xóa bả ng, xóa CSDL ....................................................................................... 21
1.2.4 Mở mộ t query editor để viế t câu lệ nh SQL .................................................... 21
2 Structured Query Language (SQL) ................................................................................. 22
2.1 SQL là ngôn ngữ củ a cơ sở dữ liệ u quan hệ .......................................................... 22
2.2 Vai trò củ a SQL ....................................................................................................... 22
2.3 Giớ i thiệ u sơ lư ợ c về Transact SQL (T-SQL) ...................................................... 23
2.3.1 Ngôn ngữ đị nh nghĩa dữ liệ u ( Data Definition Language – DDL) ................ 24
2.3.2 Ngôn ngữ điề u khiể n dữ liệ u (Data control language – DCL) ....................... 24
2.3.3 Ngôn ngữ thao tác dữ liệ u (Data manipulation language – DML) .................. 25
2.3.4 Cú pháp củ a T-SQL .......................................................................................... 26
2.3.5 Các kiể u dữ liệ u ............................................................................................... 27
2.3.6 Biế n (Variables) ................................................................................................ 29
2.3.7 Hàm (Function) ................................................................................................. 29
2.3.8 Các toán tử (Operators) ..................................................................................... 29
2.3.9 Các thành phầ n điề u khiể n (Control of flow)................................................. 30
2.3.10 Chú thích (Comment) ...................................................................................... 30
2.3.11 Giá trị NULL ................................................................................................... 30
3 Ngôn ngữ thao tác dữ liệ u – DML ................................................................................. 31
3.1 Câu lệ nh SELECT ................................................................................................... 31
3.1.1 Danh sách chọ n trong câu lệ nh SELECT ........................................................ 32
3.1.2 Mệ nh đề FROM ............................................................................................... 36
3.1.3 Mệ nh đề WHERE - điề u kiệ n truy vấ n dữ liệ u ........................................... 36
3.1.4 Phép hợ p (UNION) .......................................................................................... 40
3.1.5 Phép nố i ............................................................................................................ 43
3.1.6 Các loạ i phép nố i ............................................................................................. 45
3.1.7 Phép nố i theo chuẩ n SQL-92 .......................................................................... 47
3.1.8 Mệ nh đề GROUP BY ....................................................................................... 49
3.1.9 Truy vấ n con (Subquery) .................................................................................. 52
3.2 Thêm, cậ p nhậ t và xóa dữ liệ u .............................................................................. 54
3.2.1 Thêm dữ liệ u .................................................................................................... 54
3.2.2 Cậ p nhậ t dữ liệ u ............................................................................................. 55
3.2.3 Xóa dữ liệ u ....................................................................................................... 56
4 Ngôn ngữ đị nh nghĩa dữ liệ u – DDL ............................................................................ 58
4.1 Tạ o bả ng ................................................................................................................. 58
4.2 Các loạ i ràng buộ c .................................................................................................. 60
4.2.1 Ràng buộ c CHECK .......................................................................................... 60
4.2.2 Ràng buộ c PRIMARY KEY............................................................................. 61
4.2.3 Ràng buộ c FOREIGN KEY ............................................................................. 62
4.3 Sử a đổ i đị nh nghĩa bả ng ....................................................................................... 63
4.4 Xóa bả ng.................................................................................................................. 64
4.5 Khung nhìn - VIEW ................................................................................................. 65
4.6 Thêm, cậ p nhậ t, xóa dữ liệ u trong VIEW ............................................................. 66
4.7 Thay đổ i đị nh nghĩa khung nhìn ............................................................................ 67
4.8 Xóa khung nhìn ........................................................................................................ 67
5 Thủ tụ c lư u trữ , hàm và trigger .................................................................................... 68
5.1 Thủ tụ c lư u trữ (Stored procedure) ......................................................................... 68
5.1.1 Tạ o thủ tụ c lư u trữ .......................................................................................... 69
5.1.2 Lờ i gọ i thủ tụ c ................................................................................................ 70
5.1.3 Biế n trong thủ tụ c lư u trữ ............................................................................... 70
5.1.4 Giá trị trả về trong thủ tụ c lư u trữ .................................................................. 71
5.1.5 Tham số vớ i giá trị mặ c đị nh .......................................................................... 72
5.1.6 Sử a đổ i thủ tụ c ................................................................................................ 72
5.1.7 Xóa thủ tụ c ....................................................................................................... 73
5.2 Hàm do ngư ờ i dùng đị nh nghĩa (User Defined Function-UDF) ........................... 73
5.2.1 Hàm vô hư ớ ng - Scalar UDF .......................................................................... 73
5.2.2 Hàm nộ i tuyế n - Inline UDF ........................................................................... 75
5.2.3 Hàm bao gồ m nhiề u câu lệ nh bên trong – Multi statement UDF .................. 76
5.2.4 Thay đổ i hàm .................................................................................................... 77
5.2.5 Xóa hàm ............................................................................................................ 77
5.3 Trigger ...................................................................................................................... 77
5.3.1 Các đặ c điể m củ a trigger ................................................................................ 77
5.3.2 Các trư ờ ng hợ p sử dụ ng trigger .................................................................... 78
5.3.3 Khả năng sau củ a trigger .................................................................................. 78
5.3.4 Đị nh nghĩa trigger ............................................................................................ 78
5.3.5 Kích hoạ t trigger dự a trên sự thay đổ i dữ liệ u trên cộ t ................................ 82
5.3.6 Sử dụ ng trigger và Giao tác (TRANSACTION) .............................................. 82
5.4 DDL TRIGGER ........................................................................................................ 83
5.5 Enable/ Disable TRIGGER ...................................................................................... 85
6 Sao lư u và phụ c hồ i dữ liệ u (Backup and Restore) .......................................................... 86
6.1 Các lý do phả i thự c hiệ n Backup .......................................................................... 86
6.2 Các loạ i Backup ...................................................................................................... 86
6.2.1 Full backup và Differential backup ................................................................... 86
6.2.2 Transaction log backup...................................................................................... 87
6.3 Các thao tác thự c hiệ n quá trình Backup và Restore trong SQL Server 2005 Express
Edition ............................................................................................................................ 88
6.3.1 Sao lư u (Backup) .............................................................................................. 88
6.3.2 Phụ c hồ i (Restore) ........................................................................................... 90
7 Các hàm quan trọ ng trong T-SQL ....................................................................................... 92
7.1 Các hàm làm việ c vớ i kiể u dữ liệ u số .................................................................. 92
7.1.1 Hàm ISNUMERIC ............................................................................................ 92
7.1.2 Hàm ROUND .................................................................................................... 93
7.2 Các hàm làm việ c vớ i kiể u dữ liệ u chuỗ i ............................................................ 94
7.2.1 Hàm LEFT ......................................................................................................... 94
7.2.2 Hàm RIGHT ...................................................................................................... 94
7.2.3 Hàm SUBSTRING ............................................................................................ 94
7.2.4 Hàm LEN .......................................................................................................... 94
7.2.5 Hàm REPLACE ................................................................................................ 95
7.2.6 Hàm STUFF ...................................................................................................... 95
7.2.7 Hàm LOWER/UPPER ...................................................................................... 95
7.2.8 Hàm LTRIM/RTRIM ........................................................................................ 96
7.3 Các hàm làm việ c vớ i kiể u dữ liệ u Ngày tháng/ Thờ i gian ................................ 96
7.3.1 Hàm GETDATE ................................................................................................ 96
7.3.2 Hàm DAY/ MONTH/ YEAR ............................................................................ 96
7.3.3 Hàm DATEPART .............................................................................................. 96
7.3.4 Hàm DATENAME ............................................................................................ 97
7.4 Hàm CAST và CONVERTER .......................................................................................... 98
8 Kế t nố i vào SQL Server 2005 từ các ngôn ngữ lậ p trình để xây dự ng các ứ ng dụ ngliên
quan đế n CSDL .......................................................................................................................... 99
8.1 Cấ u hình Microsoft SQL Server 2005 .............................................................................. 99
8.1.1 Cho phép tiế p nhậ n các kế t nố i từ xa trên thể hiệ n củ a SQL Server ......... 100
8.1.2 Kích hoạ t dị ch vụ SQL Server Browser ........................................................ 101
8.1.3 Tạ o các ngoạ i lệ trên Windows Firewall ....................................................... 102
8.2 Kế t nố i vào SQL Server trong các ngôn ngữ lậ p trình ................................................. 103
8.2.1 C# và VB.NET ................................................................................................ 103
8.2.2 VB 6 ................................................................................................................ 105
Tài liệ u tham khả o ................................................................................................................... 106
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
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.
Chi tiế t có thể tham khả o tạ i đị a chỉ :
http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx
1.1 Cài đặ t SQL Server 2005 Express Edition
1.1.1 Các yêu cầ u cho hệ thố ng 32bit
Express Edition System Requirements 32-bit
Processor PIII 600MHZ hoặc cao hơn
Tốt nhất: 1GHZ hoặc cao hơn
Framewor Microsoft .NET Framework 2.0 k Operating System
• Windows XP with Service Pack 2 hoặc cao hơn
• Microsoft Windows 2000 Professional SP4
Express Edition System Requirements 32-bit
• Microsoft Windows 2000 Server Service Pack 4 hoặc cao hơn
• Windows Server 2003 Standard, Enterprise, or Datacenter editions
with Service Pack 1 hoặc cao hơn
• Windows Server 2003 Web Edition SP1
• Windows Small Business Server 2003 with Service Pack 1 hoặc cao hơn
• Vista Home Basic và các phiên bản cao hơn (SQL Express SP1 and SQL Express Advanced SP2)
• Windows XP Embedded SP2 Feature Pack 2007
• Windows Embedded for Point of Service SP2 Memory
192 MB RAM hoặc cao hơn; tốt nhất: 512 MB hoặc cao hơn Hard Disk
• 350 MB ổ cứng cho các cài đặt cơ bản
• 425 MB ổ cứng cho các cài đặt SQL Server Books Online, SQL Server Mobile Books Online, và sample databases Drive CD-ROM or DVD-ROM drive Display
Super VGA (1,024x768) hoặc cao hơn Other Mouse, Keyboard Devices Other
Microsoft Internet Explorer 6.0 SP1 hoặc cao hơn Requireme nts
Chi tiế t yêu cầ u hệ thố ng cho các phiên bả n Microsoft SQL Server 2005 có thể tham khả o tạ i đị a chỉ :
http://www.microsoft.com/sql/prodinfo/sysreqs/default.mspx
Download và cài đặ t Microsoft .NET Framework 2.0: Để cài đặ t thành công SQL Server
Express Edition hay các phiên bả n SQL Server 2005 khác, Microsoft .NET Framework 2.0 phả
i đư ợ c cài đặ t trư ớ c.
Gỡ bỏ các phiên bả n Beta, CTP hoặ c Tech Preview củ a SQL Server 2005, Visual Studio
2005 và Microsoft .NET Framework 2.0. Download và cài đặ t
Cài đặ t SQL Server 2005 Express Edition: Microsoft SQL Server 2005 Express Edition là
phiên bả n miễ n phí, dễ sử dụ ng và “nhẹ ” củ a Microsoft SQL Server 2005. Microsoft SQL
Server 2005 Express Edition đư ợ c tích hợ p trong Visual Studio 2005 tạ o ra sự dễ dàng trong
việ c phát triể n các ứ ng dụ ng hư ớ ng CSDL. SQL Server 2005 Express Edition đư ợ c tự do sử
dụ ng trong các ứ ng dụ ng thư ơ ng mạ i và dễ dàng cậ p nhậ t lên các phiên bả n cao hơ n khi cầ n thiế t.
Cài đặ t SQL Server Management Studio Express: SQL Server Management Studio Express
cung cấ p giao diệ n để ngư ờ i dùng dễ dàng tư ơ ng tác vớ i các thành phầ n củ a Microsoft
SQL Server 2005 Express Edition. Trư ớ c khi cài đặ t SQL Server Management Studio Express,
MSXML 6.0 phả i đư ợ c cài đặ t
Download tạ i đị a chỉ :
http://www.microsoft.com/express/sql/download/default.aspx
1.1.2 Các bư ớ c cài đặ t SQL Server 2005 Express Edition
Double click vào file cài đặ t Microsoft SQL Server Express Edition. Click Next:
Lư u ý: SQL Server 2005 có hai kiể u authentication (kiể m tra ngư ờ i dùng).
Windows authentication mode: Việ c kiể m tra ngư ờ i dùng củ a SQL Server 2005 sẽ phụ
thuộ c vào việ c kiể m tra ngư ờ i dùng củ a Windows. Khi ngư ờ i dùng có quyề n đăng nhậ p
vào Windows, ngư ờ i dùng đó sẽ có quyề n đăng nhậ p vào SQL Server. Kiể u kiể m tra ngư ờ i
dùng này thư ờ ng đư ợ c sử dụ ng khi ứ ng dụ ng khai thác dữ liệ u và SQL Server đư ợ c cài
trên cùng mộ t máy tính.
SQL Server authentication mode: Việ c kiể m tra ngư ờ i dùng củ a SQL Server 2005 sẽ
không phụ thuộ c vào việ c kiể m tra ngư ờ i dùng củ a Windows. Khi ngư ờ i dùng có quyề n
đăng nhậ p vào Windows, ngư ờ i dùng đó chư a chắ c sẽ có quyề n đăng nhậ p vào SQL Server.
Để đăng nhậ p vào SQL Server, ngư ờ i dùng này phả i có mộ t bộ username và password do SQL
Server quả n lý. Kiể u kiể m tra ngư ờ i dùng này thư ờ ng đư ợ c sử dụ ng khi ứ ng dụ ng khai
thác dữ liệ u và SQL Server không đư ợ c cài trên cùng mộ t máy tính.
Khi chọ n Mixed mode, SQL Server có thể dùng bấ t kỳ kiể u kiể m tra ngư ờ i dùng nào
khi cầ n thiế t. Đây là mộ t thiế t lậ p thự c sự rấ t hữ u ích khi xây dự ng các ứ ng dụ ng CSDL.
Ngoài ra, ta cũng phả i đánh password vào hai ô bên dư ớ i để có thể đăng nhậ p vào SQL
Server khi ta xây dự ng mộ t ứ ng dụ ng truy xuấ t vào CSDL ở máy này khi ta đang ở máy khác. Click Next ba lầ n:
Cài đặ t SQL Server Management Studio Express. Sau khi cài đặ t, đăng nhậ p vào SQL
Server 2005 Express Edition như sau:
Khi đăng nhậ p có thể chọ n Windows Authentication hoặ c SQL Server Authentication. Nế
u chọ n SQL Server Authentication thì phả i nhậ p password. Password này đư ợ c thiế t lậ p trong
quá trình cài đặ t SQL Server 2005 Express Edition.
Nế u trong quá trình cài đặ t SQL Server 2005 Express Edition chúng ta không cho phép
SQL Server kích hoạ t ngay khi khở i độ ng máy, bấ m nút Connect sẽ gây ra lỗ i. Để khắ c phụ
c vào Start->Run đánh services.msc->Enter.
Tìm service SQL Server (SQLExpress), double click và trong comboxbox Startup type chọ
n Automatic -> Apply - >Start -> OK.
Giao diệ n sau khi đăng nhậ p thành công
1.2 Mộ t số thao tác cơ bả n trên SQL Server 2005 Express Edition.
Microsoft SQL Server Management Studio cung cấ p mộ t giao diệ n thân thiệ n giúp cho
ngư ờ i dùng thự c hiệ n các thao tác mộ t cách dễ dàng. Mộ t số các thao tác cơ bả n bao gồ m:
tạ o CSDL mớ i, xóa CSDL, tạ o bả ng, xóa bả ng…Cũng cầ n lư u ý rằ ng các thao tác thự c hiệ
n thông qua giao diệ n thì đề u có thể đư ợ c thự c hiệ n đư ợ c bằ ng các câu lệ nh SQL.
1.2.1 Tạ o mộ t CSDL mớ i
Đặ t tên Database trong Textbox Database Name, click OK.
1.2.2 Tạ o bả ng mớ i
Bả ng gồ m các các cộ t. Mỗ i cộ t gồ m tên cộ t (Column Name), kiể u dữ liệ u (Data Type)
và mộ t giá trị cho biế t cộ t đó có thể chứ a giá trị NULL hay không. Trong bả ng sẽ có ít nhấ t
mộ t cộ t làm khóa chính (primary key). Cộ t làm khóa chính sẽ có biể u tư ợ ng chìa khóa trư ớ c tên cộ t.
Sau khi tạ o xong tấ t cả các cộ t củ a bả ng, tiế n hành Save -> OK