Tải bản đầy đủ (.pdf) (14 trang)

Lập trình ứng dụng chuyên nghiệp sql server 2000

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (10.23 MB, 14 trang )

Ph4m 1--1üuKhang (Chii biên)
MK.PUB

ÂN BAN DÀNH CHO

SINH VIÊN

Lap trinh üng dung chun nghlêp

SQL SERVER 2000
Tồn
Hây dirng ling dung hé tôn
Tdng hgp - Hhoàn phdl thu
Hhoàn phdl chi - Tin kho

Hg thuat mil cüd SOL Server 2000
Hj nang phân tich thlét hé dû llêu
Phât bléu T-SQL cg ban. nâng cao
Phât bidu T-SQL chugên nghlêp
Uidu thuc tién và dé hiéu

Thütuc tinh toân chuyên dùng
Gidi phâp ling dung thŒc té

Hj thuât lâp trình chun nghlêp
lỴng dung hé tôn trên SOLServer 2000

NHÀ

BAN LAO DƠNG - x Hôl



Löl NOI DRU

3

Ldl NOI DRU
SQL Server 7.0 ra dbi lå mét bttåc nhdy vet cöng ngllé co Sd dit lieu so våi co Sd dü lieu SQL Server 6.5, SQL Server

2000 ra

khöng ngitng cung cdp cho ngubi düng nhüng cöng ct! vå nhl?ng doc didm måi phién bdn 7.0 con thiéu såt.

Ngoåi nhüng doc tinh khåc phtgc thiéu sot Clia SQL Server 7.0,phién bån SQL Server 2000 cön thay ddi mét s6 cwc.diPn
khåc trong cåc clutc ndng lép trinh cüng gidng nhtt trong quan lie vå rång buéc dü lieu.
Ngoåi ra SQL Server 2000 con cung cdp möt Sd cöng ce hb trg lehåc nhu Phån tich xtt IYtruc tuyén (OLAP),chuyCn tåc
truc tuy6n (OLTP), English Query...

Mét déc didm måi chüng ta can quan tam trong phién 5dn SQL Server 2000, khåi niém Object Oriented Database-OOD,
vå mét Sd kidu dü lieu måi cüng trinh båy trong giåo trinh nåy.
Giåo trinh SQL Server 2000 ra

nhåm giüp cho cåc bgn Sinh vién hec sinh, hay nhüng ngubi dang låm viec lién quan

dén tin hec, déc biét nhüng ngltbiphåt tridn co Sd dü lieu da ngubi düng, n/u?ng kidn thttc phån tich thiét ké IV th6ng, xåy
dung co dt liéu thVc tién, phåt bidu SQL tit can bdn dén nång cao, håm IL?th6ng, thii tec, båy Ibi vå mét s6 cong ce qudn
tri co dü lieu.
Våi hai tép, tdng céng 34 chuong, trong dé cd 4 chttongxåy dung ltng deng ce thd, nhåm thdng ké tdt cd kién thüc SQL
Server 2000 våo mét ztng dung ké toån cu thé, giüp cho bgn doc cd mét tö'ng quan vé SQL Server 2000.

'1'4p 1 ctia giåo trinh "LOPtrinh (tng deng chuyén nghiép SQL Server 2000", chü trpng dén ky nong IQptrinh, ky thuét

ung deng SQL våo tng deng thvc tién, xåy dung cåc phåt bidu SQL cd tinh näng déc biét, phåt trié'n mét s6 thü tec tinh tdn

quj, tan kho theo 3 phltong phåp, tinh cöng ng phåi thu, tinh cöng ng phdi Chi, vå mét sö' thü tec chuyén nghiép khåc.

Tép 2, giåi thiéu våi cåc bgn mét s6 mö hinh cc Sd dü lieu, leythuét måi cüa SQL Server 2000, quån tri cc så dd lieu,
bdo mét vå mét dich phån tich truc tuyén.
Våi kién thitcdåy dü cüa SQL

Server 2000 vå ky thuét,kinh n.ghiéplép trinh trén co så da lieuSQL

Serber, våi nhüng

vi de ce thd, thVc té c6 tinh chuyén nghiép, hy veng ben sé khåm phå ra nhiéu kidn thüc måi lg cüa quy trinh thiét ké xay
dvng, phåt tridn co så dü lieu SQL Server 2000.
Dd hoån thién mét üng deng thec tién,ngu&i düng can xäy dung cåc dng deng giao di?n bång Visual
Basic, C, JAVA,

ASP, JSP, Java Servlet, Java Beans, hay Perl, PI-IP trén cc så dü lieu, cho dü ben Sd deng platform nåo trén,

tuång lép

trinh vå ky thuét

trinh hay cåc ley nong cüng nhu logic trong SQL Server 2000 khöng thay d6i.
Ddcö nhüng kidn thüc mét s6 platform trén, bgn cé thd våo web site www.websoftvina.com dd tham khåo.
MK.PUB

www.minhkhai.com.vn

Ldl NGO

Kinh thLfaquy Ben dQCgan xa, Ban xuä't bån MK.PUB trudc hét Xin båy tö Iöng biét on vå niém vinh henh trudc nhi$t tinh
åa döng dåo Ban dec dji vdi tå såch MK.PUB trong thdi gian qua.
Khäu hiéu cia chüng töi lå:
* Lao döng khoa hoc nghiém tüc.
* Chä*t luqng vå ngåy cång chät lugng hon.

* Tit cå vi Ben doc.
Rå't nhiéu Ben doc dä güi mail cho chüng töi d6ng g6p nhiéu j kién quj båu Chotå såch.
Ban xuå't bån MK.PUB Xin dl-rqckinh mdi quj Ben doc thallf gia cüng näng cao chät lugng tü såch cüa chång ta.
Trong quå trinh doc, Xin cåc Ben ghi chü lei cåc sai sot (dü nhå, Idn) cåa cu6n såch hoäc cåc nhän xét cåa riéng Ben. Sau d6
•n güi vé dia chi:

E-mail:
Hoäc güi vé: Nhå såch Minh Khai
249 Nguyén Thi Minh Khai, Q.I, Tp. Hd Chi Minh
Néu Ben ghi chü trVc tiép lén cuö'n såch, r6i güi cuö'n såch dö cho chüng töi thi chüng töi sé Xin hoän lei cudc phi butudien vä
lei cho Ben cu6n såch khåc.
Chüng töi Xin gli t4ng mot cu6n såch cüa tå såch MK.PUB tüy chon Iva cüa mn theo mot danh muc thich hqp sé dugc guf tdi Ben.
Vdi muc dich ngåy cäng nång cao chät Iddng cia tå såch MK.P(.JB,chüng töi rät mong nhän dugc sv hep tåc cüa quj Ben doc gan xa.

MK.PUB vå Ben dec cüng låm !"

MK.PUB


4

Lap trinh ting dung chuyén nghiQpSQLServer 2000
MUC LUC


Löl NOI DRU

MVCWC
Chttdng 1 : SQL Server 2000- lich styvå phåt tridn

16

1. Khåi niém cd bån vé cåc loqi Cd dü lieu... .. ..
1.1. Paper-based:.......... ....
1.2. Legacy mainframe: ......„.............
1.3. dBase:
1.4. RDBMS Systems: ....0......................„............
1.5. Object-Oriented databases (co så dü lieu huång d6i tugng):.................................„..
2. SV phåt trién cüa dü lieu quan he
3. Gi6i thiéu SQL Server 2000.
3.1. Symmetric Multiprocessing (SMP):.
3.2. Clustering Support:
4. Yéu cåu phan ctng vå h9 diéu hånh cho SQL Server 2000.............
5. Xåy d!fng he thöng két nö'i ..
5.1. User Services: ..................„..................
5.2. Business Services
5.3. Data Services

16
16



.16
16


.16
.. ..............17
.1
.1....17

.18

6. .Net.....

7. Mư hinh truy cap dd lieu......
7.1. ADO (ActiveXData
7.2. ODBC (Open Database Connectivity):
7.3. OLE
7.4. JDBC (Java database Connectivity):
8. Két







18



18




18


-

18

18
18



.

18

19

1. Khåi niém Cdbån vé rdbms......... ........ .
2. Cåc thånh PHAN cä'u thånh cüa sql server 2000....
3. Dji tuqng co •dülieu
3.1. Cc dt liéu
3.2. Ca så dü liéu model...............................
3.3. Co så dt liéu msdb.............
3.4. Coså dlTlieu
3.5. Caså dü lieu pubs.................................................
3.6. Cc dü lieu Northwind ...........................




19

...... 19
....... 19

.19
1........20

..20
. ..... 20

.. ...20

tin chuydn tåc log..........t........

4. Gidi thi#u vé d6i tuqng cåa ccj
4.1. Bdng - Table
4.2. Chi mec - Indexs
4.3. Båy Ibi Triggers
4.4. Rång buéc - Constraints

18

18

Chddng 2 : Cåc thånh phån cüa SQLServer 2000

3.7.


16

.. .... 20



..

..........20
.20

.

.
..

.. ....21

4.5. Diagram - Lugc db quan
4.6. Khung nhin - Views

4.7. Thü tuc néi - Stored
4.8. Sü dwng kidu dü lieu Cursor (Cursor
5. Kidu dü lieu - Data type
6. Khai båo dü

21

... ...21


.
....

7. Ké't chucng.............v. ...

Chrtdng 3 : Cåc cong cu chfnh cåa SQLServer 2000
1. Khåi niém Cdbån vé trq giüp trvc tuyén - Books Online

..21
.21

. ...21
.21
.23
.23
24
24


WC LUC

5

2. Tién ich mang client /

..24
.24

.....


2.1. Named
2.2. TCP/IP....
2.3. Multiprotocol............ ...
2.4. NW Link IPX/SPX..........

.24
25
25

3. Trinh Enterprise manager
4. Trinh Query
5. Dich vp trinh chi - Service Manager
5.1. SQL Server Service:
5.2. SQL Server

.. 25

. ...25
.25
25

.. ...25

6. Két chdong....... ..

.25

Chitdng 4 : SQL Server 2000cåc phåt bi6u cd bån cüa T-SQL

26


1. Khåi ni+m Cd bån vé SELECT....

.26

2. Phåt bi6u SELECTvdi menh dé FROM.

..26

3. Phåt bi6u SELECT cö ding menh dé Where
4. Phåt biéu Order by .
5. Phåt biéu SELECT v6i menh dé GROUP BY

.27

.. ...30

6. Cåc håm thöng dung trong SQL Server 2000.
6.1. Cåc håm trong phåt biéu GROUBBY...
6.2. Cåc håm XÜtIS'
6.3. Cåc håm vé xü IY th&i

31
..
31
......31
32

.29


.

6.4. Cåc håm vé toån hoc .....

.......... 33

6.5. Cåc håm vé chuyén

...34

7. Phåt biéu SELECT vdi AS.
8. Phåt

biéu SELECT

34

v6i top n ......................

34

9. Phåt biéu SELECT v6i DISTINCT......

...35

10. Nhäp dü lieu bäng phåt biéu insert
10.1.Insert våo bång Idygiå tri ce
10.2. Insert våo bång Idygiå tri tif bang
.
10.3. Insert våo bång Idy giå tri ce thé, cüa bång khåc:..............


.36
.. ......36
.37

11. Phåt biéu cap nh4t - UPDATE......
12. Phåt biéu xoå - DELETE,........
13. Két chi-rung..........

. ....38
.39
.39

Chitdng 5 : SQL Server 2000 phåt bidu ndi nhiéu bång (Join Tables)

40

1. Khåi niérn Cdbån vé dd lieu quan
2. Khåi niöm vé menh dé JOIN .....

42

3. Inner Join...............
.....

4. left Join............ ..
5. Right Join

..


.. 45

6. Full Join............... .
7. Cross

...47

8. Phåt biéu thay thé Left Join, Right Join vå Cross Join .

. .48

9. Phép toån hqp (Union)

10. Két chucng......

50

Chddng 6 : SQL Server 2000too vi süa ddi bång dü lieu (Creating and Altering Tables)

51

1. Khåi niém Cdbån vé dji tuqng trong SQL Server 2000
1.1 Ownership.............

-

1....,..1..:.,..........
51

1.2. Tén co så dü lieu - Database name.... ....... ........ ..... ..


1.3. Phåt biéu CREATE........
2. Teo Cd Sd dü lieu - Create database..............

.51

.

,

51

.. ....51


Lüp trinh ting dung chuyén nghiöp SQL Server
2.1. Dién giåi phåt bidu CREATE.......
2.2. Xåy dung co så dt? lieu mdu cho ting deng Account .
3.
bång - CREATE TABLE.....
3.1. Tén cét - Column Name.
3.2. Kidu dt lieu - Data

2000

58

.

54


3.3. Giå tri mcicnhién - Default...........
3.4. Identity.....„„ .

54

3.5. Null / Not
3.6. Rång buéc - Column
3.8. Rång buöc bång dü lieu - Table
4. Thay cäu trüc - Alter
4.1. Alter Database .........
5. Thay d6i cäu trüc bång - Alter Table ............
6. Phåt biéu xoå -

..

...55

...55
.. 56

..57
.58

7. Teo kich bån - Creating Scripts

. ....58

7.1. Tab General ..


59

7.2. Tab Formatting

59

8. Két

.. 60

Chitdng 7 : SQL Server 2000khoå vi ring buöc dü lieu (Keys and Constraints)

61

1. Khåi ni?m co bån vé rang

• ......61

2. Cåc loqi rang bc..... ..
2.1. Domain Constraints
.
2.2. Entity constraints............................ ..
..
2.3. Reference integrity constraints........„..............................................................
....
2.4. Rång buéc khoå chinh - Primary Key constraints........ . .. .
2.5. Teo Primary key trong bång ...............,..............l. .. ...... ..
2.6. Tgo Primary key
bdng da cd .........,....
2.7. Kidm tra rang buéc trong cQpnh@t,xoå mdu tin.... ....

2.8. Rång buéc duy nhdt - Unique Constraints.................
2.9. Teo rång buöc duy nhdt trong bång tdn
2.10. Rång buéc hidm tra - Check Constraints............... .
2.11. Rång buéc mac nhién - Default Constraints.........................
2.12. Teo bång cö dinh nghia rång buéc Default ............
2.13. Thém giå tri m4c nhién trong bång tdn tgi dt
3. Quy tåc (Rules) vå giå tri m4c nhién

...61
.62
.62
..62

.62
.62
.62
.63

.64
65
.65
. ...66

.

3.1.

nhién - Default.........
3.2. Giå tri
4. Bäy löi cho rång buQcdü lieu......


Chddng 8 : SQL Server 2000chuan h6a vå quan he (Normalization and Other Basic Design Issues)
1. Khåi niém Cdbån vé tiéu chuan hổ...
1.1. Bång 1.2. Chudn hưa....................................................
1.3. Trudc khi bdt dåu chudn hoå...........
hoå

1 (INF)..

3. Chudn hoå budc 2 - 3nf ..................
4. Chuan hoå bLf6c3 - 3nf .........................
5. Quan he - relationship.....
5.1. Quan h? mét - mét (One - to - One).........
5.2. Quan h? mét - nhiéu (One - To - Many)................... .
5.3. Quan h? Nhiéu - NhiÖu (Many - To - Many) ........... .

6. Luqc dd quan he trong SQL Server 2000 - Diagram .........
7. Két

66

.

.. 66
.. 66

5. Két

2. Chuan


66

67
.67
67
67

.68
.68
.. 70
... 70

.71
.. 71
71
73

.74

.75


7

OC LUC

ddng 9 : SQL Server 2000views (bang

76


Khåi niém co bån vé View

....... 76

2. View don giån......„.. .
3. View gijng nhufbé loc (Filter)

.

.. .... ... 76
.. .. ....

77

4. Too view c6 cå'u trüc phüc

......... 78

5. St dyng View thay d6i clü

..

.. 79

6. Thay d6i view bhng T-SQL..

......81

7. Too vå thay d6i View bhng Enterprise


81

8. Mä hoå views........„.......... .

.. ...83

9.Ké't

....... 83

hitdng 10 : SQL Server 2000xåy dVng kich bån (Script) vå bd phåt bidu sql theo b6 (batch)

(scripts and batchs)

84

1. Khåi niém Cdbån vé kich bån (Script)
2. Kich bån (Script) ddn

.... .. 84

..84

3. Phåt biéu USE.....

.........84

4. Khai båo bién trong SQL
5.Håm
...........


.. ...85
.. ...86

6. dyng
7. B6 - batch ....

... ......87

8. Khi nåo ding

.. .... 89

9. OSQL...
10. SQL

.88

......... 90

...

..

.........91

11.

. ...92


93

)hddng 11 : SQL Server 2000thü tuc thdöng tri (Stored Procedures hay SP)
1. Khåi niém Cdbån vé Stored Procedure...........
1.1. Tgo Stored Procedure don gidn
1.2. Thay ddi Stored
.
1.3. Xổ nzét Stored Procedure...............
2. Tham sư' trong Stored Procedure
2.1. Cung cdp giå tri mac nhién..............
2.2. Tham sö' OUTPUT.....
3. Phåt biéu diéu khién.............
3.1. Phåt biéu IF... ELSE.........
4. Phåt biéu CASE ...................
4.1. Phåt bidu CASE don
4.2. Searched CASE.

..

93
.93

................ 94

.94
95

. ... ... .....

.96

.97
97

...

.... ..101
101

...

102

5. Phåt biéu WHILE ..

.102

5.1. Phåt bidu WAITFOR..
6. Phåt biéu RETURN.

.......... ............. 103

7. Xäy dvng Stored Procedure bång EM (Enterprise Manager)
8. Quå trinh thvc hién cåa mét Stored Procedure.............

9. Mét sö' Stored Procedure cåa he th6ng ...........................
9.1. Sp_Whohay sp_wh02:...
9.2. Sp_configure
.
10. Mét sö bång chufacåc thöng tin he thöng .
11. Két


1. Khåi niém Cdbån vé Ibi - Error
19 löi -

. ............l.,........,. 104

......... ........,....... 105
. .. 106
...........,..........l..l.l:.........

..
.

106

106
107

........v...108

Chddng 12 : SQL Server 2000xü l' Ibi trong SP tim hidu cåc SP he thdng
2.

102

.

.....109
................................
109


.

....... 109


Lap trinh

8

dung chuyén nghiöp SQLserver

2.1. Sti deng @ERRORtrong Stored
2.2. Kidm soåt khi Ibi xåy ra.

3. Lénh RAISERROR...

3.1.MessageID / MessageString
11

3.2. Severity

3.3. State - Trgng thåi

.

4. Thém thöng båo löi våo danh såch
4.1.
4.2.


4.3.

....

5. Thi tyc md röng - extended Stored Procedures (Xps) ..........
5.1. xp_cmdshell
5.2. xp_msver
6.Két

.....

"

"

"

11

Chitdng 13 : SQLServer 2000him nguöi düng vi him he thdng (User Defined Functions)

11

1. Khåi niöm Cdbån vé håm ngubi ding
2. Udfs trå vé giå tri vö hd6ng
3. Udfs trå vé bång dü

11

.12


4. Xoå håm ngubi
5. Tim hiéu thuyét quyét dinh - Determinism
.
6. Teo häm h?

• 12


••••••• •• ••

••

12

7. Xoå mot häm he

.1

8. Két chddng.................



123

Chddng 14 : SQL Server 2000 chuydn tic vi khoå (Transactions - Lock)
1. Khåi niém co bån vé chuyén tåc ....................
1.1. Chuydn tåc Begin
.
1.2. Chuyén tåc Commit Tran ...e....

1.3. Chuydn tåc Rollback
1.4. Chuydn tåc Save Tran
2. SQL Server Log låm viéc nhLfthé
2.1. SÜtdeng l?nh Checkpoint.............
2.2. Shutdown

124



124
. 124

... 124

. .... 125
. 125
.126

....... 126

.

.. .. 126

2.3. Thay ddi Iva chen trong ca så dü
.
3. Hd höng vå phyc hdi (Failure and Recovery)
4. Chuyén tåc ngårn dinh - Implicit Transaction..................
5. Kh6a (Locks) vå ddng hånh (Concurrency)

6. Cåc vä'n dé c6 thé ngän ngüa bäng
6.1. Dirty Reads (dec clü lieu
6.2. Unrepeatable Reads (dec hai lån Indu tin)
6.3. Phantoms (dec cåc mdu tin ma)...,.
6.4. Lost Update (cQpnh@tmdt dü
7. Ché dé
..
7.2. Intent Lochs
7.3. Schema Locks

. 127
. 127
. 128

. .

128

.128
. . . .. .............. 128
. 129

.. 129

..

129

. 130


.130

8. Khå näng Lock........
9. Két chucng....

Chitdng 15 : SQLServer 2000bÄyIdi (Triggers)
1. Khåi niém Cdbån vé Trigger...............
1.1. ON...
1.2. With

1.3. Menh db FOR I AFTER so

........,.. 127

INSTEAD OF....

.... ...............

130

.... ..................

130

131
.. 131
132
132

. 132



9

C LUC

... 133

1.4.FOR I AFTER.....

. .... 133
133
133
133
.......133

1.5. INSERT TRIGGER.............

1.6. DELETE TRIGGER
1.7. UPDATE TRIGGER.
1.8. NOT FOR
1.9. AS ...

.

.. ...133

2. Sü dung Trigger d6 rång buoc tron ven
2.1, Sü dung Trigger cho rång buéc don gidn
3. Trigger Chorång buöc dü lieu uy6n chuy6n hon .,.............

3.1. Quan h? 1-1 ( One-to-oneRelationship)
3.2. Quan h? mét nhiéu (One-to-ManyRelationship)...................

.133
134

.

... ..... 134

.137
138

3.3. Phån logi thzt cdp dånh riéng (Exclusive Subcategories)...........e.

4. Trigger dé kiém tra quy tÅcrång buQc
.
4.1. Trigger våi giå tri tit bång khåc....
5. Too Trigger bhng EM (Enterprise Manager) ............
5.1. Xoå Trigger bång phåt biéu DROP...
6. Cåc loqi Trigger khåc ........v.......,....,...

. ...139

...

139

..139


... 140
.140

I

6.1. Trigger cö thd thVc hi?n ngåm
6.2. Trigger cö tinh d? quy

.1..1...140

140

6.3. Trigger khöng thd ngän ngüa thay ddi cdu trüc...............................
...
6.4. Trigger thVchi?n theo thit

...e.....140
.. 140

7. Instead Of Trigger

. .140

7.1. Instead Of Insert
7.2. Instead Of Update ......„...
7.3. Instead Of

.

.. .. 141


. 143

.144

8. St dung IF Update() vä Columns_Updated()........................
.. ...

144

i
8.1. Håm Update() ......................

8.2. Håm

.... .

8.3. Debug

.145
.146

.

9. Két

146

Chddng 16 : SQL Server 2000truy vå'n nång cao (Advanced Queries)


147

1. Khåi niém Cdbån vé truy vän con - Truy van déc

-

2. Xäy d!fng truy vä"n con.................................„............... .. .

...... 147

2.1. Truy van con Sit dung WHERE våi mét giå tri ..................
2.2. Truy vdn con Sd dung WHERE våi nhiéu giå

147
148

3.Phép toån ANY, SOME, ALL .

151

3.1. Phép toån SOME, ANY...

..... ....

. .......152

4. Phåt biéu select vdi bång tam .
5. Phép

tổn


151

ALL.............•.................................

3.2. Phép

147

.... .................. 152
.153

EXISTS...............I.....
.

6. Phåt biéu SELECTvdi phép gån bäng phåt bi6u SELECTkhåc............„............l..........................................l......
..155
7. SELECT

vdi phép toån ISNULL()

8. st dung håm

CONVERT

.........„.............

157

vå CAST..........

.. ..

. ....

...„..

9. Phåt biéu select läy dd lieu tü Cd Sd dü lieu khåc....

159

9.1. OLE DB
.
9.2. OLE DB Provider våi ODBC.......
9.3. OLE DB Provider for
9.4. st? deng OPENROWSETkét nö'i bdng khåc bång INNER JOIN................... ..
10. Két

... 158

chuong.............

159
160
160

.160
. ..........l..........
161

Chddng 17 : SQLServer 2000Cåc chuydn tic vå truy vå'n phån tån (Distributed Queries Transactions). 162

1. Khåi niém cc bån vé truy vä'n phän
2. Chuyén tåc Phän tån............ ..

......

.........

....162
... 162


10

Lap trinh ffng dung chuyén nghiöp SQLServer 2000

2.1. Giai dogn chuan b/• Prepare
3. Truy van phån tån
3.1. Tgo /eét n6i Server bång sp_addlinkedserver........................... .
22. Xoå két ndi Server bång
3.3. Dang nh(ip server ditgc le6tn6i
4. st dung håm OPENQUERY.....
5. Nh6m nhiéu Server....... .
6. Két

. 162
. 163
. 163




164
. 164
. 166

. 167

chucng...............„..,..,......

_

169

Chddng 18 : SQL Server 2000kidu dü lieu con trö (SQLCursors)
1. Khåi niém Cdbån vé Cursor
2. Quå trinh thVchién cia mét Cursor.
2.1. Khai båo Cursor (Declarat;un)
2.2. Må Cursor (Opening) .
2.3. Ldy mdu tin tit

170
. 170

. 170
.170

..

- ...l..
171
. 171


2.4. Kidmtra trgng thåi Cursor

. 171

3. Loei Cursor vå cü phåp md rang
3.1. Phg,n vi - SCOPE .
3.2. Logi cursor (Cursor Type).........,.....
4. Type-Warning..............
5. Thay d6i du lieu tqi vi tri Cursor ..........
6. Két

173

-

.177

...

. 185

186

1. cc bån vé XML........
1.1. Cdu trüc cüa tåi lieu XML.......
1.2. Tåi lieu hgp khuön deng (Well-Fonned)........

186
. 187


. ...... 188

véXML.

189

1.4. Phån tdXML so våi thuéc tinh Cliaphån tit............................„...
2. Khöng

. 190

gian tén

2.1. Khåi ni?m vé khöng gian tén
2.2. Néi dung cüa cåc phån
3. Tåi lieu hep le (Valid)vå hgp khuön dqng (Well-Formed)—DTD
3.1. DTD.....
3.2. Lugc db XML (XML Schemas) ...........................

3.3. DTD/XML Schema vå hi?u sudt thvc hién.....
4. Ngön ngü chuyén dich XSLT ........
4.1. Cåc thé clui yéu cüa
5. Két

.

Chddng 20 : Tich hqp XML
SQL Server 2000
1. Gidi thiéu XML tfch hqp våo SQL Server 2000........

2. Menh dé FOR XML .
2.1.RAW....

.190

lugc dd

.........

190
. .. 191
. 191
. 192

..

. 192

193
. 193
. . ... ......:......195
. 195

196
. 196
196
.197

2.2. AUTO ....
2.3. EXPLICIT:...


3. OPENXML....
4. Truy cap HTTP

183

. 184

..

Chddng 19 : Tdng quan vé XML

1.3.Vi

173

... ..... ..... ..... .... 198

. .. 199

.202
................

4.1. Cdu hinh truy cop HTTP ....
5. Ké't

Chttdng 21 : Tim hidu trinh BCP
1. Tien ich BCP.....
1.1. Cziphåp BCP....
2. BCP Import

.. ..

.. 205

.. 205
.207

208
.208
.. 208
. 209


11

2.1. Vi dt! vé Import dü lieu
2.2. Log so vdi khöng Log.....

. ....210
. .... ...

... ..211

.

2.3. Cåc filedinh dgng (Fonnat Files).

..

2.4. T6i ltu höa Ili?u sudt thvc thi klii Import .......


.

3. BCP Export.
4. LQnh BULK

.............213

.. .. ... ..... ..... ... .. 213
INSERT.......

....... 213

5.Két

. ...214

Chitdng 22 : Gidi thiQu DTS Data Transformation Services

215

1. Trinh DTS Package Editor...,..................................„.....

215

1.1. Connection (Két
1.2. Task (tåc VI!)
1.3. Workflow (Ittu trinh låm vi?c) ........„ .

..........l..

....
215
.. ..215
... .....
217

2. Sü dung Import/Export Wizard........

.. ...217

2.1. Execute SQL...
2.2. Workflow .........l...........

2.3. Cåc d6i tugng Connections
2.4. Thånh phån tåc Transformation

.. ..... 221

......221
.:......221
.......222

.

... .... ...

3. TV too mot Transformation package giån don.

.........222


4. Luu Package........ .

. ...

5. st dung DTS thay thé BCP.
6. Thvc

..211

thi DTS

.

tü döng 1+nh — trinh dtsrun.exe .........l.................
.......

... ...228

Chddng 23 : Bån sao dü lieu (Replication)

229

1. Khåi niérn vé Replication (bån sao) ................................................... .. ..
1.1. NIIå xudt bån (Publisher) ..............................................,.....................................
1.2. Nhå phån ph6i (Distributor) .
1.3. Dang ley dn bån (Subscription) .............................. ...1.........

.229
.229
..............229

.229

2. Cåc kiéu Replication
2.1. Snapshot Replication (sao chép dwa våo dnh dü lieu)
2.2. Merge Replication (sao chép trön)........................ .
2.3. Transactional Replication (sao chép dra våo chuyén tåc) ....,......
2.4. Kidu sao chép hön hgp....

.. 230
.. 230
..231
.232
J.. ..... ...233

3. Cåc mö hinh
..
3.1. Mö hinh chudn
.
3.2. Mö hinh hön hgp.................................................... .

233
...233
.................234

4. Cåi dét Replication cy thé............

.234

4.1. Yéu cåu vé nhå cung cdp thåu (Contrator).............................,...
4.2. Cleanzit .....................................................


4.3. Hogch dinh chudn b/ Replication
4.4. Sit dung Replication Wizard .

. ... .............234
.. ...235

.

..235
.235

... .......

..235
.. 237

4.7. Vö hi?u hod Distribution ......,................
4.8. Sü dung T-SQL cdu hinh Publisher vå
5. Transactional vå Snapshot Publications...............u..................................
5.1. Sd dwng hö trg Create and Manage Publication
5.2. Sau khi cdu
5.3. Sd deng phåt bidu T-SQL dd tgo Publication
6. Hqp nhät cåc xuät bån

7. Teo mot Push Subscription

227
.. 228


7.Két

4.5. Xudt bån (Publishing) vå phån phdi (Distribution)
4.6. Sau khi cdu hinh Publishing vå Distribution...........

227

......238
238
. .......238
.
.

..................238
..:..................240
.......240
.241

... ... 245

7.1. Push Subscription Wizard
7.2. Sd deng phåt bidu T-SQL dé two Subscription ............

8. Pull Subscription

......246

. ..............247



L4p trinh dng dung chuyén nghiép SQLServer 2
12

8.1. Sti deng Pull Subscription
9. K6t chuang.

ké' cd
ChWng 24 : SQL Server 2000 Thié't

dd lieu (Advanced Design)

quan he..
1. Khåi niém co bån vé mö hinh
1.1. Diagram
1.2. Kh6i lieu...
1.3. Logi quan
1.4*Dttbng lién két
1.5.KS'hi?u quan h?
2. Mö hinh logical vå mö hinh vét
2.1. Mö hinh logical......
2.2. Mư hinh
3. Ké't chuang....

24
25

25




25

Chitdng 25 : SQL Server 2000dich vu phån tich (Analysis Services)
1. Khåi ni#m Cdbån vé xü Ij chuyén tåc trVc tuyén........
2. Khåi niém co bån vé phän tfch xü Ij chuyén tåc trVctuyé'n
3. Khåi niém vé Data Mining ......................
4. Chon Iva OLTPhay OLAP......

.

... 25

• ...254
...254
...254
. 254

• ...254
......254
255

• ......255
.... .... 255

7.1. Dec didm cüa Kho dü lieu .............

...255

7.2. Dü lieu trung tom - Data mart...........
7.3. Dich truyén dü


. 255

...255

8. Mư hinh Data Mining............
8.1. ThuQt tổn Data Mining.......
8.2. Analysis Manager............................................................................

9. Teo giåi phåp OLAP..............
10. Teo cc Sd dü lieu OLAP trong Analysis Manager.............
.
10.1. Thém Data Sales Cube
11. Xäy dvng mö hinh Data

......... 256

. ......256
.. ...257
.257

....... 257
..... .... 258

..

12. Két

....................263
.265


Chddng 26 : SQL Server 2000kj thuat tim kié'm (Full-Text Search)
..........

266

.266

2. Cäu trüc cåa Full-Text Search .

5. Két

25

... 258

5.3. Dü lieu hinh khdi...........
6. Cåc 104iILfutrü dü lieu cia OLAP.
6.1. Phuong phåp MOLAP...........
6.2. Phuong phåp ROLAP..........
6.3. Phuong phåp HOLAP.
7. Khåi niérn vé Kho DÜlieu (Data Warehouse).„,...... ..

3. Cäu hinh chi myc vä danh muc cho FT.
3.1. Thiét IQpFT cho cc så dü
3.2. Teo danh mec Full-Text....
3.3. Cho phép bång dü lieu Sitdeng FTS
4. Cü phåp truy vän Full-Text Search...........
4.1. CONTAINS.....
4.2. FREETEXT.......

4.3. CONTAINSTABLE..........
4.4. FREETEXTTABLE....

............................................................„......

.... 25

5. Cd Sd dü lieu da
5.1. Bång dz7lieu thVc té:......
5.2. Bång Da chiöu (Dimensional)

1. Khåi niém co bån vé tim

25

................266
... ... 267

..

.. 267
.267
. 268

. ...270
.271
.. 271
.271
.. 272
.. 272



MVC LUC

13

Chttdng 27 : SQL Server 2000truy va•nti6ng anh (english query)
1. Khåi ni+m co bån

273

truy vän anh ngü (EQ)

........... .........273

2. Truy vän Anh ngü IA gi?..

.. ......... ....273

3. Nhüng tién lgi vå gidi hon cia truy vän Anh

. ..274

4. Cäu trüc cüa ting dung English Query..... ...

.....274

5. Too fing dung English Query ..............
5.1. Teo måi mét ting dung EQ bång Wizard
5.2. Cåu truy vdn Anh ngü cc bån ....

6. Mét s6 cåu truy vän Anh ngü ttfdng fing vdi phåt bi6u SQL......
7. Xåy dvng Ltngdyng EQ.......
8. Két

.274
...................274
276
... ..277
.277

..

.

.... 279

Chitdng 28 : SQL Server 2000båo mat (Security)

280

1. Khåi niém Cdbån vé båo

280

2. Lurachon båo mat.... ... .....
2.1. Sü dwng thü tuc sp_addlogin


280
..„................281


2.2. St? deng trinh diéu khidn EM........

.281

3. Quyén ngubi ding (User Right)
..
3.1. Cdp phåt quyén truy
våo co dz7lieu .................................
3.2. Cdp phåt quyén thvc thi trén cc så dü lieu ..
3.3. Quyén tgo ddi tugng trong cg så dü
.. ....
4. Vai trö cåa nguöi st dung trong SQL Server 2000 vå Cd dü
4.1. Vai trö trén SQL Server 2000 ..................
4.2. Vai trå trén cc så dü
.. ...a..... .... ..
4.3. Sü dung cåc thü tec khai båo mét vai trö................
4.4. Thém mét ngu&isü deng våo
.

282

.......1.....................283
......„..286
.
, ....,...............288

. ...288
.288
..288

..289

5. Mét s6 Båo mat
5.1. Tåi khổn Guest (Guest Account)......................
5.2. cdu hinh cdng TCP/
5.3. Khưng nén st? deng tåi khoån sa....................

.

290

........,............290
...........................290
,l... .....,........l........ 290

6. Két

. ..... ... ...... .... 290

Chitdng 29 : SQL Server 2000quån tri cd

dü lieu SQL Server 2000(Administrator)

1. Khåi niém cc bån vé quån tri Cd dü
2. Lap ké hoech cong vi+c
2.1. Teo
2.2. Tao Jobs vå

291


.

..291

291

.292

2.3. TwoJobs vå Tasks bång T-SQL:....
2.4. Xoå vå quån tri cåc Job trong SQL Server........................................................„

. ... ...295

.. 298
......298

3.1. Backupdü li?u:....
3.2. Backupdü lieu bång EM...
3.3. Su deng T-SQLdé Backupdü lieu
4. Phyc hdi dü lieu - Restore Database

. 71.......298

...299
299

.

'


4.1.
hdi dt lieu bång EM..
4.2. Phvc hdi dü lieu bång T-SQL.....
5. COPY du lieu

300

.

6. Két

300

300
301

..301

Chltdng 30 : SQL Server 2000him he th6ng (Systems Functions)

302

1. Håm he thöng
1.1.

...................................

.........302

1.2.


.302

1.3. @@CURSOR_ROWS...............
1.4. @@DATEFIRST.„........................................................

.. 302

... ..302


Lüp trinh ting dung chun nghiưp SQLServer 2000
.....

1.5.



......

1.6.



•• •



• • • • • •• • •


• 302

• •• • •• • •• •• • ••• • • • •

1.7. @@IDENTITY.................


1.8.
1.9.
1.10.



. 302



300


"

308
303

"

1.11.
1.12.


. 308

1.13.

308
.. 308

..

ERRORS
1.15.
1.16.

•• •

... 308





... ..

...308
..... 303

2. Håm thdưng ding

... 303


2.1. Cåc hånz Aggregate ..................
2.2. Håm cüa kidu d17liéu Cursor.............. .......
2.3. Håm th&i

. 304

...305
• . ...305

2.4. Håm tổn hoc
2.5. Håm vé dü

309

2.6. 1-10m vé mdu

..

.............=......... 311
...... 312

2.7. Håm bdo mat dü liéu.....................
2.8. Håm xü IS' chuöi
2.9. Cåc håm h? th6ng khåc ...............

. ...314

.

317


3. Két

320

Chitdng 31 : Sd dung V•sual Basic 6.0 vdi SQL Server 2000

321

1. Gi6i thiéu t6ng quan vé Ltngdung Visual Basic
2. Xäy d!fng Form....................
3. Doan mä cho cåc Form..................
4. Két n6i Cd

...... 321
.. ... 322
.. 324

dÜ lieu... ..

325

5. Mét s6 phåt biéu c6 diéu
5.1. Phåt bidu IF..........
5.2. Phåt biéu IF.. THEN .. END
5.3. Phåt bidu DO .. UNTIL...............
5.4. Phåt bidu WHILE....

.. ... 326
. 326

. 326
. 326

. 326

6. Too package.............
7, Két chddng.....

..

334

.

335

Phu luc A : SQL Server 2000Lingdung ké' toån (Accounting System)

337

1. Khåi niém Cdbån vé h? th6ng ké
2. Cäu trÉc cc da lieu ké toån
3. So dd cåc module

.. ...337
.........338
.......339

ké tổn....


4. Mư hinh quan hé ERD

mufc

.

.

5. Xäy dvng CdSd dd
•5.1.Xåy dung cc så dü lieu Account............

340

. .. 341

.

.... .... 341
. 341

6. Common Service module

6.1. Xåy dung cdc bång dü lieu..............................................................................
6.2. Xåy dung cåc Module xü IY...........

'

341

342


7. Két chucng....

Phu luc B : SQL Server 2000ké' toån tdng hop (General Ledger - GL)
1. Khåi niưm cc bån vé ké' tổn t6ng hqp....
2. Mư hinh quan
3. Ké tổn t5ng hqp - General Ledger (GL)........ ..... ... .
3.1. Xåy dung

........ .

3.2. Xåy dung Module xd IS'mdu tin ................ . .

345
. 345

.345
. 346

. 346
. 349


MVC LUC

15

3.3. Xåy dvng Module tinh toån....
4. Két


.351

.

..

Phu luc C : SQL Server 2000 ké' toån cåc khoån phåi thu (Account Receiveable - AR)
1. Khåi ni+rn

356

357

bån vé he thö'ng ké

.......357

2. MOhinh quan

...357

3. Account Receiveable(AR)- Cåc khoån phåi
3.1. Xåy dung bång cong ng
3.2. Xåy dung cåc thti tec xtt IYcong ng
3.3. Cåc thti tec tinh cöng ng

.
.

4. Két


.

....................358
. ...358
..359
.......363
...365

Phu lgc D : SQLServer 2000 ké' toån cåc khoån phåi trå (AccountPayable - AP)

366

1. Khåi niQmCdbån vé cåc khổn phåi trå.....

.366

2. Mư hinh quan

..366

3. Account Payable (AP) - Cöng ng phåi trå....
3.1. Xåy dung bång dü li?u......
3.2. Xåy dung cåc thü tec xtt IS'cöng ng phåi
3.3. Cåc thii tec tinh cöng ng chi

.

4. Két chucng...........


„...........374

Phu luc E : SQL Server 2000ké' toån tan kho (Inventory Control - IC)
1. Inventory Control (IC) - T6n kho

1.1. Xåy dung bång dü
1.2. Xåy dung cåc thü tec xü IS'tdn
2. Xåy dvng cåc thü tyc tinh tön kho

375
. ... ...375

.

2.1. Mét Sd thü tec plug

2.2. Thü tec tinh tdn kho theo phztcngphåp Average.......... .
3. Két

.. .. ..367
.367
.368
.....................372

.375
..378
.381
. .. 381

. ...384

..... ......... 394



×