TRNG I HC PHM VN NG KHOA CÔNG NGH THÔNG TIN BÀI GING: SQL SERVER Dùng cho bc Cao ng Ging viên: Th.S Nguyn Trí Nhân Qung Ngãi, Spring-2014... Ging viên: Th.S Nguyn Trí Nhân 8 Khoa Công
Trang 1TRNG I HC PHM VN NG KHOA CÔNG NGH THÔNG TIN
BÀI GING:
SQL SERVER (Dùng cho bc Cao ng)
Ging viên: Th.S Nguyn Trí Nhân
Qung Ngãi, Spring-2014
Trang 2Ging viên: Th.S Nguyn Trí Nhân 1 Khoa Công ngh Thông tin
MC LC LI NÓI U 5
Chng 1 TNG QUAN V SQL SERVER 2000 7
1.1. GII THIU SQL SERVER 7
1.1.1 Gii thiu chung v h qun tr c s d liu 7
1.1.2 Gii thiu v phiên bn SQL Server 7
1.2. Các thành phn trong SQL Server 8
1.3. CÀI T SQL SERVER 9
1.4. CÁC CSDL H THNG TRONG SQL SERVER 17
1.5. CÁC CÔNG C TRONG SQL SERVER 19
1.5.1 Tin ích Book Online 20
1.5.2 Tin ích Client NetWork Utility 20
1.5.3 Tin ích Enterprise Manager 21
1.5.4 Tin ích Import and Export Data 22
1.5.5 Tin ích Profiler 22
1.5.6 Tin ích Query Analyzer 23
1.5.7 Tin ích Server Network Utility 25
1.5.8 Tin ích Service Manager 25
2.1 GII THIU 27
2.3.1 Truy vn d liu n gin vi SELECT 28
2.3.2 Tìm hiu các trng tính toán 31
2.3.3 L c d liu vi mnh WHERE 33
2.3.4 Sp xp d liu vi ORDER BY 38
2.3.5 Nhóm d liu vi mnh GROUP BY 40
2.3.6 Query con 44
2.3.7 Các phép ni 46
2.3.8 Kt hp các query 52
Trang 3
Ging viên: Th.S Nguyn Trí Nhân 2 Khoa Công ngh Thông tin
2.4.1 Chèn d liu 53
2.4.2 Cp nht, xóa d liu 55
2.5 BÀI TP THC HÀNH 56
3.1.1 Các tp tin vt lý lu tr c s d liu 57
3.1.2 Tp tin d liu chính (Primary Data File) 57
3.1.3 Tp tin d liu th yu (Secondary Data Files) 58
3.1.4 Tp tin lu vt (Log Files) 58
3.2. 3.2.1 S dng tin ích Enterprise Manager: 58
3.2.2 S dng câu lnh Transaction - SQL: 61
3.3. 3.3.1 Xóa c s d liu 62
3.3.2 i tên Database (Rename) 64
Chng 4 TO VÀ QU N LÝ B NG (TABLE) 65
4.1. TO B NG (TABLE) 65
4.1.1 Khái nim v bng 65
4.1.2 To cu trúc bng d liu 65
4.2. THAY I CU TRÚC B NG (TABLE) 69
4.2.1 Thêm mt ct mi trong bng: 69
4.2.2 Hy b ct hin có bên trong bng: 70
4.2.3 Sa i kiu d liu ca ct: 70
4.2.4 Tt b quy tc kim tra toàn v!n d liu: 71
4.2.5 Bt li quy tc kim tra toàn v!n d liu: 71
4.2.6 i tên ct, tên bng d liu: 72
4.3. XÓA B NG (TABLE) 73
4.4. QU N LÝ B NG 73
4.4.1 Tính toàn v!n d liu trong c s d liu 73
4.5. TO M!T DATABASE DIAGRAM 88
4.5.1 Khái nim v mô hình quan h d liu: 88
Trang 4Ging viên: Th.S Nguyn Trí Nhân 3 Khoa Công ngh Thông tin
4.5.2 To mi mô hình quan h d liu: 88
4.6 BÀI TP THC HÀNH 92
Chng 5 TO VIEW (B NG O) 97
5.1. KHÁI NIM VIEW 97
5.2. S DNG T – SQL 97
5.3. S DNG ENTERPRISE MANAGER 102
5.4 BÀI TP THC HÀNH 105
Chng 6 STORE PROCEDURE 106
6.1. KHÁI NIM STORE PROCEDURE 106
6.1.1 Th tc ni là gì ? 106
6.1.2 Các Procdure Store h thng: 106
6.1.3 Các li ích khi s dng Procdure Store: 107
6.2. TO STORE PROCEDURE B∀NG LNH CREATE 107
6.3. THI HÀNH STORE PROCEDURE 110
6.4. CÁC PHÁT BIU IU KHIN 110
6.4.1 Biu thc Case 110
6.4.2 Cu trúc r∀ nhánh IF ELSE 114
6.4.3 Cu trúc l#p WHILE 117
6.5. S A, XÓA, I TÊN TH# TC (STORE PROCEDURE) 121
6.5.1 Hy b Procdure Store: 121
6.5.2 Thay i ni dung ca Procdure Store: 121
6.6. X LÝ L∃I TRONG STORE PROCEDURE (SP) 123
6.6.1 Mã tr v 123
6.6.2 Câu lnh RAISERROR 124
6.7 BÀI TP THC HÀNH 125
Chng 7 CHUYN TÁC, B%Y L∃I VÀ KIU CON TR& TRONG SQL SERVER 126
7.1. CHUYN TÁC (TRANSACTION) 126
7.1.1 Khái nim 126
7.1.2 Cách to và ng dng 126
7.2. B%Y L∃I (TRIGGER) 133
Trang 5Ging viên: Th.S Nguyn Trí Nhân 4 Khoa Công ngh Thông tin
7.2.1 Khái nim 133
7.2.2 Cách to và ng dng 133
7.3. KIU CON TR& (SQL CURSOR) 134
7.3.1 Khái nim 134
7.3.2 Cách to và ng dng 134
7.4 BÀI TP THC HÀNH 136
Chng 8 QU N LÝ B O MT VÀ NGI DÙNG TRONG SQL SERVER 137
8.1. KHÁI NIM 137
8.2. TO VÀ QU N LÝ NGI DÙNG NG NHP 137
8.2.1 S dng Enterprise Manager 137
8.2.2 S dng Query Analyzer: 139
8.3. CP PHÁT QUYN CHO NGI DÙNG 139
8.3.1 S dng Enterprise Manager 139
8.3.2 S dng Query Analyzer 140
8.4. THU HI QUYN Ã CP PHÁT CHO NGI DÙNG 142
8.4.1 Xóa quyn truy xut CSDL hin hành: 142
8.4.2 Xóa b quyn th∃c thi ã cp ho#c t% chi trên CSDL: 142
8.4.3 Xóa b quyn to i tng ã cp ho#c t% chi trên CSDL: 143
TÀI LI&U THAM KHO 144
Trang 6Ging viên: Th.S Nguyn Trí Nhân 5 Khoa Công ngh Thông tin
Ngôn ng h i có cu trúc (SQL), có tin thân là SEQUEL, là mt ngôn ng c
1974, chính thc c ANSI/ISO công nhn là mt chu∋n ngôn ng s dng trong c s
các h qun tr c s d liu thng mi và có vai trò quan tr ng trong nhng h thng này
c s∃ ng viên ca các ng nghip trong Khoa Công ngh Thông tin, Tròng
c Trong bài ging này, chúng tôi không có tham v ng cp n m i khía cnh ca SQL mà ch( mong mun r)ng ây s∀ là tài liu tham kho tng i ∗y v các câu lnh thng c s dng trong SQL Bài ging c chia thành tám chng vi ni dung nh sau:
- Chng 1 T+NG QUAN V, SQL SERVER 2000
- Chng 2 GI−I THI&U NGÔN NG TRANSACT – SQL
- Chng 3 T/O C0 S1 D LI&U TRÊN SQL SERVER
- Chng 4 T/O VÀ QUN LÝ BNG (TABLE)
- Chng 5 T/O VIEW (BNG O)
- Chng 6 STORE PROCEDURE
- Chng 7 CHUY2N TÁC, B3Y L4I VÀ KI2U CON TR5 TRONG SQL SERVER
- Chng 8 QUN LÝ BO M6T VÀ NG78I DÙNG TRONG SQL SERVER
So vi chu∋n SQL do ANSI/ISO xut, bn thân các h qun tr c s d liu quan h thng mi li có th có mt s thay i nào ó; iu này ôi khi d9n n s∃ khác bit, m#c dù không áng k, gia SQL chu∋n và SQL c s dng trong các h qun tr c s d liu c th Trong bài ging này, chúng tôi ch n h qun tr c s d liu SQL Server
2000 ca hãng Microsoft s dng cho các ví d minh ho c:ng nh li gii ca các bài tp
Chúng tôi hi v ng r)ng bài ging này s∀ th∃c s∃ có ích i vi bn c Chúng tôi xin gi li cm n n các th∗y cô, ng nghip và các bn sinh viên ã ng viên và giúp
; chúng tôi hoàn thành bài ging này
Trang 7Ging viên: Th.S Nguyn Trí Nhân 6 Khoa Công ngh Thông tin
Qung Ngãi, 2014 Nguyn Trí Nhân
Trang 8
Ging viên: Th.S Nguyn Trí Nhân 7 Khoa Công ngh Thông tin
c s d liu (CSDL) Có rt nhiu loi h qun tr CSDL khác nhau: t% ph∗n mm nh
chy trên máy tính cá nhân cho n nhng h qun tr phc tp chy trên mt ho#c nhiu siêu máy tính
Tuy nhiên, a s h qun tr CSDL trên th trng u có mt #c im chung là s dng ngôn ng truy vn theo cu trúc mà ting Anh g i là Structured Query Language (SQL) Các h qun tr CSDL ph bin c nhiu ngi bit n là MySQL, Oracle, PostgreSQL, SQL Server, DB2, Infomix, v.v Ph∗n ln các h qun tr CSDL k trên hot
ng tt trên nhiu h iu hành khác nhau nh Linux, Unix và MacOS ngoi tr% SQL Server ca Microsoft ch( chy trên h iu hành Windows
- u i∋m c(a HQTCSDL:
+ Qun lý c d liu d th%a
+ m báo tính nht quán cho d liu
+ Ci tin tính toàn v!n cho d liu
- Nh)c i∋m:
+ HQTCSDL tt thì khá phc tp
+ HQTCSDL tt thng rt ln chim nhiu dung lng b nh
+ HQTCSDL c vit tng quát cho nhiu ngi dùng thì thng chm
!∀!#!∃%∋(2!34∗5+∋5+
Microsoft SQL Server là mt h qun tr c s d liu quan h (relational database management system – RDBMS) do Microsoft phát trin
SQL Server là mt h qun tr c s d liu quan h mng máy tính hot ng theo
mô hình khách ch cho phép ng thi cùng lúc có nhiu ngi dùng truy xut n d liu, qun lý vic truy nhp hp l và các quyn hn ca t%ng ngi dùng trên mng
Ngôn ng truy vn quan tr ... 20 00,
20 05 mi nht Microsoft SQL Server 20 08, Microsoft SQL Server 20 12, Microsoft SQL Server 20 13
phiên bn tip theo ca SQL Server 20 00 S dng nn Net Framework 2. 0
15 (- 32, 768) n 2< small>15-1 ( 32, 767) bytesInt T% -2< small>31 ( -2, 147,483,648) n 2< small>31-1
(2, 147,483,647)