Académique Documents
Professionnel Documents
Culture Documents
com
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Môc Lôc
I. Giíi thiÖu chung - Tæng quan vÒ SQL Server (4 - tiÕt).
II. ThiÕt kÕ CSDL (4 - tiÕt).
III. C¬ së d÷ liÖu trong Microsoft SQL Server (8 - tiÕt)..
IV. C¸c thµnh phÇn cña CSDL(12 - tiÕt)..
V. Qu¶n trÞ vµ khai th¸c CSDL (8 - tiÕt).
VI. T×nh h×nh ph¸t triÓn CSDL thèng kª trªn SQL Server trong
thêi gian qua vµ KÕt luËn (4 - tiÕt).
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
+ Dïng lÖnh Transact SQL viÕt c¸c thñ tôc l−u tr÷ nh»m gäi tõ xa ®Ó
cËp nhËt vµo CSDL cña SQL Server.
5) SNMP :
Hç trî cho giao thøc qu¶n trÞ m¹ng, cho phÐp bÊt cø øng dông nµo còng
cã thÓ cËp nhËt ®iÒu khiÓn SQL Server th«ng qua SNMP.
6) Database Maintenance Plan Wizard:
Cho phÐp tiÕn hµnh viÖc b¶o tr× CSDL theo kÕ ho¹ch.
7) OLAP Server:
Cung cÊp cho ng−êi dïng c¸c dÞch vô ®Ó thiÕt lËp ®Çu ra (report) theo
nhu cÇu cña ng−êi dïng tin. RÊt tiÖn lîi cho ng−êi ph©n tÝch sè liÖu.
Chó ý:
+ Kh«ng h¹n chÕ sè l−îng m¸y tr¹m truy nhËp vµo Microsoft SQL Server vµ
mäi m¸y tr¹m ®iÒu ph¶i cã giÊy phÐp truy nhËp, l−u l−îng giao dÞch cao, æn
®Þnh.
+ Phï hîp cho c¸c m«i tr−êng mµ t¹i thêi ®iÓm chØ cã mét sè nhÊt ®Þnh c¸c
m¸y tr¹m truy nhËp vµo Microsoft SQL Server. M¸y cung cÊp dÞch vô trùc
tuyÕn lµ mét vÝ dô: NÕu ta chØ cã 32 ®−êng ®iÖn tho¹i cho kh¸ch hµng th× t¹i
mét thêi ®iÓm chØ cã nhiÒu nhÊt 32 kh¸ch sö dông Microsoft SQL Server .
1.4. Cµi ®Æt.
VÞ trÝ cµi ®Æt ngÇm ®Þnh Microsoft SQL Server 7.0 lµ c:\MSSQL7\
Tr−íc khi cµi ®Æt Microsoft SQL Server b¹n ph¶i biÕt Ph©n bæ ®Üa víi
c¸c møc ®é RAID: RAID 1 vµ RAID 0+1 b¶o vÖ d÷ liÖu vµ cã hiÖu suÊt tèt
nhÊt trong c¸c møc ®é RAID nh−ng gi¸ thµnh l¹i cao h¬n giíi h¹n ®Üa yªu
cÇu. RAID 5 cã gi¸ thµnh phï hîp nhÊt nh−ng l¹i lµ sù kÕt hîp cña RAID 1
vµ RAID 0+1 bëi viÖc t¨ng thªm phÇn vµo/ra nªn RAID 5 ph¶i ®äc vµ ghi
th«ng tin vµo ®Üa víi sè lÇn t−¬ng ®−¬ng nhau. Do ®ã, viÖc sö dông RAID 5
kh«ng hiÖu qu¶ b»ng RAID 1 vµ 0+1.
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
HiÖu suÊt vµo/ra ®Üa tèt nhÊt ®¹t ®−îc víi RAID 0 (®Üa kh«ng ®−îc
b¶o vÖ), chó ý sù kh¸c nhau gi÷a RAID 0, RAID 1, RAID 5 vµ RAID 0+1 vµ
®Ó chøa ®−îc néi dung cña 4 ®Üa d÷ liÖu, RAID 1 (vµ RAID 0+1) cÇn 8 ®Üa,
trong khi ®ã RAID 5 cÇn 5 ®Üa.
Tempdb lµ mét c¬ së d÷ liÖu néi bé ®−îc sö dông nh− mét vïng lµm
viÖc ®−îc chia sÎ cho nhiÒu ho¹t ®éng, bao gåm c¸c b¶ng t¹m thêi, s¾p xÕp
vµ c¸c hµm tæng hîp. Tempdb lµ mét vïng hçn hîp ®−îc t¹o l¹i mçi lÇn
khëi ®éng SQL Server vµ mçi lÇn cËp nhËt. RAID 1 hoÆc 0+1 lµ lùa chän tèt
h¬n RAID 5 cho tempdb. V× tempdb ®−îc x©y dùng l¹i mçi lÇn khëi ®éng
l¹i m¸y chñ c¬ së d÷ liÖu. RAID 0 cung cÊp hiÖu suÊt RAID cao nhÊt cho
tempdb víi sè lÇn ghi vËt lý Ýt nhÊt. Lý do chÝnh liªn quan ®Õn viÖc sö dông
RAID 0 cho tempdb trong m«i tr−êng ho¹t ®éng lµ SQL Server cÇn dõng l¹i
vµ khëi ®éng l¹i bÊt cø khi nµo x¶y ra lçi ghi vËt lý trong ph©n bè RAID 0,
®iÒu nµy kh«ng ®óng cho tr−êng hîp tempdb trong ph©n bè RAID 1 hoÆc
0+1.
Master device: C:\MSSQL7\data\master.dat
8) Book online:
TËp c¸c trî gióp cho c¸c thµnh phÇn cÊu thµnh Microsoft SQL Server.
H−íng dÉn cho b¹n sö dông nh− thÕ nµo Microsoft SQL Server 7.0.
C¸c lùa chän cµi ®Æt cã ®Æt tr−ng:
TËp ký tù: Kh«ng thÓ ®æi l¹i mµ kh«ng x©y dùng CSDL gåm 256 ch÷,
sè ký tù ®Æt biÖt ®Æt tr−ng cho mçi quèc gia hay cho mét ng«n ng÷ nµo ®ã.
ChuÈn Latin1-ANSI: NgÇm ®Þnh cho:
+ UNIX
+ VMS víi Sybase
+ Window, Windows Windows NT
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
ChuÈn CP 850: Gåm mäi ký tù cho hÇu hÕt c¸c quèc gia ch©u ¢u, B¾c, Nam
Mü.
ChuÈn CP 437: ChØ dïng khi cã øng dông dïng ký tù ®å hä¹ më réng.
Thø tù s¾p xÕp: (Indexes)
Lµ tËp c¸c quy t¾c x¸c ®Þnh xem Microsoft SQL Server xö lý d÷ liÖu tr¶
lêi cho mÉu c©u hái ®−îc lùa chän phô thuéc vµo tËp ký tù, nã (Indexes) rÊt
quan träng v× ¶nh h−ëng trùc tiÕp ®Õn :
+ TËp kÕt qu¶ - VÝ dô: ch÷ hoa vµ ch÷ th−êng N kh¸c n
+ HiÖu suÊt: lµm t¨ng tèc ®é xö lý nÕu vÝ dô A=a kh«ng cÇn ph©n biÖt (A
kh¸c a, B kh¸c b.. ..)
+ Ph¸t triÓn øng dông cho tr¹m : rÊt nh¹y c¶m cho viÖc ph©n biÖt ch÷ hoa vµ
ch÷ th−êng.
Ng−êi sö dông ph¶i biÕt ph©n biÖt lóc nµo ch÷ hoa, lóc nµo ch÷ th−êng.
§æi l¹i trËt tù s¾p xÕp dÉn ®Õn “ x©y dùng l¹i CSDL” ng−êi sö dông vµ
CSDL master v× th«ng tin hÖ thèng vµ CSDL, b¶ng hÖ thèng ®−îc s¾p xÕp
theo trËt tù ®−îc chØ ra, (HiÖu suÊt quy nhËp cao, tr¸nh hiÖn t−îng t¾c nghÏn
®−êng truyÒn)
*) Chän hç trî m¹ng:
Mäi m¸y ®Òu cÇn giao thøc m¹ng vµ th− viÖn m¹ng(Net-Library)
+Giao thøc m¹ng: giao thøc liªn l¹c gi÷a hai m¸y.
+Net-Library: cho phÐp kÕt nèi gi÷a tr¹m vµ Microsoft SQL Server
Net-Library triÓn khai nh− DLL thùc hiÖn thao t¸c m¹ng cÇn ®Ó giao tiÕp sö
dông giao thøc ®−îc chØ ra. Microsoft SQL Server dïng Net-Library ®Ó
chuyÓn c¸c gãi th«ng tin gi÷a tr¹m vµ Microsoft SQL Server.
Named pipes: (NgÇm ®Þnh-kh«ng ®−îc bá) NÕu cÇn tÝch hîp b¶o mËt víi
Windows NT th× ph¶i cã Named Pipes hay MP Net-Library.
Named pipes cung cÊp kh¶ n¨ng giao tiÕp gi÷a tr¹m vµ Microsoft SQL Server
vµ cho phÐp truy nhËp ®Õn tµi nguyªn m¹ng ®−îc chia sÎ. Tªn ngÇm ®Þnh:
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Sau ®ã lÇn l−ît cµi ®Æt theo h−íng dÉn cña ch−¬ng tr×nh Microsoft SQL
Server .
Ngoµi ra cßn cã Web site, Book online, OLAP service
Trong Microsoft SQL Server 7.0 Component gåm cã hai lùa chän:
+ Microsoft SQL Server 7.0 Standard Edition
+ Microsoft SQL Server 7.0 Desktop Edition
C¸c thµnh phÇn cÊu thµnh Microsoft SQL Server :
1) Service manager:
Qu¶n lý cung cÊp c¸c dÞch vô cña Microsoft SQL Server
Nót Auto-start service when OS start: khi b¹n check vµo ®©y th× khi m¸y
khëi ®éng xong th× tÊt c¶ c¸c dÞch vô khëi déng theo sù cµi ®Æt cña b¹n.
2) OLAP Service:
Cung cÊp c¸c dÞch vô øng dông nh»m cung cÊp th«ng tin cho ng−êi sö
dông, kh¸ch hµng vµ c¸c SQL Server kh¸c.
Chó ý:
NÕu b¹n xo¸ OLAP Serveice th× b¹n kh«ng ®−îc xo¸ RESPOSITORY.
3) Client Network Utility:
Cung cÊp th− viÖc m¹ng hç trî cho Microsoft SQL Server qu¶n lý CSDL
vµ giao dÞch trªn m¹ng. Cã hiÖu suÊt cao khi trao ®æi th«ng tin.
4) SQL Enterprisse Manager:
Qu¶n lý toµn bé quyÒn kÕt xuÊt, thiÕt lËp CSDL, t¹o quyÒn b¶o mËt d÷
liÖu.. . cña Microsoft SQL Server . Gåm cã c¸c ®èi t−îng sau:
*) Database : Trung t©m l−u tr÷ th«ng tin cña CSDL cña Microsoft SQL
Server
*) Data Transformation Service: Trung t©m qu¶n lý c¸c dÞch vô, cung cÊp
c¸c dÞch vô nh»m chuyÓn ®æi CSDL tõ d¹ng nµy sang d¹ng kh¸c.
*) Management: §iÒu khiÓn qu¶n lý c¸c ho¹t ®éng cña c¸c ®èi t−îng truy
cËp vµo Microsoft SQL Server .
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
*) Security: Qu¶n lý c¸c mèi quan hÖ, liªn kÕt , vµ quan träng nhÊt lµ chÕ
thiÕt lËp b¶o mËt CSDL (xa hay gÇn) cña Microsoft SQL Server
*) Support Service: B¹n cã thÓ thªm c¸c lo¹i dÞch vô cÇn thiÕt mµ b¹n cÇn sö
dông vµo ®©y.
+ DT Coordinator:
+SQL Mail.
*) Import and Export data:
Cho phÐp ng−êi dïng c¸c tiªu thøc ®Ó truy xuÊt ra c¸c d¹ng d÷ liÖu cÇn
thiÕt. Trong ®ã cho phÐp b¹n sö dông c¸c c«ng cô lËp lÞch, c¸c hµm øng
dông cã thÓ.
*) Microsoft DTC Administrator Console: Cung cÊp c¬ chÕ l−u tr÷ CSDL
hai giai ®o¹n an toµn, qu¶n lý viÖc xö lý giao dÞch trªn m¹ng
C¸c c¬ chÕ nµy trî gióp c¸c øng dông cËp nhËt hai hay nhiÒu chiÒu gi÷a c¸c
®èi t−îng trªn Microsoft SQL Server .
Trî gióp c¸c øng dông viÕt b»ng lÖnh Transact SQL trong c¸c thñ tôc SP
(stored Procedure) vµ gäi c¸c thñ tôc SP xa kh¸c ®Ó cËp nhËt vµo CSDL cña
Microsoft SQL Server.
*) ProFile:
+ Cho ng−êi sö dông kÕt nèi vµo ra CSDL cña Microsoft SQL Server.
+ Thùc hiÖn tõng khèi c«ng viÖc.
+ Thùc hiÖn c¸c lÖnh trong c¸c thñ tôc SP ®−îc gäi ®Õn.
+ Gi¶i quyÕt c¸c bÕ t¾c cña Microsoft SQL Server vµ th«ng b¸o lçi.
Tools cña ProFile cung cÊp cho chóng ta c¸c chøc n¨ng sau:
+ Registry SQL Server:
§¨ng ký c¸c nhãm (group) ®Ó truy nhËp vµo Microsoft SQL Server
+ Edittion SQL Server Registration: CÊu h×nh cña Microsoft SQL Server
+ SQL Server Query Analyzer:
10
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
KÕt nèi vµo Microsoft SQL Server database b»ng c¸c c¸c user_login hay
SA (ngÇm ®Þnh).
+ SQL Server Enterprise Manager:
+ SQL Server Client Configuration Utility.
CÊu h×nh cña c¸c mèi liªn kÕt trong Microsoft SQL Server
+ Option :
C¸c lùa chän cÊu h×nh cho profile
11
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
5) OK
*) Microsoft SQL Server query Analyzer: Cho phÐp ng−êi dïng kÕt nèi vµo
Microsoft SQL Server b»ng user_name hay logon_ID cã password (user do
ng−êi dïng(Admin) ®Þnh nghÜa)
*) Server Network Utility: Cung cÊp th«ng tin cÊu h×nh cña SQL Server, c¸c
giao thøc mµ nã ®ang sö dông, tªn Server.. .. Còng nh− cho phÐp ng−êi dung
thiÕt lËp giao thøc truyÒn tin
12
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
13
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
14
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
15
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
+ Cã cÊu tróc.
+ DÔ dµng söa ch÷a, Update, modify d÷ liÖu
+ DÔ dµng khai th¸c th«ng tin.
+ DÔ dµng ph¸t triÓn vµ x©y dùng c¸c øng dông (application)
Table vµ c¸c thµnh phÇn cña TABLE.
D÷ liÖu: Lµ th«ng tin ®−îc chøa trong c¸c cét cña mçi TABLE vµ gäi lµ
hµng d÷ liÖu(Hay record – b¶n ghi d÷ liÖu).
VÝ dô:
Kh¸nh 65kg 1,69 kinh
Th«ng tin cña d÷ liÖu :
Lµ gåm c¸c m« t¶ vÒ cÊu tróc c¸c d÷ liÖu vµ th«ng tin ng÷ nghÜa cña d÷
liÖu ®ã. VÝ dô:
Tªn C©n nÆng Cao D©n téc
Kh¸nh 65kg 1,69 kinh
.. .. ..
B¶ng d÷ liÖu:
B¶ng (Table) bao gåm Tªn, cÊu tróc c¸c tr−êng d÷ liÖu, kiÓu d÷ liÖu cña
tr−êng d÷ liÖu.. .. t¹o thµnh c¸c hµng (record) d÷ liÖu.
Th«ng tin ë trong mçi b¶ng (TABLE) ph¶i m« t¶ ®Çy ®ñ vÒ mét ®èi
t−îng nµo ®ã hoÆc ®−îc kÕt nèi víi mét sè c¸c table kh¸c cã mèi liªn hÖ víi
®èi t−îng nµy. Kh«ng ®−îc cã hiÖn t−îng d− thõa th«ng tin cÇn m« t¶, vÝ dô
nh− c¸c th«ng tin vÒ ng−êi, kh¸ch hµng.. (mét CSDL ph¶i ®¶m b¶o c¸c yªu
cÇu c¬ b¶n vÒ thuyÕt CSDL kiÓu quan hÖ).
16
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Kho¸:
Kho¸ lµ tËp hîp c¸c tuéc tÝnh ®éc lËp víi nhau cã ng÷ nghÜa nhÊt ®Þnh,
®−îc m« t¶ trong c¸c b¶ng (table) cña CSDL co môc ®Ých liªn kÕt gi÷a c¸c
b¶ng(table) víi nhau. Cã hai møc kho¸ chÝnh lµ
+ Primary Keys: Kho¸ trong (Xem phÇn kho¸)
+ Foreign Keys: Kho¸ ngoµi
Indexes:
§iÒu quan trong nhÊt lµ thø tù s¾p xÕp d÷ liÖu trong c¸c table cña CSDL
lµ bëi v× nã quyÕt ®Þnh ®Õn hiÖu suÊt truy cËp, tèc ®é vµ còng nh− ®é chÝnh
x¸c cña d÷ liÖu.(Xem thªm phÇn INDEXES)
17
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
2.2. C¸c c«ng viÖc cÇn chuÈn bÞ tr−íc khi thiÕt kÕ.
- Môc ®Ých lËp CSDL
- Thu thËp th«ng tin
- X¸c ®Þnh ®èi t−îng
- X¸c ®Þnh kiÓu th«ng tin cho mçi ®èi t−îng
- X¸c ®Þnh c¸c quan hÖ vµ kiÓu quan hÖ
18
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
*) Quan hÖ cña c¸c kho¸ ph¶i ®éc lËp – tøc lµ kh«ng ®−îc chång chÐo lªn
nhau.( §¶m b¶o ®−îc tÝnh ®éc lËp d÷ liÖu – Tøc lµ tÝnh bÊt biÕn d÷ liÖu víi
thêi gian)
VÝ dô:
Cust_ID Name Adress Title_ID
123 Khanh HN 1
124 Thu §N 2
Title_ID Title
1 Tranning
2 Work
19
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
2 B Thu
Lop Khoi
A Khèi A
B Khèi
20
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Teo A A1
Thu B B1
Thanh C C1
Kha A A1
Chó ý:
- Lêi nh¾c cho c¸c C¬ quan, kh¸ch hµng còng nh− ng−êi sö dông nãi chung:
C¸c gi¸ trÞ ®−îc m« t¶ trong c¸c tr−êng d÷ liÖu lµ rÊt quan träng, mçi khi c¸c
®Æc tr−ng cña c¸c tr−êng d÷ liÖu cña c¸c table kh«ng râ rµng , kh«ng m« t¶
hÕt ý nghÜa sè liÖu lµm cho ng−êi sö dông hay ng−êi thiÕt kÕ CSDL hiÓu sai
lÖch vÒ th«ng tin th× nh− thÕ nã sÏ ¶nh h−ëng ®Õn quan hÖ trong CSDL
(Roles, Default, Stored Procedure, Backend).
- NÕu b¹n cµi ®Æt Microsoft SQL Server trªn m¸y chñ Windows NT th× cÇn
ph¶i t¹o kho¶n môc Windows NT cho SQL Excutive.
Cã hai d¹ng kho¶n môc:
+ Kho¶ng môc Windows NT víi quyÒn qu¶n trÞ SQL Excutive tr−íc khi cµi
®Æt cÇn quyÒn ®ã ®Ó lËp lÞch cho nhiÖm vô vµ c¶nh b¸o còng nh− ph¸t t¸n.
HoÆc t¹o kho¶n môc trong Account Domain ®Ó chia sÎ cho c¸c SQL Server
kh¸c hoÆc t¹o kho¶n môc t¹i m¸y cµi ®Æt.
+ T¹o kho¶n môc víi user manager for Domain:
Gåm:
21
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
*) Nh¸y ®óp vµo Group -> Chän Administrator -> Add -> OK
*) Close
Trong Policies chän User Rigths cho quyÒn truy cËp CSDL
LOGON AS A Service: Chän Add Æ Chän SQL Exec ÆAdd Æ OK hoµn
thµnh.
C¸c th«ng tin cã thÓ truy cËp tõ xa:
-Remote Server Name: Tªn cña m¸y Server truy cËp tõ xa.
-SQL Installation drive: Tªn æ ®Üa cña m¸y xa ®Ó cµi ®Æt.
-Windows NT installation Drive: Tªn æ ®Üa mµ Windows NT cña m¸y xa
®−îc cµi.
-Master database installation Drive: Tªn æ ®Üa xa ®Ó cµi CSDL Master
C¸c dÞch vô chÝnh:
+Microsoft SQL Server : Bé m¸y CSDL
+SQL Executive: §èi t−îng dÞch vô vµ cÊu thµnh qu¶n lý.
+Microsoft DTC : Qu¶n trÞ qu¸ tr×nh giao dÞch vµ ph©n t¸n.
C¸c thµnh phÇn qu¶n lý Service:
+ SQL Service manager.
+ SQL Enterprise manager
22
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
23
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
c¸c kho¸ kh«ng d− thõa th«ng tin th× Diagram sÏ cho ta mét m« h×nh
quan hÖ cña CSDL mµ b¹n ®· thiÕt kÕ.
Chó ý:
NÕu c¸c mèi liªn kÕt kh«ng tù ®éng kÕt nèi th× c¸c b¹n ph¶i dïng chuét
chØ vµo kho¸ cÇn liªn kÕt (øng dông hiÖu øng Drap and drop) ®Ó kÕt nèi mèi
liªn kÕt nµy, khi b¹n kÐo ®Õn kho¸ thø hai cÇn kÕt nèi SQL Server tù ®éng
hiÖn lªn tªn cña hai kho¸ mµ b¹n cÇn kÕt nèi. Khi nµy b¹n chØ viÖc chän nã.
VÝ dô : Ta cã c¸c lo¹i table sau: khi ta chän xong c¸c b¶ng ®−îc kÕt nèi vµ
nhÊn nót Finish th× ngay lËp tøc Diagram sÏ cho ta m« h×nh quan hÖ sau.
24
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Server Enterprise manager hay viÕt c¸c ch−¬ng tr×nh SQL (thñ tôc l−u tr÷ -
Stored Procedure), trong ng«n ng÷ Transact SQL víi mét sè cã h¹n c¸c phÇn
tö ®å ho¹.
Sö dông DMO cho phÐp ta x©y dùng c¸c ®iÒu khiÓn trong VB,
VC++,VFP.. ®Ó lÊy sè liÖu tõ Microsoft SQL Server vµ øng dông c¸c ®iÒu
khiÓn ®å ho¹ (®· cã) trong VB, VC++,VFP.
ThÕ nµo lµ DMO?
DMO lµ tËp hîp c¸c ®èi t−îng OLE 32 bit cho phÐp c¸c ch−¬ng tr×nh
truy nhËp ®Õn c¸c chøc n¨ng qu¶n trÞ Microsoft SQL Server . DMO cho phÐp
ng−êi sö dông qu¶n trÞ CSDL ph©n t¸n. ChÝnh DMO më thªm søc m¹nh cña
chøc n¨ng qu¶n lý cña Microsoft SQL Server cho mäi tr¹m trong m¹ng. V×
Microsoft SQL Server triÓn khai DMO nh− ®èi t−îng DLE nªn ta chØ cã thÓ
dïng nã tõ c¸c øng dông 32 bit (trong c¸c c«ng cô VB, VC++,VFP.. .) ®iÒu
cã hç trî 32 bit. (Còng cã thÓ t¹o thµnh c¸c Tools khi chóng ta dÞch c¸c øng
dông nµy thµnh DLL hay OCX )
Sau ®©y lµ m« h×nh kiÕn tróc 3 líp cña SQL Server DMO
øng dông
SQl Server
Enterprise manager Giao diÖn OLE
Líp gi÷a vµ lµ
cÇu ®Õn c¸c øng
SQL Server Distributed Management Object dông qua giao
diÖn OLE
25
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
DMO ®−îc tæ chøc ph©n cÊp nh− h×nh vÏ d−íi ®©y, ®èi t−îng øng dông
(Application) n»m ë ®Ønh cña tæ chøc DMO. SQL Server lµ ®èi t−îng n»m
d−íi ®èi t−îng øng dông. Mét ®èi t−îng SQL Server chøa mét hay nhiÒu ®èi
t−îng CSDL. Mét ®èi t−îng CSDL chøa c¸c ®èi t−îng b¶ng DMO vµ c¸c ®èi
t−îng kh¸c cña SQL Server nh− Trigger, Views, hay Stored procedure.. ) Mçi
bËc cña ph©n cÊp DMO chøa c¸c ®èi t−îng liªn quan ®Õn bËc ®ã.
VÝ dô: BËc cña SQL Server chøa c¸c Device, login,.. Ph©n cÊp nµy gièng
nh− tæ chøc CSDL cña SQL Server Enterprise.
26
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Application
SQL Server
Backup
CSDL
Device
Permission Table
DB Object
Login
Stored Column
Query result Procedure
Language View Dri-default
Rule Index
-Remote Server
History filter -Remote login
-SubscriberInfo Default Trigger
Name
Configuration
-Config value User
Keys
Property
Executive DBOption
-Task Check
-Alert system
Transaction
Registry Log
SysTem data
Intergrate Type
security
User defined
datatype
Alert
Publication
Operator -Article
-Subscription
27
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
28
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
29
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
1) ThiÕt kÕ CSDL(database):
Lµm thÕ nµo ®Ó thiÕt kÕ database?
- Chän Database->NhÊn nót ph¶i chuét->New database
- NhËp tªn CSDL (Database_name) vµo Name:
- C¸c th«ng sè Filename, location, Initial size (MB) :cÇn ph¶i phï hîp
víi CSDL mµ b¹n ®· thiÕt kÕ.
- File Group: ngÇm ®Þnh lµ PRIMARY.
- NÕu b¹n muèn thay ®æi c¸c gi¸ trÞ ngÇm ®Þnh th× b¹n ph¶i thay ®æi nã
b»ng c¸ch nhÊn chuét vµo Transaction Log.
30
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
31
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
32
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
+ Update text
+ Write text
+ Select into statement
+ BCP .. ..
+ Bulk insert statement
4) Truncate logon/Checkpoint
Cho phÐp thùc hiÖn lÖnh CHECKPOINT
5) Auto close
6) Auto Shrink: tù ®éng gi¶m kÝch cì cña file
7) Auto create statistic
8) Auto Update statistic
9) Use quated Indentifiers
33
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
“Kho¸ trong” lµ tr−êng d÷ liÖu (kho¸) chØ tån t¹i duy nhÊt trong hµng d÷
liÖu cña mét table. Kho¸ trong kh«ng chÊp nhËn gi¸ trÞ NULL
+ Foreign key :
“Kho¸ ngoµi” lµ 1 hay nhiÒu tr−êng d÷ liÖu ®−îc thiÕt lËp ®Ó kÕt nèi
quan hÖ (liªn kÕt) gi÷a c¸c table víi nhau
+ To¸n tö UNIQUE :
To¸n tö UNIQUE cã thÓ gióp cho ng−êi sö dông nã thay cho kho¸ trong
v× :
a) Trong mét cét kh«ng bao giê cho phÐp cã hai gi¸ trÞ kh¸c hµng l¹i
gièng nhau
b) NÕu b¹n sö dông nhiÒu to¸n tö UNIQUE th× cã nghÜa lµ trong table ®ã
cã nghiÒu “kho¸ trong” ®−îc ®Þnh nghÜa
c) Cét cã chøa gi¸ trÞ null th× kh«ng thÓ lµ primary key nh−ng ta cã thÓ
dïng to¸n tö nµy ®Ó sö dông.
+ To¸n tö Check :
CHECK b¾t buéc h¹n chÕ trªn ph¹m vi toµn bé giíi h¹n gi¸ trÞ cã thÓ
chÊp nhËn cña c¸c cét. Nã chØ ®Þnh c¸c gi¸ trÞ hîp lÖ tho¶ m·n biÓu thøc
logic c¬ b¶n cña c¸c cét d÷ liÖu kh¸c.
+§Þnh nghÜa Default :
Mçi cét trong record chøa c¸c gi¸ trÞ, nÕu nã ngÇm ®Þnh lµ NULL th× nã
thay thÕ gi¸ trÞ NULL nµy b»ng gi¸ trÞ ngÇm ®Þnh Default. Gi¸ trÞ ngÇm ®Þnh
cña nã lµ “UNKNOW” khi chóng ta kh«ng chØ ®Þnh ®−îc gi¸ trÞ cho cét ®ã.
3.4. ChuyÓn c¸c files d÷ liÖu tõ m«i tr−êng ngoµi vµo CSDL
- Ngoµi ra ta còng cã thÓ sö dông mét sè lÖnh cña Transact SQL ®Ó thùc
hiÖn chuyÓn ®æi d÷ liÖu. VÝ dô nh− lÖnh :
+ BCp database_name..Tablename
34
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
35
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Víi h×nh trªn b¹n ph¶i vµo ®ñ th«ng tin d÷ liÖu nguån:
+ Chän server.
+ Chän sè liÖu nguån
Sau khi chän xong hai thµnh phÇn trªn b¹n cÇn ph¶i x¸c ®Þnh kiÓu d÷ liÖu
xuÊt/nhËp ra.
Sö dông: Windows NT hay SQL Server
NÕu b¹n chän SQL Server th× ph¶i cung cÊp thªm Logon_ID, password
+Chän database : Th−êng gi¸ trÞ ngÇm ®Þnh cña nã lµ default.
B¹n nªn lµm t−¬i (Refresh) l¹i mét lÇn -> Next ->OK
36
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Víi h×nh trªn b¹n ph¶i vµo ®ñ th«ng tin d÷ liÖu ®Ých:
T−¬ng tù nh− c¸c b−íc trªn b¹n chän tõng b−íc mét -> Sau ®ã chän Next.
Khi ®ã b¹n ph¶i chän c¸c lo¹i b¶ng nguån ®−îc xuÊt/nhËp, copy hay c¸c
query nguån cÇn chuyÓn ®æi -> Next -> OK
NÕu b¹ chän sai d÷ liÖu th× kÕt qu¶ sÏ kh«ng ®óng . V× vËy ph¶i cÈn
thËn khi chän sè
Víi h×nh d−íi b¹n ph¶i chän c¸c cét(tr−êng) cÇn kÕt xuÊt sau ®ã
NhÊn vµo nót Finish ®Ó hoµn thµnh c«ng viÖc
37
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Víi h×nh d−íi b¹n ph¶i chän lo¹i d÷ liÖu cÇn ®−îc kÕt xuÊt ra theo c¸c
d¹ng :
+ Runtime immediately.
+ Create DTS package for replication
+ Shedule DTS package for later execution
SAVE DTS package:
+ SQL Server: D÷ liÖu d¹ng table SQL server
+Respository: §ãng gãi vµo DTS->Respository package
+File: D¹ng file
38
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
39
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
-nChar
-nVarchar
-nText
-DateTime KiÓu thêi gian (8Byte)
- Smalldatetime (4byte)
-Int (-2.147.483.648,+ 2.147.483.647)
-Smallint (-32.768,+ 32.767)
-Tinyint 0..255
-Decimal
- Numeric
-Float KiÓu sè thùc (8 bytes)
-Real
-Timestamp (0,1)
-Bit(On,OFF)
-(Tru,false)
40
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
41
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
3) Dïng c¸c lÖnh trong bé Transact SQL ®Ó so¹n th¶o trong « TEXT:
Khi so¹n th¶o xong b¹n nªn thùc hiÖn CHECK Syntax.
B¹n h·y dïng c¸c c«ng cô hç trî trªn thanh Toolbar ®Ó lµm viÖc víi
Views.
V× Views lµ d¹ng query nªn ta còng thiÕt lËp quyÒn Permission cho nã.
42
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
ThiÕt lËp quyÒn cho Views hoµn toµn t−¬ng tù nh− thiÕt lËp quyÒn cho
database, nã gåm cã c¸c b−íc chÝnh nh− vËy.
Trong nhãm 1: user/DB roles/Public
Gåm c¸c login_ID vµ c¸c nhãm lµm viÖc .
Nhãm 2: TËp c¸c lÖnh trong Transact SQL
NÕu b¹n check vµo « nµo cña user/nhãm nµo th× user/nhãm ®ã ®−îc
quyÒn sö dông lÖnh ®ã.
Sau khi ®· check c¸c quyÒn hoµn thµnh -->TiÕp tôc nhÊn nót OK (cã thÓ
nhÊn Apply)
TiÕp theo (l¸t c¾t thø hai trong Views) lµ chän c¸c tªn cét d÷ liÖu
(field_name) trong c¸c b¶ng ®· ®−îc chän ®Ó ®−a ra trong Views .(h×nh sau)
Sau khi chän xong c¸c cét d÷ liÖu, SQL server tù ®éng biªn dÞch c¸c thao
t¸c cña b¹n thµnh ng«n ng÷ Transact SQL ®−îc l−u gi÷ trong (nguån –Text)
cña Views.
43
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Ngoµi ra b¹n còng cã thÓ check trªn c¸c table ®· ®−îc thªm (Add) vµo
trªn l¸t c¾t thø nhÊt. (trªn s¬ ®å quan hÖ cña CSDL)
4.3. Kho¸.
Kho¸ lµ tËp hîp c¸c tuéc tÝnh ®éc lËp víi nhau cã ng÷ nghÜa nhÊt ®Þnh,
®−îc m« t¶ trong c¸c b¶ng (table) cña CSDL co môc ®Ých liªn kÕt gi÷a c¸c
b¶ng(table) víi nhau. Cã hai møc kho¸ chÝnh lµ
+ Primary Keys: Kho¸ trong (Xem phÇn kho¸)
+ Foreign Keys: Kho¸ ngoµi
+ Primary key:
“Kho¸ trong” lµ tr−êng d÷ liÖu (kho¸) chØ tån t¹i duy nhÊt trong hµng d÷
liÖu cña mét table. Kho¸ trong kh«ng chÊp nhËn gi¸ trÞ NULL
+ Foreign key :
“Kho¸ ngoµi” lµ 1 hay nhiÒu tr−êng d÷ liÖu ®−îc thiÕt lËp ®Ó kÕt nèi
quan hÖ (liªn kÕt) gi÷a c¸c table víi nhau
4.4. Thñ tôc ghi nhí
-ThÕ nµo lµ Stored procedure?
Lµ tËp hîp c¸c thñ tôc ®−îc thiÕt lËp ®Ó qu¶n lý, xö lý vµ trao ®æi th«ng
tin víi c¸c øng dông víi SQL server.
44
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Mçi khi b¹n thiÕt lËp c¸c øng dông trªn SQl Server, Transact SQl lµ giao
diÖn quan träng nhÊt gi÷a SQL Server database vµ øng dông, khi ®ang sö
dông ch−¬ng tr×nh Transact SQL cã hai kh¶ n¨ng thuéc tÝnh x¶y ra nh− sau:
+ Mçi ch−¬ng tr×nh sÏ ®−îc g¸n trong ph¹m vi côc bé ë client . VÝ dô Visual
Basic göi mét lÖnh ®Õn SQl Server th× nã ®· ®−îc xö lý.
+ HoÆc lµ ch−¬ng tr×nh nµy sÏ tËp trung t¹i SP trong SERVER.
• Sö dông SP cã lîi Ých h¬n lµ sö dông lÖnh Transact SQL ë m¸y client
lµ bëi v×:
1) Thùc hiÖn nhanh
2) Gi¶m l−u l−îng giao dÞch trªn m¹ng
3) B¶o mËt tèt ngay t¹i Server
4) M· nguån l−u tr÷ ngay t¹i trung t©m
5) Cã thÓ sö dông cho nhiÒu øng dông kh¸c nhau còng nh− c¸c client
kh¸c nhau.
Lµm thÕ nµo ®Ó t¹o SP?
1) Chän Stored procedure -> nhÊn nót ph¶i chuét -> chän New SP
2) Dïng ng«n ng÷ Transact SQL ®Ó so¹n th¶o SP.
3) Save
SP còng t−¬ng tù nh− Views: ng−êi thiÕt lËp ra SP cã thÓ chia sÎ tµi
nguyªn nÕu cung cÊp quyÒn sö dông c¸c SP nµy cho c¸c client hay mét sè
c¸c øng dông kh¸c trong c¸c Server kh¸c ( gÇn hay xa)
4.5. ThÕ nµo lµ Trigger?
Lµ d¹ng ®Æc biÖt cña Stored procedure, còng lµ d¹ng thñ tôc ®−îc chia
sÎ nh− SP nh−ng thùc hiÖn (ngÇm ®Þnh lµ automatic ) khi ®¸p l¹i c¸c lÖnh
(Insert, Update, Delete) mçi khi ®−îc thùc hiÖn. Mét Trigger cã thÓ lµ mét
query vµ còng cã thÓ lµ mét ®o¹n m· lÖnh cña Transact SQL.
T¹o mét Trigger.
45
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
46
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
-Edit Indexes:
NÕu b¹n muèn thay ®æi c¸c cét gi¸ trÞ cÇn indexes, b¹n chän cét d÷ liÖu -
> click vµo nót EDIT (index). Tõ ®©y b¹n cã thÓ cËp nhËt (modify) cét cÇn
s¾p xÕp.
47
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
48
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
49
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
+ DB_DenydataWriter
NÕu b¹n muèn huû bá ROLES th× b¹n ph¶i xo¸ toµn bé c¸c User trong
database ROLES.
T¹i sao ph¶i dïng database Roles?
+ Lµ v× nã gióp b¹n më réng database, t¹o hiÖu suÊt truy nhËp.. .
+ C¸c user cã cïng chung c¸c ®Æc tr−ng nªn ng−êi qu¶n lý ph¶i t¹o ra c¸c
nhãm, hay c¸c ROLES ®Ó qu¶n lý dÔ dµng h¬n.
Lµm thÕ nµo ®Ó t¹o mét User Roles?
1) Chän ROLESÆ NhÊn nót ph¶i chuét-> chän New Roles
-T¹o kiÓu d÷ liÖu do ng−êi dïng ®Þnh nghÜa - user defined data types.
KiÓu d÷ liÖu do ng−êi dïng ®Þnh nghÜa nh»m më réng cho ng−êi sö dông
dÔ dµng t¹o ra riªng cho m×nh c¸c lo¹i d÷ liÖu t−¬ng øng víi nhu cÇu ®Æt ra
50
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
51
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Ngoµi ra ta còng cã thÓ sö dông mét sè lÖnh cña Transact SQL ®Ó thùc hiÖn
trªn SQL Server Analyzer VÝ dô nh− lÖnh :
BCp database_name..Tablename
{IN| OUT} dataFile [/F firstrow][/L lastrow][/b batchsize][/C ][/U login_ID]
[/P Password] [/S Servername].
5.2. C¸c nhiÖm vô vµ quyÒn h¹n trong viÖc qu¶n trÞ vµ së h÷u CSDL
(Management).
1) SQL server Agent- C¸c t¸c nh©n qu¶n lý server:
+ C¶nh b¸o: Alert
+Operator:
Ng−êi ®iÒu hµnh c«ng viÖc trong c¸c ngµy trong tuÇn
+Jobs:
C¸c c«ng viÖc ®−îc ®Þnh ra trong c¸c ngµy trong tuÇn. Ai lµm viÖc ?
52
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Security:
1) Login: T¹o logon_id ®Ó login vµo m¹ng SQL server.
53
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
TiÕp theo b¹n ph¶i chän c¸c quyÒn truy xuÊt cho user ®ã khi truy xuÊt
vµo database.
Database access:
Chän quyÒn truy xuÊt vµo c¸c database
+ Link Servser. ChØ ®Þnh c¸c mèi liªn kÕt víi c¸c server kh¸c.
Remote server: Tªn m¸y Server truy nhËp tõ xa.
54
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
4) Support Servic:
Cung cÊp c¸c dÞch vô, t¹o hiÖu suÊt truy nhËp cao, ®a d¹ng.
- Distributed Transaction Coordinator
- SQl Mail
SQL Server ProFile
T¹o c¸c Trace nh»m theo dâi chÝnh x¸c lóc cã c¸c t¸c nh©n t¸c ®éng vµo
CSDL.
55
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
56
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
+ Field: Tr−êng d÷ liÖu lµ c¸c cét d÷ liÖu hay c¸c thuéc tÝnh cña b¶ng,
tËp hîp c¸c cét cña b¶ng t¹o thµnh 1 b¶n ghi hay cßn gäi lµ hµng d÷ liÖu
®−îc b¶o vÖ bëi quyÒn ®−îc g¸n cho b¶ng vµ còng nh− c¸c mèi liªn kÕt
trong b¶ng ë møc quan hÖ, kÕt nèi gi÷a c¸c kho¸ víi nhau cña c¸c b¶ng kh¸c
nhau (kho¸ trong vµ kho¸ ngoµi).
- An toµn vÒ sù kÕt nèi truy nhËp ®Õn CSDL (authentication) vµ quyÒn
thao t¸c (permission) trªn c¸c ®èi t−îng cña CSDL
• NÕu muèn g¸n quyÒn b¹n chän Permission.
57
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
NÕu b¹n muèn thay ®æi bÊt cø mét ®iÒu g× trong table nµo ®ã th× b¹n h·y
lµm nh− sau:
1) Chän table cÇn modify
2) Click nót ph¶i chuét
3) Chän Design database
Ngoµi ra b¹n cßn cã rÊt nhiÒu chøc n¨ng ë ®©y khi nhÊn nót ph¶i chuét
(Open table, Full text index table, All task , copy, delete , rename, property..
.)
58
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
59
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
select_list: X¸c ®Þnh c¸c cét ®−îc lùa chän lÊy d÷ liÖu. Select_list cã
thÓ lµ :
- DÊu sao (*): TÊt c¶ c¸c cét theo thø tù ®−îc t¹o b»ng c©u lÖnh
CREATE TABLE cña c¸c b¶ng trong mÖnh ®Ò FROM cña truy vÊn
lùa chän.
- Danh s¸ch tªn cña c¸c cét theo thø tù mong muèn, dïng dÊu
phÈy (,) ®Ó t¸ch tªn cña c¸c cét nÕu select_list cã nhiÒu h¬n mét cét.
- Tªn cét ngÇm ®Þnh lµ tiªu ®Ò cét. Cã thÓ thay ®æi tiªu ®Ò cét
theo có ph¸p:
Tiªu_®Ò_cét = Tªn_cét
hoÆc
Tªn_cét Tiªu_®Ò_cét
NÕu cã dÊu c¸ch (space) trong tªn cña tiªu ®Ò cét th× ph¶i dïng
dÊu ngoÆc kÐp (' ' hoÆc " ") ®èi víi tiªu ®Ò cét. VÝ dô:
SELECT 'Tªn t¸c gi¶' = au_lname
FROM authors
- Mét biÓu thøc (tªn cét, h»ng sè, hµm hoÆc lµ sù kÕt hîp cña
tªn c¸c cét, c¸c h»ng sè, c¸c hµm b»ng c¸c to¸n tö hoÆc c¸c truy vÊn
con).
- Cã thÓ dïng tõ kho¸ IDENTITYCOL thay cho tªn cña cét cã
thuéc tÝnh IDENTITY (gi¸ trÞ cña cét lµ NOT NULL).
- BiÕn côc bé hoÆc biÕn toµn côc.
- G¸n biÕn côc bé theo có ph¸p:
@variable = BiÓu thøc
Chó ý: NÕu select_list gåm viÖc g¸n biÕn th× kh«ng thÓ thùc hiÖn lÊy
d÷ liÖu.
INTO Tªn_b¶ng_míi: T¹o ra mét b¶ng míi víi c¸c cét ®−îc chØ ra
trong select_list vµ c¸c gi¸ trÞ tho¶ m·n mÖnh ®Ò WHERE. §Ó chän d÷ liÖu
60
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
vµ ®−a vµo mét b¶ng cè ®Þnh, lùa chän select into/bulkcopy ph¶i ®−îc ho¹t
®éng (b»ng c¸ch thùc hiÖn thñ tôc l−u tr÷ cña hÖ thèng sp_dboption). Khi
mét c¬ së d÷ liÖu ®−îc t¹o míi, lùa chän select into/bulkcopy ngÇm ®Þnh lµ
kh«ng ho¹t ®éng. Tªn b¶ng míi ph¶i tu©n theo c¸c qui t¾c gièng tªn b¶ng
gèc, gåm:
- NÕu select into/bulkcopy ®ang ho¹t ®éng trong c¬ së d÷ liÖu mµ
b¶ng sÏ ®−îc t¹o ra, b¶ng cè ®Þnh ph¶i ®−îc t¹o ra tr−íc ®ã. Tªn b¶ng ph¶i
duy nhÊt trong c¬ së d÷ liÖu vµ ph¶i tu©n theo c¸c qui t¾c nhËn d¹ng.
- NÕu select into/bulkcopy kh«ng ho¹t ®éng trong c¬ së d÷ liÖu mµ
b¶ng sÏ ®−îc t¹o ra th× kh«ng thÓ t¹o ra ®−îc b¶ng cè ®Þnh b»ng lÖnh
SELECT INTO; chØ cã thÓ t¹o ra c¸c b¶ng t¹m thêi côc bé hoÆc toµn côc. §Ó
t¹o b¶ng t¹m thêi, tªn cña b¶ng t¹m thêi ph¶i ®−îc b¾t ®Çu b»ng dÊu #
(#Tªn_b¶ng) ®èi víi b¶ng t¹m thêi côc bé vµ hai dÊu ## (##Tªn_b¶ng) ®èi
víi b¶ng t¹m thêi toµn côc khi t¹o b¶ng b»ng CREATE TABLE.
- Ho¹t ®éng cña SELECT INTO gåm hai b−íc. B−íc ®Çu tiªn lµ t¹o
b¶ng, ng−êi sö dông ph¶i cã quyÒn t¹o b¶ng trong c¬ së d÷ liÖu ®Ých. B−íc
thø hai lµ thªm c¸c dßng gi¸ trÞ vµo b¶ng míi. NÕu b−íc thø hai kh«ng thùc
hiÖn ®−îc v× bÊt kú lý do g× (lçi phÇn cøng, v−ît qu¸ dung l−îng ®Üa cña c¬
së d÷ liÖu, ...) th× b¶ng míi vÉn tån t¹i nh−ng kh«ng cã gi¸ trÞ.
- Cã thÓ dïng SELECT INTO ®Ó t¹o ra mét b¶ng cã cÊu tróc gièng
nhau (kh¸c tªn b¶ng) b»ng c¸ch ®−a ®iÒu kiÖn sai trong mÖnh ®Ò WHERE.
- Kh«ng thÓ dïng SELECT INTO cïng víi mÖnh ®Ò COMPUTE hoÆc
trong mét giao dÞch do ng−êi dïng ®Þnh nghÜa.
- NÕu chän cét cã gi¸ trÞ NOT NULL vµo b¶ng míi th× cét míi sÏ cã
thuéc tÝnh IDENTITY (cã gi¸ trÞ NOT NULL) trõ khi mét trong sè c¸c ®iÒu
kiÖn sau ®−îc tho¶ m·n:
. C©u lÖnh SELECT bao gåm mÖnh ®Ò liªn kÕt (join), mÖnh ®Ò
GROUP BY hoÆc c¸c hµm tæng hîp.
61
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
. NhiÒu c©u lÖnh SELECT ®−îc kÕt hîp víi nhau b»ng to¸n tö
UNION.
. Cét cã gi¸ trÞ NOT NULL ®−îc liÖt kª nhiÒu h¬n trong
select_list.
. Cét cã gi¸ trÞ NOT NULL lµ mét phÇn cña biÓu thøc.
FROM: ChØ ra c¸c b¶ng ®−îc sö dông trong lÖnh SELECT. NÕu
select_list chØ lµ h»ng sè, biÕn vµ c¸c biÓu thøc sè mµ kh«ng cã tªn cét th×
kh«ng cÇn mÖnh ®Ò FROM. Sè l−îng b¶ng tèi ®a trong mÖnh ®Ò FROM lµ
16 b¶ng, kÓ c¶ c¸c truy vÊn con.
- Tªn_b¶ng = [[Tªn_c¬ së_d÷_liÖu.]Chñ_c¬_së_d÷_liªu.]{Tªn_b¶ng}
NÕu cã nhiÒu b¶ng trong mÖnh ®Ò FROM th× dïng dÊu phÈy (,) ®Ó ph©n t¸ch
c¸c b¶ng. NÕu c¸c b¶ng tån t¹i trong c¬ së d÷ liÖu kh¸c th× ph¶i ®−a ra tªn
b¶ng ®Çy ®ñ (Tªn_c¬_së_d÷_liÖu.Chñ_c¬_së_d÷_liÖu.Tªn_b¶ng).
Mçi tªn b¶ng cã thÓ cã bÝ danh ®Ó sö dông cho thuËn lîi hoÆc ®Ó ph©n
biÖt c¸c vai trß kh¸c nhau cña c¸c b¶ng khi liªn kÕt hoÆc thùc hiÖn c¸c truy
vÊn con. §Ó dïng bÝ danh, tr−íc hÕt ph¶i chØ ra tªn b¶ng, sau ®ã lµ mét
kho¶ng tr»ng (space) vµ cuèi cïng lµ tªn bÝ danh, vÝ dô:
SELECT au_lname, au_fname, title
FROM titles t, authors a, titleauthor ta
WHERE ta.title_id = t.title_id
AND ta.au_id = a.au_id
ORDER BY title, au_lname, au_fname
Thø tù cña c¸c b¶ng sau tõ kho¸ FROM kh«ng ¶nh h−ëng ®Õn kÕt qu¶ cña
c©u lÖnh.
WHERE: X¸c ®Þnh c¸c ®iÒu kiÖn ®Ó lùa chän d÷ liÖu trong c©u lÖnh.
Sè l−îng c¸c ®iÒu kiÖn lµ kh«ng h¹n chÕ (trong c©u lÖnh cña ng«n ng÷ hái
®¸p cã cÊu tróc SQL).
WHERE search_conditions
62
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
GROUP BY: X¸c ®Þnh c¸c nhãm trong b¶ng, nÕu trong select_list cã
c¸c hµm tæng hîp th× x¸c ®Þnh gi¸ trÞ tæng qu¸t cho mçi nhãm. C¸c d÷ liÖu
kiÓu v¨n b¶n (text) vµ ¶nh (image) kh«ng ®−îc dïng trong mÖnh ®Ò GROUP
BY.
GROUP BY [ALL] aggregate_free_expression
[, aggregate_free_expression]...
HAVING: X¸c ®Þnh c¸c kiÓu h¹n chÕ kh¸c nhau ®èi víi c¸c hµm tæng
hîp trong select_list.
HAVING search_conditions
search_conditions h¹n chÕ c¸c dßng gi¸ trÞ kÕt qu¶ cña truy vÊn mµ kh«ng
¶nh h−ëng ®Õn viÖc tÝnh to¸n cña c¸c hµm tæng hîp. Khi dïng mÖnh ®Ò
WHERE, search_conditions h¹n chÕ c¸c dßng gi¸ trÞ ®−îc tÝnh to¸n trong
c¸c hµm tæng hîp nh−ng kh«ng h¹n chÕ c¸c dßng gi¸ trÞ kÕt qu¶ cña truy
vÊn. C¸c d÷ liÖu kiÓu v¨n b¶n (text) vµ ¶nh (image) kh«ng ®−îc dïng trong
mÖnh ®Ò HAVING. Sè l−îng ®iÒu kiÖn kh«ng h¹n chÕ trong
search_conditions. MÖnh ®Ò HAVING cã thÓ ®−îc dïng ®éc lËp víi mÖnh ®Ò
GROUP BY. NÕu mÖnh ®Ò HAVING ®−îc dïng víi mÖnh ®Ò GROUP BY
ALL th× HAVING sÏ phñ nhËn ý nghÜa cña tõ kho¸ ALL.
ORDER BY: S¾p xÕp kÕt qu¶ theo cét, cã thÓ s¾p xÕp tèi ®a lµ 16 cét.
ORDER BY {{table_name. | view_name.}column_name
| select_list_number | expression} [ASC | DESC]
[...{{table_name16. |
view_name16.}column_name
| select_list_number | expression} [ASC | DESC]]
C¸c gi¸ trÞ Null ®−îc xÕp tr−íc c¸c gi¸ trÞ kh¸c, c¸c cét cã gi¸ trÞ v¨n
b¶n (text) hoÆc ¶nh (image) kh«ng ®−îc dïng trong mÖnh ®Ò ORDER BY.
COMPUTE: §−îc dïng víi c¸c hµm tæng hîp theo dßng (SUM, AVG,
MIN, MAX, vµ COUNT).
63
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
COMPUTE row_aggregate(column_name)
[, row_aggregate(column_name)...]
[BY column_name [, column_name]...]
FOR BROWSE: Cho phÐp cËp nhËt b»ng c¸ch sö dông th− viÖn c¬ së
d÷ liÖu (DB_Library) khi xem d÷ liÖu trong c¸c ch−¬ng tr×nh øng dông cña
m¸y kh¸ch.
2. C©u lÖnh INSERT: Thªm mét dßng gi¸ trÞ míi vµo b¶ng d÷ liÖu®ang tån
t¹i trong CSDL.
Có ph¸p:
INSERT [INTO]
{table_name | view_name} [(column_list)]
{DEFAULT VALUES | values_list | select_statement}
where
Trong ®ã:
INTO: Lµ tõ kho¸ lùa chän.
table_name | view_name: Tªn cña b¶ng ®−îc dïng trong c©u lÖnh
INSERT. NÕu b¶ng kh«ng tån t¹i trong c¬ së d÷ liÖu hiÖn thêi th× ph¶i chØ ra
®Çy ®ñ tªn b¶ng (database_name.owner.object_name).
column_list: Danh s¸nh c¸c cét ®−îc thªm d÷ liÖu. Cã thÓ liÖt kª c¸c
cét theo bÊt kú thø tù nµo nh−ng d÷ liÖu ®−îc thªm vµo b¶ng ph¶i cã cïng
thø tù víi thø tù cña cét. NÕu column_list kh«ng ®−îc chØ ra th× tÊt c¶ c¸c cét
(theo thø tù ®−îc t¹o ra b»ng lÖnh CREATE TABLE) cña b¶ng sÏ ®−îc thªm
d÷ liÖu.
DEFAULT VALUES: Thªm gi¸ trÞ ngÇm ®Þnh cho tÊt c¶ c¸c cét. §èi
víi c¸c cét cã gi¸ trÞ NOT NULL, gi¸ trÞ phï hîp tiÕp theo sÏ ®−îc thªm vµo.
§èi víi c¸c cét ®−îc nhËn gi¸ trÞ NULL th× gi¸ trÞ ngÇm ®Þnh ®−îc thªm vµo
lµ NULL.
64
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
values_list: §Ó liÖt kª c¸c gi¸ trÞ cho mçi cét theo thø tù trong column_list
hoÆc trong b¶ng.
VALUES (DEFAULT | constant_expression
[, DEFAULT | constant_expression]...)
select_statement: Lµ c©u lÖnh SELECT dïng ®Ó nhËn d÷ liÖu mµ sÏ
®−îc thªm vµo b¶ng tõ mét b¶ng ®ang tån t¹i.
VÝ dô:
A. Thªm gi¸ trÞ cho tÊt c¶ c¸c cét
INSERT titles
VALUES('BU2222', 'Faster!', 'business', '1389',
NULL, NULL, NULL, NULL, 'ok', '06/17/87')
B. Thªm gi¸ trÞ cho c¸c cét ®−îc liÖt kª trong column_list:
INSERT titles(title_id, title, type, pub_id, notes, pubdate)
VALUES ('BU1237', 'Get Going!', 'business', '1389',
'great', '06/18/86')
C. Thªm gi¸ trÞ cho tÊt c¶ c¸c cét tõ mét b¶ng kh¸c:
INSERT INTO newauthors
SELECT *
FROM authors
WHERE city = 'San Francisco'
D. Thªm c¸c gi¸ trÞ ngÇm ®Þnh:
INSERT publishers DEFAULT VALUES
V× gi¸ trÞ cña cét pub_id trong b¶ng publishers lµ NOT NULL
nªn xuÊt hiÖn th«ng b¸o lçi:
Msg 233, Level 16, State 2
The column pub_id in table publishers may not be null.
E. Thªm gi¸ trÞ cho c¸c cét sö dông tõ kho¸ DEFAULT
INSERT employee
65
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
3. C©u lÖnh UPDATE: Thay ®æi d÷ liÖu dßng trong b¶ng ®ang tån t¹i b»ng
c¸ch thªm d÷ liÖu míi hoÆc söa ®æi d÷ liÖu ®ang cã.
Có ph¸p:
UPDATE {table_name | view_name}
SET [{table_name | view_name}]
{column_list
| variable_list
| variable_and_column_list}
[, {column_list2
| variable_list2
| variable_and_column_list2}
... [, {column_listN
| variable_listN
| variable_and_column_listN}]]
[WHERE clause]
Trong ®ã:
table_name | view_name: Tªn b¶ng ®−îc thay ®æi d÷ liÖu. NÕu b¶ng
kh«ng thuéc c¬ së d÷ liÖu hiÖn t¹i th× ph¶i chØ ra ®−êng dÉn ®Çy ®ñ cña b¶ng
®ã (Tªn_c¬_së_d÷_liÖu.Tªn_chñ_c¬_së_d÷_liÖu.tªn_b¶ng).
SET: Lµ tõ kho¸ dïng ®Ó liÖt kª danh s¸ch c¸c cét hoÆc biÕn sÏ ®−îc
thay ®æi. NÕu cã h¬n mét cét hoÆc biÕn ®−îc liÖt kª th× dïng dÊu phÈy ®Ó
t¸ch chóng.
column_list: bao gåm c¸c biÓu thøc g¸n
66
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
UPDATE publishers
SET pub_name = NULL
UPDATE titles
SET price = price * 2
67
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
4. C©u lÖnh DELETE: Xo¸ c¸c dßng gi¸ trÞ trong b¶ng d÷ liÖu ®ang tån t¹i.
Có ph¸p:
DELETE [FROM] {table_name | view_name}
[WHERE clause]
Trong ®ã:
table_name | view_name: Tªn b¶ng ®−îc xo¸ d÷ liÖu. NÕu b¶ng kh«ng
thuéc c¬ së d÷ liÖu hiÖn t¹i th× ph¶i chØ ra ®−êng dÉn ®Çy ®ñ cña b¶ng ®ã:
(Tªn_c¬_së_d÷_liÖu.Tªn_chñ_c¬_së_d÷_liÖu.tªn_b¶ng).
WHERE: X¸c ®Þnh ®iÒu kiÖn ®Ó xo¸ d÷ liÖu trong b¶ng. NÕu c©u lÖnh
DELETE kh«ng cã mÖnh ®Ò WHERE th× tÊt c¶ c¸c dßng trong b¶ng sÏ bÞ
xo¸.
WHERE {search_conditions | CURRENT OF cursor_name}
search_conditions: §iÒu kiÖn ®Ó xo¸ d÷ liÖu.
VÝ dô:
A. C©u lÖnh DELETE kh«ng cã tham sè:
Xo¸ tÊt c¶ c¸c dßng d÷ liÖu trong b¶ng authors.
68
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
DELETE authors
B. Dïng lÖnh DELETE ®Ó xo¸ mét sè dßng d÷ liÖu:
DELETE FROM authors
WHERE au_lname = 'McBadden'
5. C¸c hµm tæng hîp:
C¸c hµm tæng hîp tÝnh to¸n c¸c gi¸ trÞ nh− gi¸ trÞ trung b×nh, tæng sè
theo gi¸ trÞ cña c¸c cét ®−îc chØ ra vµ tr¶ vÒ mét gi¸ trÞ.
Có ph¸p:
Tªn_hµm_tæng hîp ([ALL | DISTINCT] BiÓu thøc)
Trong ®ã:
Tªn_hµm_tæng hîp gåm:
AVG: Tr¶ vÒ gi¸ trÞ trung b×nh cña tÊt c¶ c¸c gi¸ trÞ hoÆc chØ ®èi
víi c¸c gi¸ trÞ kh«ng lÆp trong biÓu thøc. AVG chØ dïng cho c¸c cét cã
gi¸ trÞ sè.
COUNT: Tr¶ vÒ sè l−îng c¸c gi¸ trÞ NOT NULL cña biÓu thøc.
NÕu dïng tõ kho¸ DISTINCT th× hµm COUNT chØ ®Õm sè gi¸ trÞ NOT
NULL duy nhÊt. Hµm COUNT ®−îc dïng víi c¶ cét cã gi¸ trÞ sè vµ
ký tù.
COUNT(*): Tr¶ vÒ sè dßng trong b¶ng. COUNT(*) kh«ng cã
tham sè vµ kh«ng ®−îc dïng víi tõ kho¸ DISTINCT. COUNT(*) ®Õm
tÊt c¶ c¸c dßng, c¶ c¸c dßng cã gi¸ trÞ NULL.
MAX: Tr¶ vÒ gi¸ trÞ lín nhÊt trong biÓu thøc. Hµm MAX ®−îc
dïng víi c¸c cét cã gi¸ trÞ sè, ký tù, vµ ngµy giê nh−ng kh«ng dïng
víi cét cã gi¸ trÞ bit.
MIN: Tr¶ vÒ gi¸ trÞ nhá nhÊt trong biÓu thøc. Hµm MIN ®−îc
dïng víi c¸c cét cã gi¸ trÞ sè, ký tù, vµ ngµy giê nh−ng kh«ng dïng
víi cét cã gi¸ trÞ bit.
69
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
SUM: Tr¶ vÒ gi¸ trÞ tæng cña tÊt c¶ c¸c gi¸ trÞ hoÆc chØ ®èi víi
c¸c gi¸ trÞ kh«ng lÆp trong biÓu thøc. SUM chØ dïng cho c¸c cét cã gi¸
trÞ sè.
ALL: Hµm tæng hîp cã t¸c dông ®èi víi tÊt c¶ c¸c gi¸ trÞ vµ ALL lµ
gi¸ trÞ ngÇm ®Þnh.
DISTINCT: Lo¹i bá c¸c gi¸ trÞ ®óp tr−íc khi thùc hiÖn hµm tæng hîp.
BiÓu thøc: Lµ tªn cét, h»ng sè, hµm, hoÆc lµ sù kÕt hîp cña c¸c tªn cét,
h»ng sè, vµ c¸c hµm b»ng c¸c to¸n tö sè häc hoÆc c¸c to¸n tö bÝt.
VÝ dô:
A. Hµm SUM vµ hµm AVG
SELECT AVG(advance), SUM(ytd_sales)
FROM titles
WHERE type = 'business'
B. Hµm SUM vµ AVG dïng víi mÖnh ®Ò GROUP BY
SELECT type, AVG(advance), SUM(ytd_sales)
FROM titles
GROUP BY type
C. Hµm COUNT sö dông DISTINCT:
SELECT COUNT(DISTINCT city)
FROM authors
D. Hµm COUNT(*) trong GROUP BY HAVING:
SELECT type
FROM titles
GROUP BY type
HAVING COUNT(*) > 1
E. Hµm SUM vµ AVG trong HAVING:
SELECT pub_id, SUM(advance), AVG(price)
FROM titles
70
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
GROUP BY pub_id
HAVING SUM(advance) > $25000
AND AVG(price) > $15
6. C¸c kÕt nèi b¶ng:
C¸c mÖnh ®Ò kÕt nèi b¶ng chuÈn cña ANSI gåm;
-INNER JOIN
-LEFT JOIN
-LEFT [OUTER] JOIN
-RIGHT JOIN
-RIGHT [OUTER] JOIN
-FULL JOIN
-FULL [OUTER] JOIN
Trong ®ã:
INNER JOIN: X¸c ®Þnh gi¸ trÞ tr¶ vÒ gåm nh÷ng dßng gi¸ trÞ cïng
LEFT JOIN: X¸c ®Þnh dßng gi¸ trÞ tr¶ vÒ thuéc b¶ng bªn tr¸i cña liªn
kÕt.
71
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
LEFT OUTER JOIN: X¸c ®Þnh dßng gi¸ trÞ tr¶ vÒ thuéc b¶ng bªn tr¸i
cña liªn kÕt mµ kh«ng cã trong b¶ng bªn ph¶i cña liªn kÕt.
RIGHT JOIN: X¸c ®Þnh dßng gi¸ trÞ tr¶ vÒ thuéc b¶ng bªn ph¶i cña
liªn kÕt.
RIGHT OUTER JOIN: X¸c ®Þnh dßng gi¸ trÞ tr¶ vÒ thuéc b¶ng bªn
ph¶i cña liªn kÕt mµ kh«ng cã trong b¶ng bªn tr¸i cña liªn kÕt.
FULL JOIN: X¸c ®Þnh dßng gi¸ trÞ tr¶ vÒ thuéc c¶ hai b¶ng cña liªn
kÕt.
72
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
FULL OUTER JOIN: X¸c ®Þnh dßng gi¸ trÞ tr¶ vÒ kh«ng thuéc c¶ hai b¶ng
cña liªn kÕt.
ii) Sau ®©y lµ mét sè lÖnh vµ hµm th−êng hay dïng trong Transact
SQL .
Chó ý :
C¸c c©u lÖnh trong Microsoft SQL Server th−êng hay cã c¸c to¸n tö ®iÒu
kiÖn, biÓu thøc logic, tõ kho¸, to¸n tö chØ ®Þnh vµ c¸c tiªu thøc lÖnh s¾p
nhãm , s¾p xÕp indexes hay mét sè to¸n tö kh¸c... Th−êng ®i theo sau c¸c tõ
kho¸ lÖnh mµ c¸c tõ kho¸ nµy ®· diÔn gi¶i râ ë trªn c¸c c©u lÖnh trªn(Select,
insert, update .. ..)
1) T¹o table (Creates a new table.): cã hai lo¹i table
- C¸c d¹ng table t¹m thêi
- C¸c d¹ng table cè ®Þnh
Có ph¸p:
CREATE TABLE
[ database_name.[owner]. | owner.] table_name
{ <column_definition>
| column_name AS computed_column_expression
| <table_constraint> } [,...n] )
[ON {filegroup | DEFAULT} ]
[TEXTIMAGE_ON {filegroup | DEFAULT} ]
73
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
DiÔn gi¶i:
<column_definition> ::= { column_name data_type }
[ [ DEFAULT constant_expression ]
| [ IDENTITY [(seed, increment ) [NOT FOR REPLICATION] ] ]
]
[ ROWGUIDCOL ]
[ <column_constraint>] [ ...n]
74
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
C¸c tham sè :
a) database_name: Tªn database
b) owner : quyÒn Owner
d) table_name: Tªn Table
e) column_name: Sè cét n»m trong Table
Vµ sau d©y lµ mét sè th«ng sè quan träng:
75
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
76
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
2) D¹ng lÖnh:
Thªm hoÆc xo¸ mét sè cét cña b¶ng(table) hay h¹n chÕ mét sè thuéc tÝnh
cña CHECK, TRIGGER..
Có ph¸p:
ALTER TABLE table
{ [ALTER COLUMN column_name
{ new_data_type [ (precision[, scale] ) ]
[ NULL | NOT NULL ]
77
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
78
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
5) Cho biÕt th«ng sè : sè hµng trong table, dung l−îng ®ang dïng trong æ
®Üa cña database.
Có ph¸p:
sp_spaceused [[@objname =] 'objname']
[,[@updateusage =] 'updateusage']
+ [@objname =] 'objname': Tªn database
+ [@updateusage =] 'updateusage':
6) Xem th«ng tin vÒ c¸c ®èi t−îng trong database
Có ph¸p:
sp_help [[@objname =] name]
7) Cung cÊp th«ng tin vÒ user ®ang truy nhËp vµo Microsoft SQL Server
Có ph¸p:
sp_who [[@login_name =] 'login']
8) Excutive: Lêi gäi mét thñ tôc trong Stored Procedure:
[[EXEC[UTE]] [@return_status =]{procedure_name [;number] |
@procedure_name_var}[[@parameter =] {value | @variable [OUTPUT] |
[DEFAULT]] [,...n][WITH RECOMPILE]
Thùc hiÖn trong c¸c x©u ký tù:
EXEC[UTE] ({@string_variable | [N]'tsql_string'} [+...n])
9) ChuyÓn ®æi sè liÖu: t¹o b¶ng sao d÷ liÖu hay chuyÓn ®æi d÷ liÖu vµo
thiÕt bÞ kh¸c th× dïng lÖnh DUMP
Có ph¸p:
DUMP Database Database_name to Disk = “path\filename”
DUMP table table_name to Disk = “path\filename”
DUMP Transacttion Database_name to Disk = “path\filename”
NÕu muèn xo¸ d÷ liÖu khi bÞ trµn « nhí:
79
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
80
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
81
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
82
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Nh×n vµo h×nh trªn b¹n ph¶I chän database cÇn lÊy d÷ liÖu. Sau ®ã b¹n ph¶I
kÕt nèi víi database nµy b»ng c¸ch sö dông Logon_ID vµ Password.
83
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
2) TiÕp theo b¹n ph¶I chän c¸c b¶ng (Table) vµ c¸c cét (tr−êng) trong
mçi b¶ng ®ã ®Ó t¹o ra Query.
3) Sau khi chän xong table vµ c¸c cét tiÕp theo b¹n nhÊn NEXT
4) NÕu b¹n muèn s¨p xÕp (SORT ORDER) th× b¹n chän c¸c cét cÇn
s¨p xÕp ë ®©y.
B−íc tiÕp b¹n chän lo¹i d÷ liÖu cÇn ®−a ra (EXCEL, QUERY, OLAP) - >
NhÊn Finish.
T¹o c¸c table d−íi d¹ng cét b»ng EXCEL: Gåm 3 b−íc chÝnh
1) Më EXCEL -> vµo menu data -> Chän Pivot table and Pivotchart
Report
84
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
NhÊn vµo get data b¹n ph¶I chän database cÇn truy nhËp (t−¬ng tù nh−
trªn).
TiÕp theo lµ b¹n ph¶i kÕt nèi vµo database b»ng c¸ch dïng Logon_ID
vµ Password. (t−¬ng tù nh− ë trªn)
Sau khi kªt nèi vµo database b¹n ph¶I chän c¸c table vµ c¸c cét cÇn
truy xuÊt. -> tiÕp theo nhÊn NEXT
3) Dïng hiÖu øng LAYOUT ®Ó bè trÝ hµng cét cña biÓu dÇu ra
Dïng chuét ®Ó kÐo vµ th¶ c¸c tr−êng n»m trong cét cña b¸o biÓu lµm sao
cho tho¶ yªu cÇu ®Æc ra -> tiÕp thªo nhÊn OK .
85
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
T−¬ng tù nh− EXCEL tr−íc khi lÊy d÷ liÖu b¹n ph¶I thiÕt lËp database
trong ODBC.
1) Më SPSS-> Chän menu FILE-> Chän Open data -> Chän New Query
Tõ ®©y b¹n chän CSDL cÇn truy xuÊt. Tuy nhiªn ngay t¹i ®©y b¹n còng
cã thÓ thªm data source (database) vµo ODBC. Khi chän ®−îc database
b¹n nhÊn NEXT (cho b¹n h×nh sau).
Hoµn toµn t−¬ng tù nh− EXCEL,b¹n còng ph¶i kÕt nèi vµo Database qua
ODBC b»ng login_ID vµ password. (nhÊn OK vµ chê mét chót xÝu)
2) Chän d÷ liÖu (Select data):
T¹i ®©y b¹n chän c¸c table vµ c¸c tr−êng n»m trong c¸c table ®Ó ®−a ra
b¸o biÓu. ë ®©y, khi b¹n cÇn s¾p xÕp mét cét nµo ®ã b¹n check vµo «
“sort field names”.
86
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
3) ChØ ®Þnh c¸c mèi quan hÖ vÒ d÷ liÖu, nÕu b¹n muèn ®iÒu khiÓn tù ®éng
b¹n check vµo « Auto Join Tables.
87
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
6) Xem l¹i lÇn cuèi b»ng c©u lÖnh (ng«n ng÷ SQL) cã ®iÒu g× cÇn söa.
Sau ®ã, nÕu b¹n muèn ghi l¹i vµo query th× b¹n ph¶i chän tªn query
(cÇn ghi l¹i) vµo « Save Query to File.
88
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
89
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
Sau khi thùc hiÖn song c¸c lÖnh trªn b¹n dïng lÖnh: sp_help ®Ó xem vµ
kiÓm tra l¹i cã ®ñ tÊt c¶ table trong CSDL ch−a?
3) B¶o mËt CSDL: t¹o nhãm lµm viÖc vµ thªm c¸c user vµo nhãm,
g¸n quyÒn thao t¸c trªn CSDL ®ã.
+ sp_addgroup dbCSDL
+ sp_adduser khanht,khanht,dbCSDL
+ grant select on dmluutru to dbCSDL
+ grant select,update,delete,insert on NOIBH to dbCSDL
+ revoke update,delete,insert on HOSO to dbCSDL
..
90
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
vµ KÕt luËn
Chó ý : nh¾c l¹i mét sè tiªu thøc quan träng khi sö dông Microsoft SQL
Server .
91
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
sö dông h¬n Visual Basic), tèc ®é truy nhËp nhanh h¬n nhiÒu so víi c¸ch sö
dông Visual Basic.
HiÖn nay, Tæng Côc Thèng Kª ®· x©y dùng mét sè CSDL cho ngµnh
nh−:
+ CSDL C«ng nghiÖp
+ CSDL doanh nghiÖp
+ D©n sè vµ nhµ ë
+ Qu¶n lý c«ng v¨n ®i ®Õn
+ CSDL l−u tr÷ ..
c¸c CSDL nµy lu«n lu«n ®−îc ph¸t triÓn theo thêi gian ngµy mét lín h¬n.
92
CuuDuongThanCong.com https://fb.com/tailieudientucntt
S¸ch ®iÖn tö, luËn v¨n tèt nghiÖp CNTT – http:/www.diachiweb.com
93
CuuDuongThanCong.com https://fb.com/tailieudientucntt