Professional Documents
Culture Documents
Chng 4. C s d liu
Ni dung
Cc khi nim c bn v nh ngha. Cc loi CSDL. H qun tr CSDL. CSDL quan h. S pht trin ca cc h CSDL.
Chng 4. C s d liu
C s d liu
database C s d liu l s tp hp c t chc cc d liu c lin quan lun l vi nhau. D liu (data): s biu din ca cc i tng v s kin c ghi nhn v c lu tr trn cc phng tin ca my tnh.
D liu c cu trc: s, ngy, chui k t, D liu khng c cu trc: hnh nh, m thanh, on phim,
C t chc (organized): ngi s dng c th d dng lu tr, thao tc v truy xut d liu.
3
Chng 4. C s d liu
C s d liu
C lin quan lun l (logically related): d liu m t mt lnh vc m nhm ngi s dng quan tm v c dng tr li cc cu hi lin quan n lnh vc ny.
Thng tin
information
tin l d liu c x l lm tng s hiu bit ca ngi s dng. D liu trong ng cnh. D liu c tng hp / x l.
Thng
Chng 4. C s d liu
Thng tin: d liu trong ng cnh M sinh vin H v tn sinh vin 50010273 Nguyn Trung Tin 50100298 L Vit Hng 59900012 Trn Hng Vit 50200542 H Xun Hng 50000075 Bi c Duy
Chng 4. C s d liu
Tui 20 19 21 18 20
5
MT00 40%
Chng 4. C s d liu
Siu d liu
metadata Siu d liu l d liu dng m t cc tnh cht / c tnh ca d liu khc (d liu v d liu). Cc c tnh: nh ngha d liu, cu trc d liu, qui tc / rng buc.
Chng 4. C s d liu
Chng 4. C s d liu
H thng x l tp tin
H thng x l tp tin
file processing system H thng x l tp tin l tp hp cc chng trnh dng lu tr, thao tc v truy xut cc tp tin d liu c kch thc ln. Cc tp tin d liu c lu tr trong cc th mc (folder).
Chng 4. C s d liu
H thng x l tp tin
H iu hnh Cc tin ch Cc tp tin Cc chng trnh qun l tp tin Cc chng trnh ng dng to cc bo co t cc d liu c lu tr trong cc tp tin.
Con ngi: ngi qun l, chuyn gia, ngi lp trnh, ngi s dng cui cng. Cc th tc: cc lnh v cc qui tc chi phi vic thit k v s dng cc thnh phn ca phn mm. D liu: tp hp cc s kin.
Chng 4. C s d liu
10
H thng x l tp tin
To cu trc tp tin. Thm d liu vo tp tin. Xa d liu ca tp tin Sa d liu ca tp tin. Lit k d liu ca tp tin.
11
Chng 4. C s d liu
H thng x l tp tin
Tt c cc chng trnh ng dng phi duy tr siu d liu (phn m t) ca cc tp tin m chng s dng.
Cc h thng / chng trnh khc nhau c cc bn d liu ring bit ca cng d liu. Mi ng dng c cc tp tin ring bit, t s dng chung d liu vi cc ng dng khc.
12
Chng 4. C s d liu
H thng x l tp tin
Ngi lp trnh phi thit k cc dng tp tin d liu ring v vit cch truy xut tp tin cho mi ng dng mi. Cc nhc im nu trn lm cho vic bo tr chng trnh gp nhiu kh khn, thng chim khong 80% ngn sch pht trin HTTT.
Chng 4. C s d liu
13
Ph thuc d liu
Mi ngi lp trnh phi duy tr d liu ring bit. Mi chng trnh ng dng phi c m lnh cho siu d liu ca mi tp tin. Mi chng trnh ng dng phi c cc chng trnh con x l c, thm, sa v xa d liu. Khng c cc iu khin chung v phi hp. Cc dng thc tp tin khng c cng chun.
Chng 4. C s d liu
14
D tha d liu
Tn vng nh lu tr d liu d tha. Gy ra cc vn kh v bo tr d liu. Vn chnh:
Vic cp nht d liu ca mt tp tin c th dn n cc mu thun d liu. Vi phm tnh ton vn d liu.
Chng 4. C s d liu
15
D tha d liu
Duplicate Data
Chng 4. C s d liu
16
Chng 4. C s d liu
17
DBMS cha siu d liu (metadata), do cc ng dng khng cn quan tm n cc dng thc ca d liu. DBMS qun l cc truy vn v cp nht d liu, do ng dng khng cn x l vic truy xut d liu.
Gim ti thiu s d tha d liu (data redundancy). Nng cao tnh nht qun (data consistency) / ton vn d liu (data integrity).
Chng 4. C s d liu
18
Nhng ngi s dng khc nhau c nhng ci nhn khc nhau v d liu.
Chng 4. C s d liu
Gim chi ph bo tr chng trnh. Bo mt (security). Chp lu (backup) v phc hi (recovery). iu khin tng tranh (concurrency control).
Chng 4. C s d liu
20
Chi ph ban u
Chi ph ci t v qun l Chi ph chuyn i (conversion cost) Cn nhn vin mi c chuyn mn. Cn phi chp lu v phc hi. Rt kh thay i cc thi quen c.
Chi ph vn hnh
Mu thun v mt t chc
Chng 4. C s d liu
21
Cc loi c s d liu
CSDL c nhn
personal database CSDL ring.
CSDL x nghip
enterprise database Mng din rng (hng trm hoc hng ngn ngi s dng)
Chng 4. C s d liu
22
Cc loi c s d liu
Chng 4. C s d liu
23
H qun tr c s d liu
H qun tr CSDL
DBMS DataBase Management System H qun tr CSDL l tp hp cc chng trnh dng qun l cu trc v d liu ca CSDL v iu khin truy xut d liu trong CSDL. Cho php ngi s dng nh ngha, to lp v bo tr CSDL v cung cp cc truy xut d liu.
Chng 4. C s d liu
24
H qun tr c s d liu
Chng 4. C s d liu
25
H qun tr c s d liu
Ngn ng nh ngha d liu (DDL - Data Definition Language) Ngn ng thao tc d liu (DML - Data Manipulation Language).
Qun l giao tc (transaction management). iu khin tng tranh (concurrency control) Chp lu v phc hi d liu. Bo mt d liu
H tr truyn thng d liu. Duy tr tnh ton vn / nht qun d liu. Cung cp cc tin ch.
Chng 4. C s d liu
26
H qun tr c s d liu
Ngn ng nh ngha d liu: To cu trc ca bng Customer CREATE TABLE CUSTOMER (CUST_ID NUMBER(11,0) NOT NULL, NAME VARCHAR(25) NOT NULL, ADDRESS VARCHAR(30), CITY VARCHAR(20), CONSTRAINT PK_CUSTOMER PRIMARY KEY (CUST_ID)); Ngn ng thao tc d liu: Lit k m, tn v a ch ca cc khch hng thuc thnh ph HCM SELECT CUST_ID, NAME, ADDRESS FROM CUSTOMER WHERE CITY = HCM; Ngn ng iu khin d liu: Cho php ngi s dng Tien v Truc c php xem v thm d liu vo bng Customer GRANT SELECT, INSERT ON CUSTOMER TO TIEN, TRUC;
Chng 4. C s d liu
27
Chng 4. C s d liu
28
Chng 4. C s d liu
29
Chng 4. C s d liu
30
31
Relationship symbols
Entity symbols
Attribute symbols
Chng 4. C s d liu
32
Thc th
Th hin thc th
entity instance Th hin thc th l ngi, v tr, i tng, s kin, khi nim (thng tng ng vi mt hng ca bng). Thc th nn l
i tng c nhiu th hin trong CSDL. i tng c nhiu thuc tnh. i tng cn c m hnh ha. ngi s dng ca h CSDL. kt xut ca h CSDL (v d bn bo co).
Thc th khng nn l
c im ca thc th l tnh phn bit (distinctness): c th phn bit gia thc th ny vi thc th khc.
33
Chng 4. C s d liu
Thc th
Kiu thc th
entity type Kiu thc th l tp hp cc thc th thuc cng mt loi (thng tng ng vi mt bng). c biu din bng hnh ch nht.
Chng 4. C s d liu
34
Thuc tnh
Thuc tnh
attribute Thuc tnh l mt c tnh / tnh cht ca mt kiu thc th (thng tng ng vi mt vng tin trong mt bng). c biu din bng hnh bu dc.
Chng 4. C s d liu
35
Thuc tnh
Chng 4. C s d liu
36
Thuc tnh
Thuoc tnh n
Chng 4. C s d liu
37
Thuc tnh
Chng 4. C s d liu
38
Thuc tnh
Chng 4. C s d liu
39
Thuc tnh
Thuc tnh n tr
Chng 4. C s d liu
40
Kha
key attribute / prime attribute / identifier attribute Thuc tnh kha c gch di.
Thuc tnh khng kha (non-key attribute) l thuc tnh khng trong kha.
Chng 4. C s d liu
Kha
Kha d tuyn
candidate key Kha d tuyn l kha ca mt kiu thc th. Mt kiu thc th c t nht mt kha d tuyn.
Chng 4. C s d liu
42
Kha
Kha chnh
primary key Kha chnh l mt kha tiu biu trong cc kha d tuyn ca mt kiu thc th. Mt kiu thc th ch c mt kha chnh. Kha chnh dng lin kt gia cc thc th.
Chng 4. C s d liu
43
Kha
Kha n
Chng 4. C s d liu
44
Mi lin kt
Kiu mi lin kt
relationship type Kiu mi lin kt l s lin kt gia cc kiu thc th. c biu din bng hnh thoi. Mi lin kt c th c nhiu thuc tnh dng m t cc c tnh ca s lin kt gia cc thc th. Hai thc th c th c nhiu kiu mi lin kt gia chng.
Chng 4. C s d liu
45
Mi lin kt
46
Mi lin kt
Bc / ngi ca mi lin kt
degree / arity of relationship Bc ca mi lin kt l s lng kiu thc th tham gia ng thi vo mi lin kt ny.
Cc loi mi lin kt
Mi lin kt 1-ngi (unary relationship) Mi lin kt 2-ngi (binary relationship) Mi lin kt 3-ngi (ternary relationship): 3 kiu thc th ng thi tham gia vo mi lin kt.
Chng 4. C s d liu
47
Mi lin kt
Entities of two different types related to each other One entity related to another of the same entity type Entities of three different types related to each other
Chng 4. C s d liu
48
Mi lin kt
Mi lin kt 1-ngi
Chng 4. C s d liu
49
Mi lin kt
Mi lin kt 2-ngi
Chng 4. C s d liu
50
Mi lin kt
Mi lin kt 3-ngi
Chng 4. C s d liu
51
Mi lin kt
Lng s ca mi lin kt
cardinality of relationship Lng s ca mi lin kt l s lng th hin thc th tham gia vo mi lin kt ny.
Cc loi lng s
mt - mt (one-to-one): mt thc th a lin kt vi mt thc th b; mt thc th b lin kt vi mt thc th a. mt - nhiu (one-to-many): mt thc th a lin kt vi nhiu thc th b; mt thc th b lin kt vi mt thc th a. nhiu - nhiu (many-to-many): mt thc th a lin kt vi nhiu thc th b; mt thc th b lin kt vi nhiu thc th a.
Chng 4. C s d liu
52
Mi lin kt
Lng s ln nht
Chng 4. C s d liu
53
Mi lin kt
Chng 4. C s d liu
54
Mi lin kt
55
Mi lin kt
Lng s ln nht
Mi lin kt c lng s ti a xc nh
Chng 4. C s d liu
56
Quan h
Quan h (relation) l mt bng d liu hai chiu bao gm nhiu hng (mu tin) v nhiu ct (thuc tnh hoc vng tin).
Mi hng l duy nht: khng th c hai hng c cng cc gi tr tt c vng tin. Th t ca cc hng l khng quan trng. Th t ca cc ct l khng quan trng. Khng phi mi bng u l quan h. Quan h l mt bng khng cha cc hng ging ht nhau.
Chng 4. C s d liu
57
Quan h
Quan h: Supplier Snum S1 S2 S3 Name Nguyn Trung Tin Trn Th Yn Nguyn Vn An City SF LA SF
Chng 4. C s d liu
58
Quan h
Kha
key Kha quan h l mt tp nh nht cc thuc tnh dng xc nh duy nht mt hng. Mt kha ch c mt thuc tnh c gi l kha n (simple key). Mt kha c nhiu thuc tnh c gi l kha phc hp (composite key). Kha thng c s dng lm ch mc (index) ca bng d liu lm tng tc x l cu truy vn.
Chng 4. C s d liu
59
Quan h
Kha
Mt quan h phi c t nht mt kha v c th c nhiu kha. Cc thuc tnh thuc mt kha c gi l thuc tnh kha (prime attribute), cc thuc tnh cn li trong lc quan h c gi l cc thuc tnh khng kha (nonprime attribute). Cc thuc tnh kha c gch di. Cc thuc tnh kha khng c c gi tr rng (null value).
Chng 4. C s d liu
60
Quan h
Kha
Tt c cc kha ca mt quan h c gi l kha d tuyn (candidate key). Mt trong cc kha d tuyn c chn lm kha tiu biu, kha ny c gi l kha chnh (primary key). Mt quan h ch c mt kha chnh v c th c nhiu kha d tuyn. Trong mt quan h, mt hoc nhiu thuc tnh c gi l kha ngoi (foreign key) nu chng l kha chnh ca mt quan h khc.
Chng 4. C s d liu
61
C s d liu quan h
C s d liu quan h (relational database) bao gm cc bng (quan h) biu din cc thc th v cc kha chnh / kha ngoi biu din cc mi lin kt.
Chng 4. C s d liu
62
C s d liu quan h
Primary Key Foreign Key (implements 1:N relationship between customer and order) Combined, these are a composite primary key (uniquely identifies the order line)individually they are foreign keys (implement M:N relationship between order and product)
Chng 4. C s d liu
63
C s d liu quan h
C s d liu quan h.
Chng 4. C s d liu
64
S tng ng vi m hnh ER
Mi quan h (bng) tng ng vi mt kiu thc th hoc vi mt kiu mi lin kt nhiu - nhiu. Mi hng tng ng vi mt th hin thc th hoc vi mt th hin mi lin kt nhiu - nhiu. Mi ct tng ng vi mt thuc tnh. T quan h (relation) trong c s d liu quan h khng c cng ngha vi t mi quan h (relationship) trong m hnh ER.
Chng 4. C s d liu
65
Lc c s d liu
Lc c s d liu
database schema Lc c s d liu l mt tp hp cc lc quan h. Trong mt lc c s d liu, cc tn lc quan h l duy nht.
Lc c s d liu: Emp (Empnum, Name, Sal, Tax, Mgrnum, Deptnum) Dept (Deptnum, Name, Area, Mgrnum) Supplier (Snum, Name, City) Supply (Snum, Pnum, Deptnum, Quan)
Chng 4. C s d liu
66
Ton vn thc th
entity integrity Thuc tnh kha chnh khng c gi tr rng (null value).
Chng 4. C s d liu
67
Qui tc hot ng
action assertion Cc qui tc nghip v (business rule).
Chng 4. C s d liu
68
69
Chng 4. C s d liu
70
Hn ch (restrict): khng cho php xa cc hng bn pha cha (parent) nu tn ti cc hng lin quan bn pha ph thuc (dependent). Tng (cascade): t ng xa cc hng bn pha ph thuc tng ng vi cc hng bn pha cha. Gn null (set-to-null): gn null cho kha ngoi ca cc hng bn pha ph thuc tng ng vi cc hng bn pha cha. Khng p dng cho cc thc th yu.
Chng 4. C s d liu
71
Referential integrity constraints are drawn via arrows from dependent to parent table
72
Chng 4. C s d liu
73
CUSTOMER relation
74
75
Chng 4. C s d liu
76
77
t kha ca kiu thc th bn pha bt buc v cc thuc tnh ca mi lin kt vo quan h ca kiu thc th bn pha ty chn.
Chng 4. C s d liu
78
79
80
t kha ca kiu thc th bn pha mt v cc thuc tnh ca mi lin kt vo quan h ca kiu thc th bn pha nhiu.
Chng 4. C s d liu
81
82
Again, no null value in the foreign keythis is because of the mandatory minimum cardinality
83
Qui tc 5: Bin i mi lin kt 1-ngi hoc 2-ngi c lng s nhiu-nhiu thnh mt quan h.
Quan h cha cc kha ca cc kiu thc th tham gia vo mi lin kt. Kha ca quan h gm c hai kha ca hai kiu thc th. Thuc tnh ca quan h l thuc tnh ca mi lin kt.
Chng 4. C s d liu
84
85
The Supplies relationship will need to become a separate relation New intersection relation
86
Chng 4. C s d liu
87
88
89
Chun ha d liu
Chun ha d liu
data normalization Chun ha d liu l mt qu trnh thun nghch tng bc thay th tp hp cc quan h cho trc thnh cc quan h c cu trc n gin hn v chun hn. Chun ha d liu nhm ci tin mt thit k CSDL tha mn cc rng buc ton vn v trnh d liu b lp li khng cn thit.
Chng 4. C s d liu
90
Chun ha d liu
Mc ch ca chun ha d liu
Loi b cc bt thng (anomaly) ca mt quan h c c cc quan h c cu trc tt hn, nh hn. Quan h c cu trc tt (well-structured relation)
C s d tha d liu l ti thiu. Cho php ngi s dng thm vo, cp nht v xa b d liu m khng gy ra s mu thun d liu.
Chng 4. C s d liu
91
Ph thuc hm
Ph thuc hm
FD Functional Dependency Cho r l mt quan h, X v Y l hai tp thuc tnh ca r. Chng ta ni X xc nh hm Y hoc Y ph thuc hm vo X, k hiu l X Y v c gi l ph thuc hm nu vi mi gi tr ca X trong r ch tng ng vi mt gi tr ca Y. Kha ca mt quan h xc nh hm cc thuc tnh khng kha ca quan h ny.
Chng 4. C s d liu
92
Ph thuc hm
Ph thuc hm y
full functional dependency X A c gi l ph thuc hm y nu khng tn ti Y X cho Y A.
Ph thuc bc cu
transitive dependency X A c gi l ph thuc bc cu nu tn ti Y cho X Y, Y A, Y / X v A XY.
Chng 4. C s d liu
93
Ph thuc hm
R Msv Htn Mlp Tnlp Mnhc im
S1
S1 S1 S2 S2 S3
Tin
Tin Tin Trc Trc Hin
L1
L1 L1 L1 L1 L2
MT01
MT01 MT01 MT01 MT01 MT02
M1
M2 M3 M1 M2 M1
9
7 8 9 8 5
94
Dng chun 1
nh ngha
Quan h R dng chun 1 (1NF - First Normal Form) nu mi thuc tnh ca R u cha cc gi tr nguyn t (atomic value), gi tr ny khng l mt danh sch cc gi tr hoc cc gi tr phc hp (composite value).
Chng 4. C s d liu
95
Dng chun 1
R
Msv
S1 S1 S1
Htn
Tin Tin Tin
Mlp
L1 L1 L1
Tnlp
MT01 MT01 MT01
imthi
M1 M2 M3 9 7 8
S2
S2 S3
Trc
Trc Hin
L1
L1 L2
MT01
MT01 MT02
M1
M2 M1
9
8 5
Quan h R khng dng chun 1 v thuc tnh imthi l thuc tnh phc hp.
Chng 4. C s d liu
96
Dng chun 1
R
Msv
S1 S1 S1
Htn
Tin Tin Tin
Mlp
L1 L1 L1
Tnlp
MT01 MT01 MT01
Mnhc
M1 M2 M3
im
9 7 8
S2
S2 S3
Trc
Trc Hin
L1
L1 L2
MT01
MT01 MT02
M1
M2 M1
9
8 5
Quan h R 1NF v cc thuc tnh ca R khng l thuc tnh a tr, khng l thuc tnh phc hp.
Chng 4. C s d liu
97
Dng chun 1
Thm vo
Khng th thm thng tin ca sinh vin mi c m l S4, tn l Thnh, thuc lp c m l L1 nu sinh vin ny cha ng k hc mn hc no c. Sa tn ca sinh vin c tn l Tin vi tn mi l Thnh s phi sa tt c cc hng ca sinh vin ny. Xa thng tin sinh vin S3 ng k mn hc M1 s lm mt thng tin ca sinh vin ny. Tn ti thuc tnh khng kha ph thuc hm ring phn vo kha.
98
Cp nht
Xa b
Nguyn nhn
Chng 4. C s d liu
Dng chun 2
nh ngha
Quan h R dng chun 2 (2NF - Second Normal Form) nu R dng chun 1 v mi thuc tnh khng kha u ph thuc hm y vo mi kha ca R.
Chng 4. C s d liu
99
Dng chun 2
R Msv Htn Mlp Tnlp Mnhc im
S1
S1 S1 S2 S2 S3
Tin
Tin Tin Trc Trc Hin
L1
L1 L1 L1 L1 L2
MT01
MT01 MT01 MT01 MT01 MT02
M1
M2 M3 M1 M2 M1
9
7 8 9 8 5
Lc quan h R khng 2NF v thuc tnh khng kha Htn ph thuc hm ring phn vo kha {Msv, Mnhc}.
Chng 4. C s d liu
100
Dng chun 2
R1 Msv S1 S2 S3 Htn Tin Trc Hin Mlp L1 L1 L2 Tnlp MT01 MT01 MT02 R2
Msv
S1 S1 S1
Mnhc
M1 M2 M3
im
9 7 8
S2
S2 S3
M1
M2 M1
9
8 5
Kha ca R2: {Msv, Mnhc} Lc quan h R1 v R2 u 2NF v cc thuc tnh khng kha u ph thuc hm y vo kha.
Chng 4. C s d liu
101
Dng chun 2
Thm vo
Khng th thm thng tin ca lp L3 c tn l MT03 nu cha c sinh vin no hc lp ny. Sa tn ca lp c m L1 vi tn mi l MT_1 s phi sa tt c cc hng ca lp ny. Xa thng tin ca sinh vin c m S3 s lm mt thng tin ca lp L2. Tn ti thuc tnh khng kha ph thuc bc cu vo kha.
102
Cp nht
Xa b
Nguyn nhn
Chng 4. C s d liu
Dng chun 3
nh ngha
Quan h R dng chun 3 (3NF- Third Normal Form) nu R dng chun 1 v mi thuc tnh khng kha u khng ph thuc bc cu vo mt kha ca R.
Chng 4. C s d liu
103
Dng chun 3
S1
S2 S3
Tin
Trc Hin
L1
L1 L2
MT01
MT01 MT02
Lc quan h R1 khng 3NF v thuc tnh khng kha Tnlp ph thuc bc cu vo kha Msv. Msv Mlp Mlp Tnlp Mlp / Msv Tnlp {Msv, Mlp}
Chng 4. C s d liu
104
Dng chun 3
R11
R12
Mlp
L1 L2
Tnlp
MT01 MT02
Msv
Htn
Mlp
S1
S2 S3
Tin
Trc Hin
L1
L1 L2
Kha ca R12: Msv Lc quan h R11 v R12 u 3NF v cc thuc tnh khng kha u khng ph thuc bc cu vo kha.
Chng 4. C s d liu
105
Ngn ng SQL
Ngn ng truy vn c cu trc (SQL Structured Query Language) l mt ngn ng chun c dng to lp v truy vn cc c s d liu quan h. SQL l mt ngn ng chun cho cc h qun tr CSDL quan h (RDBMS Relational DBMS).
Chng 4. C s d liu
106
Cc c im ca ngn ng SQL
Ngn ng SQL l mt ngn ng ta ting Anh (English-like language), s dng cc t nh select, insert, delete trong tp lnh. Ngn ng SQL l mt ngn ng phi th tc (nonprocedural language).
Ch ra cc thng tin g cn thit (what). Khng cn phi ch ra cch thc hin nh th no (how) c c cc thng tin ny.
Chng 4. C s d liu
107
Cc c im ca ngn ng SQL
Nhiu loi ngi c th s dng SQL: ngi qun tr CSDL (DBA), ngi lp trnh ng dng, ngi qun l, ngi s dng cui cng (end user). SQL cung cp nhiu lnh cho nhiu cng vic khc nhau:
Truy vn d liu. Thm vo, cp nht v xa b cc hng ca bng. To lp, thay i v xa b cc i tng CSDL. iu khin truy xut c s d liu v cc i tng CSDL. Bo m tnh nht qun ca CSDL.
Chng 4. C s d liu
108
Kiu chui
CHAR(n) kiu chui c chiu di c nh gm n k t (chiu di ti a 2000 bytes). VARCHAR2(n) kiu chui c chiu di thay i gm n k t (chiu di ti a 4000 bytes). LONG kiu chui c chiu di thay i, ti a 4GB (ch c mt ct trong mt bng).
Kiu s
NUMBER(p,q) kiu s c p k s v q s l. INTEGER(p) kiu s nguyn c p k s.
Kiu ngy gi
Chng 4. C s d liu
Ngn ng SQL
Chng 4. C s d liu
110
nh ngha mt bng
Cc bc to mt bng
Bc 1. Xc nh kiu d liu ca cc ct. Bc 2. Xc nh cc ct c th hoc khng th c gi tr rng (null value). Bc 3. Xc nh cc ct phi c cc gi tr duy nht (cc kha d tuyn). Bc 4. Xc nh kha chnh kha ngoi. Bc 5. Xc nh cc gi tr mc nhin. Bc 6. Xc nh cc rng buc trn cc ct (m t min tr). Bc 7. To bng v cc ch mc ca bng.
Chng 4. C s d liu
111
nh ngha mt bng
C php ca lnh CREATE TABLE: CREATE TABLE <table name> (<column_definition>, [<table_constraint_definition>]);
Chng 4. C s d liu
112
nh ngha mt bng
113
nh ngha mt bng
Non-nullable specifications Primary key
Default value
114
nh ngha mt bng
115
Hy b bng
C php ca lnh DROP TABLE: DROP TABLE <table name> [CASCADE CONSTRAINTS];
Hy b bng Order_Line_T DROP TABLE Order_Line_T;
Chng 4. C s d liu
116
Lnh SELECT
C php ca lnh SELECT: SELECT [DISTINCT] <list of expressions> FROM <list of tables> [WHERE <row conditions>] [GROUP BY <list of expressions> [HAVING <group conditions>]] [ORDER BY <list of expressions>];
Chng 4. C s d liu
117
Lnh SELECT
Chng 4. C s d liu
118
Lnh SELECT
119
Lnh SELECT
SELECT * FROM Order_T; SELECT Order_ID, Order_Date, Customer_ID FROM Order_T; SELECT DISTINCT Order_Date Date of Order FROM Order_T; SELECT Order_ID AS Identifier, Order_Date Date FROM Order_T;
Chng 4. C s d liu
120
Lnh SELECT
SELECT Product_ID, Standard_Price FROM Product_T WHERE Standard_Price < 275;
SELECT Cust.Customer_Name AS Name, Customer_Address FROM Customer_T Cust WHERE Customer_Name = Home Furnishings;
SELECT Product_ID, Standard_Price FROM Product_ WHERE Standard_Price BETWEEN 100 AND 200; SELECT Customer_Name, City, State FROM Customer_T WHERE State IN (FL, TX, CA, HI);
Chng 4. C s d liu
121
Lnh SELECT
SELECT Product_Description, Product_Finish, Standard_Price FROM Product_T WHERE (Product_Description LIKE %Desk OR Product_Description LIKE _A%) AND Standard_Price > 300; SELECT Product_ID, Product_Finish, Standard_Price FROM Product_T WHERE Product_Description IS NULL; SELECT COUNT(*) FROM Order_Line_T WHERE Order_ID = 1004;
Chng 4. C s d liu
122
Lnh SELECT
SELECT State, COUNT(State) FROM Customer_T WHERE State IN (FL, TX, CA, HI) GROUP BY State HAVING COUNT(State) > 1 ORDER BY State DESC;
Chng 4. C s d liu
123
Lnh INSERT
Chng 4. C s d liu
124
Lnh INSERT
INSERT INTO Customer_T VALUES (001, Contemporary Casuals, 1355 S. Himes Blvd., Gainesville, FL, 32601); INSERT INTO Product_T (Product_ID, Product_Description, Product_Finish, Standard_Price, Product_On_Hand) VALUES (1, End Table, Cherry, 175, 8); INSERT INTO CA_Customer_T SELECT * FROM Customer_T WHERE State = CA;
Chng 4. C s d liu
125
Lnh DELETE
Xa b cc hng ca mt bng
C php ca lnh DELETE: DELETE [FROM] <table name> [WHERE <row conditions>]; Xa mt s hng ca bng Customer_T DELETE FROM Customer_T WHERE State = HI; Xa tt c cc hng ca bng Customer_T DELETE FROM Customer_T ;
Chng 4. C s d liu
126
Lnh UPDATE
Chng 4. C s d liu
127
C s d liu phn tn
nh ngha 1 C s d liu phn tn (distributed database) l s tp hp d liu m v mt lun l chng thuc cng mt h thng nhng c t nhiu ni (site) ca mt mng my tnh.
S phn tn d liu (data distribution): d liu phi c phn tn nhiu ni. S tng quan lun l (logical correlation): d liu ca cc ni c s dng chung cng gii quyt mt vn .
Chng 4. C s d liu
128
C s d liu phn tn
V d
Mt ngn hng c ba chi nhnh cc v tr a l khc nhau. Ti mi chi nhnh c mt my tnh v mt c s d liu ti khon, to thnh mt ni (site) ca c s d liu phn tn. Cc my tnh c kt ni vi nhau thng qua mt mng my tnh truyn thng. Mt khch hng c th gi tin v rt tin ti cc chi nhnh.
Chng 4. C s d liu
129
C s d liu phn tn
C s d liu 1 Terminal T T C s d liu 2 T T T
My tnh 1
My tnh 2
Chi nhnh 1
Chi nhnh 2
T T T
My tnh 3
C s d liu 3
130
C s d liu phn tn
Trung tm my tnh
Chi nhnh 1 T T T Chi nhnh 2 T T T
C s d liu 1
C s d liu 2
My tnh 1
My tnh 2
Mng cc b
Chi nhnh 3 T T T
My tnh 3
C s d liu 3
131
C s d liu phn tn
Trung tm my tnh
Chi nhnh 1 T T T Chi nhnh 2 T T T
C s d liu 1
C s d liu 2
C s d liu 3
Mng cc b
Chi nhnh 3 T T T
132
C s d liu phn tn
nh ngha 2 C s d liu phn tn l s tp hp d liu c phn tn trn cc my tnh khc nhau ca mt mng my tnh. Mi ni ca mng my tnh c kh nng x l t tr v c th thc hin cc ng dng cc b. Mi ni cng tham gia thc hin t nht mt ng dng ton cc, m ni ny yu cu truy xut d liu nhiu ni bng cch dng h thng truyn thng con.
Chng 4. C s d liu
133
C s d liu phn tn
nh ngha 2
S phn tn d liu (data distribution): d liu phi c phn tn nhiu ni. ng dng cc b (local application): ng dng c chy hon thnh ti mt ni v ch s dng d liu cc b ca ni ny. ng dng ton cc (hoc ng dng phn tn) (global application / distributed application): ng dng c chy hon thnh v s dng d liu ca t nht hai ni.
Chng 4. C s d liu
134