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

access 2010 Giao trinh phan thiet ke bang

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 (3.99 MB, 86 trang )

PH N 1. THI T K C

S

D

LI U

1. M t s khái ni m c b n v CSDL
1.1. D li u hay thông tin?
D li u là gì ?
D li u là t p các giá tr c b n nh t mô t các đ i t

ng qu n lý, đ

c l u tr l i.

Thông tin là gì ?
Thông tin là k t qu tr v c a vi c x lý các d li u đã l u tr , đáp ng yêu c u qu n
lý.
D li u hay thông tin?
VD: có b ng d li u khách hàng nh sau:
H và tên

Gi i tính

Ngày sinh

a ch

Nguy n V n An Nam



02/09/1985 157 Gi ng Võ, Ba ình, HN

Bùi Th Hoa

20/10/1980 89 Thái Hà,

N

ng a, HN



V i b ng d li u trên có th bi t đ
-

c m t s thông tin sau:

T ng s l ng khách hàng
T l khách hàng là Nam, T l khách hàng là N
Tu i c a khách hàng
S l ng khách hàng trong đ tu i cho tr c

Chú ý: Tr

ng h p c n l u l i Tu i c a khách hàng thì s l u Ngày sinh. B i vì t Ngày

sinh có th dùng hàm đ tính ra Tu i nên Ngày sinh là d li u c b n đ
Tu i là thông tin.


c l u l i, còn

1


1.2. C s d li u là gì?
C s d li u là t p h p các b ng ch a d li u v các đ i t
m c tiêu qu n lý.

ng liên quan nh m ph c v

VD: CSDL qu n lý bán hàng cho siêu th , CSDL qu n lý nhân s , CSDL qu n lý sinh
viên và đi m, …

1.3. Thi t k CSDL là gì?
Thi t k CSDL là vi c:
- phân tích các y u t đ u vào nh các hóa đ n, ch ng t , … các qui trình nghi p
v c ng nh các báo cáo đ u ra
- đ xác đ nh các d li u c n l u tr l i
- t ch c các d li u đó sao cho tránh l u tr trùng l p, tránh l u tr thi u d li u
- đ m b o cung c p thông tin đ u ra chính xác.
GIAO DI N
Hóa đ n
Ch ng t
Qui trình
nghi p v
U VÀO

Báo cáo


CSDL
H TH NG

NG D NG

U RA

Chú ý:
+ Trên đây là thi t k CSDL v m t logic.
+ N u cài đ t ng d ng trên các h qu n tr CSDL chuyên bi t nh Oracle thì c n có thi t
k CSDL v m t v t lý. Thi t k này có tính k thu t sâu, ph c t p h n dành cho sinh
viên chuyên Tin.
+ Khi đã có thi t k CSDL v m t logic, b n có th cài đ t trên MS Access ho c t o b ng
trên MS Excel r t d dàng và hi u qu .

2


1.4. Các b

c thi t k CSDL
1

u vào, u ra
Qui trình nghi p
v th c t

1.5. B ng d

Thi t k mô

hình ER

2

3

Thi t k mô hình
d li u quan h

Thi t k b ng
d li u chi ti t

li u là gì?

B ng d li u là b ng ch a các d li u mô t các đ i t ng qu n lý, v i các c t là các
thu c tính (hay tr ng - Field) mô t đ i t ng, m i dòng (hay b n ghi - Record) là
t p giá tr d li u c a m t đ i t ng c th .
VD: b ng d li u Khách hàng:
H và tên

Gi i tính

Ngày sinh

Tr

a ch

Nguy n V n An Nam


02/09/1985 157 Gi ng Võ, Ba ình, HN

Bùi Th Hoa

N

20/10/1980 89 Thái Hà,

Tr n Anh

Nam

01/05/1980 7 Tràng Thi, Hoàn ki m, HN

ng

a ch

Giá tr c a
tr ng a ch

ng a, HN

B n ghi

B ng d li u có gì khác v i b ng 2 chi u ?
- Các d li u trong b ng d li u có quan h v i nhau, t o nên m t ý ngh a nào đó.
+ Xét theo c t: m i c t là m t thu c tính nh ng cùng mô t m t đ i t

ng qu n lý. M i


c t là t p h p các giá tr thu c cùng m t ki u/ lo i.
+ Xét theo dòng: m i dòng là m t t p các giá tr mô t m t đ i t
- B ng d li u có s c t ít nh t có th và t
l

ng

ng c th .

ng đ i n đ nh, s dòng vô h n tùy vào dung

c ng c a máy tính.

- Không có 2 dòng d li u gi ng h t nhau t n t i trong b ng d li u.

3


2. Mô hình th c th liên h (Entity Relationship - ER)
Mô hình hóa th gi i th c là di n đ t th gi i th c ph c t p b ng ngôn ng mô hình
th c th liên h (ER) đ n gi n, đ có th nhìn rõ h n m i quan h gi a các đ i t ng,
b n ch t c a v n đ . ây là b c đ u tiên chu n b cho vi c thi t k CSDL.
ng th i
đây c ng là m t công c tr giúp cho vi c phân tích d li u, phân tích v n đ r t t t.

2.1. Các khái ni m và qui

c mô hình hóa c


b n

Ngoài các qui c mô hình hóa c b n đây còn m t s qui c mô hình hóa m r ng
đ có th bi u di n đ c th gi i th c ph c t p. Tuy nhiên trong môn h c này ch d ng
l i các bài toán c b n. N u quan tâm đ n ph n m r ng, hãy liên h v i giáo viên
d y.
Tên khái
ni m

T p th c th
hay còn g i là
Th c th

Khái ni m

Qui

c mô hình hóa

Là t p các đ i t ng c n qu n lý.
Tên c a t p th c th là m t danh
t chung. VD : t p các đ i t ng
Khách hàng – Th c th KHÁCH
HÀNG
Có th hình dung th c th
KHÁCH HÀNG là 1 b ng d
li u. Trong đó m i khách hàng là
m t dòng.

Là các đ c tính mô t đúng th c

th đó, không liên quan đ n th c
Thu c tính c a th khác.
th c th
Tên c a thu c tính là danh t
chung.
Thu c tính khóa đ

KHÁCH HÀNG
Mã KH
Tên KH
i n tho i

c g ch chân.

Là thu c tính xác đ nh duy nh t 1
Thu c tính
khóa chính c a th c th .
th c th
Th ng là thu c tính mã.
4


Tên khái
ni m

Khái ni m

Qui

c mô hình hóa


Trong mô hình ER thu c tính
khóa chính đ c g ch chân.
T p các quan
h hay còn g i
là Quan h

Là t p các m i liên h gi a m t
hay nhi u t p th c th .

B cc am i
quan h

Là s các th c th tham gia vào
m i quan h

Quan h 2
ngôi đ quy

Tên c a quan h là m t đ ng t .

Ng i qu n lý c ng là m t nhân
viên nên s đ c th hi n b ng
m t dòng trong b ng NHÂN
VIÊN.
Tuy nhiên đây t n t i m i quan
h qu n lý gi a dòng d li u c a
nhân viên làm qu n lý và các
dòng d li u c a các nhân viên
đ c qu n lý.


n

PHÒNG

VD: quan h có gi a th c th
PHÒNG BAN và th c th
NHÂN VIÊN.
ây là lo i th
gi i th c.



VD quan h s d ng gi a các
th c th NHÂN VIÊN, D ÁN
và K N NG.

n

NHÂN
VIÊN
NHÂN

Quan h 3
ngôi

1

BAN


ng g p trong th

Là quan h gi a 3 th c th .

Qu n lý

VIÊN

Là quan h gi a 2 th c th .
Quan h 2
ngôi

1

NHÂN

VIÊN

n



n

D

ÁN

1


K
N NG

5


Tên khái
ni m

Khái ni m

Qui

M t phòng ban ch có m t
tr ng phòng.
Quan h 1-1

M t tr ng phòng ch là tr
phòng c a m t phòng ban.

c mô hình hóa

PHÒNG
BAN

ng

Các quan h 1-1 th ng đ c
x lý nên không xu t hi n
trong ER.



TR

NG

1

PHÒNG

PHÒNG

Quan h 1-n

1

M t phòng ban có nhi u nhân
viên.

1

BAN


M t nhân viên ch thu c v m t
phòng ban.

NHÂN

n


VIÊN

M t nhân viên có th làm vi c
cho nhi u d án.
Quan h n-n

M t d án có th có nhi u nhân
viên.
V i m t nhân viên cho tr c và
m t d án cho tr c, ch có duy
nh t m t ngày tham gia d án
và m t vai trò đ c phân công.

Là thu c tính ph thu c vào các
th c th tham gia vào m i quan
h , không ch ph thu c vào riêng
th c th nào nên không th là
Thu c tính c a thu c tính c a th c th đó.
m i quan h
Trong VD v m i quan h n-n
trên, ngày tham gia d án và vai
trò là các thu c tính c a m i
quan h .

NHÂN
VIÊN

n


Ngày tham
gia d án

Làm
vi c cho

n

D

ÁN

Vai trò

6


Chú ý:
+ Nguyên t c đ c thông th

ng là t trên xu ng d

+ Khi v mô hình ER c n l u ý sao cho ng

i, t trái sang ph i.

i đ c theo nguyên t c thông th

ng có th


đ c đúng ý ngh a c a mô hình.
+ VD: các v mô hình ER đúng và sai c a đo n mô t th c t sau:
 M t phòng ban có nhi u nhân viên.
 M t nhân viên ch thu c v m t phòng ban.
Cách v đúng
PHÒNG
BAN

1

NHÂN
VIÊN

n

PHÒNG
BAN



Thu c
v

Cách v sai

n

NHÂN
VIÊN


1

PHÒNG
BAN

PHÒNG 1
BAN

NHÂN
VIÊN

Thu c
v

n

PHÒNG 1
BAN

1


NHÂN
VIÊN

n

NHÂN
VIÊN


n

PHÒNG
BAN

NHÂN
VIÊN

NHÂN
VIÊN

Thu c
v

PHÒNG
BAN

1

n

NHÂN
VIÊN

PHÒNG
BAN
1




Thu c
v

n
n


1

2.2. Mô hình hóa b ng mô hình ER
2.2.1. Các b

c c n th c hi n

- Xác đ nh m c tiêu qu n lý, đ i t

ng qu n lý.

- V i m i đ i t ng qu n lý, xác đ nh các thu c tính mô t đúng b n thân đ i t
M i đ i t ng qu n lý là m t Th c th . Xác đ nh thu c tính khóa chính.

ng đó.

7


- M i khi thêm 1 th c th c n xác đ nh xem li u có t n t i m i quan h gi a th c th m i
thêm v i m i th c th đang t n t i ?
- So sánh mô hình ER v i các yêu c u thông tin, yêu c u l u tr đ xem có b sót d li u
quan tr ng nào không ? T t c các d li u c n l u tr đ u đ c th hi n trên mô hình ER.


2.2.2. Xác đ nh m c tiêu và các đ i t
Xác đ nh m c tiêu qu n lý: th
đó c a doanh nghi p/ t ch c.
Xác đ nh các đ i t
hình ER):

ng qu n lý – Th c th

ng là m t ho t đ ng ho c m t qui trình nghi p v nào

ng qu n lý (m i đ i t

ng qu n lý s là m t th c th trong mô

- Là các đ i t ng tham gia vào quá trình qu n lý. Tr l i câu h i : đ đ t đ c m c tiêu
qu n lý c n qu n lý ai, cái gì ? ho c t p trung vào các danh t và tr l i câu h i : Li u có
c n qu n lý không ?
+

iv im iđ it

ng qu n lý xác đ nh đ

c. C n tr l i câu h i: đ i t

ng đó đ

c


qu n lý nh th nào trong doanh nghi p/ t ch c ? Câu tr l i s làm phát sinh thêm
thu c tính c a th c th ho c th c th m i c n qu n lý. Xem VD m c e, ph n 2.2.2 Các
l u ý khi xác đ nh thu c tính c a th c th .
+ VD: cùng là đ i t ng khách hàng, nh ng khách hàng siêu th thì ch c n qu n lý các
thông tin cá nhân còn khách hàng ngân hàng thì c n qu n lý theo lo i khách hàng.
Sách bán trong c a hàng và sách trong th vi n s đ c phân lo i khác nhau vì m c
tiêu qu n lý khác nhau.
- Là các ho t đ ng đ c th hi n b ng v n b n, ch ng t . VD : Hóa đ n bán hàng, H p
đ ng, Phi u m n sách, …

VD: Bài t p 2 ph n Thi t k CSDL.
Cách phân tích

K t qu

M c tiêu qu n lý:

QU N LÝ BÁN HÀNG
(Cho siêu th Hoa Xuân)

Tr

c khi bán hàng thì c n qu n lý gì? – Hàng hóa.

Hàng hóa đ

c qu n lý nh th nào

Hàng hóa


siêu th Hoa Xuân? – Lo i hàng
8


Theo lo i hàng.
Khi bán hàng, có c n qu n lý Khách hàng không? – Có đ
th c hi n các chính sách khuy n mãi đ i v i khách.

Khách hàng

Có c n phân lo i khách hàng không? – Không.
Vi c bán hàng có đ c th hi n b ng v n b n hay ch ng t
gì không? – Hóa đ n bán hàng.

Hóa đ n

Có c n qu n lý nhân viên không? – Có, đ tính doanh thu Nhân viên
bán hàng và l ng cho nhân viên.
Có c n phân lo i nhân viên không? – Không.

2.2.3. Xác đ nh thu c tính c a th c th
a. Làm th nào xác đ nh thu c tính c a th c th ?

M t th c th (đ i t ng) có th có r t nhi u thu c tính mô t . Nh ng thu c tính đ c
ch n làm thu c tính c a th c th ch là nh ng thu c tính chung nh t cho th c th
đó và ph c v m c tiêu qu n lý. Thu c tính chung nh t đây hi u là thu c tính mà t t
c các đ i t ng c th đ u có giá tr mô t thu c tính đó.
VD: Th c th KHÁCH HÀNG qu n lý các khách hàng, m i khách hàng là m t dòng
trong b ng KHÁCH HÀNG.
C n qu n lý nh ng thu c tính nào c a khách hàng?

Các thu c tính
mô t có th có
H và tên

Phân tích
ây là thu c tính c n thi t.

Các thu c tính c a th c
th KHÁCH HÀNG
H và tên

ây là thu c tính c n thi t cho:
Ngày sinh

- Vi c th c hi n các chính sách
khuy n mãi, t ng quà khách hàng
trong ngày sinh nh t
- Vi c đi u tra tình hình mua hàng

9


theo đ tu i khách hàng …
Tuy nhiên đ u bài không đ c p đ n vi c
c n thi t l u thông tin này.

ây là thu c tính c n thi t cho:
a ch

- Vi c g i các thông tin khuy n mãi

- Vi c đi u tra tình hình mua hàng
theo khu v c n i c a khách hàng


a ch

ây là thu c tính đ liên l c khi c n
thi t.
i n tho i

Email

u bài không đ c p đ n vi c c n thi t
l u thông tin này. Tuy nhiên b n v n
có th thêm n u mu n. Không b tr
đi m c ng không đ c c ng đi m.

i n tho i

ây là cách đ liên l c mi n phí, không
s b t ch i (nh g i đi n tho i) và
thông tin bao gi c ng đ n n i.
Tuy nhiên đ u bài không đ c p đ n
vi c c n thi t l u thông tin này.

Chi u cao

Thu c tính này s c n thi t đ i v i bài
toán qu n lý khách hàng c a c a hàng
may đo.


Cân n ng

Thu c tính này s c n thi t đ i v i bài
toán qu n lý khách hàng c a c a hàng
may đo.

C gi y

Thu c tính này s c n thi t đ i v i bài
toán qu n lý khách hàng c a c a hàng
th i trang.

Thích n cay

Thu c tính này c n thi t đ b n ti p th
các s n ph m ch bi n s n đúng kh u
v c a khách. Tuy nhiên ch 1 thu c
tính này thì không đ .
i v i khách hàng

c a hàng t p
10


ph m thì không c n quan tâm sâu s c
đ n m c đ này.

Chú ý: có s khác nhau gi a vi c thi t k CSDL đ đánh giá l y đi m và vi c thi t k
CSDL cho bài toán ng d ng th c t .

+

đánh giá l y đi m: B n ch li t kê các thu c tính mà đ u bài yêu c u ho c có liên
quan đ n gi thi t trong đ u bài. ôi khi k t qu thi t k không phù h p th c t nh ng
đúng lý thuy t và bám sát đ u bài.

+

s d ng th c t : B n không ch c n li t kê các thu c tính đ đ đáp ng nhu c u
qu n lý hi n t i mà còn ph i đáp ng c nhu c u qu n lý trong t ng lai (5 - 10
n m). Ng i thi t k gi i là ng i bi t nhìn tr c t ng lai. Tuy nhiên đôi khi c ng
ph i ch p nh n nh ng h n ch do t c đ phát tri n quá nhanh c a Khoa h c k thu t.
Ch ng h n, cách đây h n 10 n m, khi mà ch a nhi u ng i bi t đ n khái ni m email,
bi t g i và nh n th đi n t thì ng i thi t k CSDL s không đ a thu c tính Email
vào đ mô t Khách hàng. Nh ng trong th i đ i s hóa ngày nay thì không th thi t k
thi u thu c tính Email cho dù hi n t i đ i t ng khách hàng c a b n ít dùng email.

b. Thu c tính khóa chính c a th c th

Thu c tính khóa chính c a th c th : là thu c tính xác đ nh duy nh t m t dòng (m t
th c th c th ) trong b ng.
Thông th ng đ i v i m i đ i t ng qu n lý xác đ nh đ c thì khóa chính là thu c tính
Mã. Thu c tính này có th đã có t tr c, ph c v cho vi c qu n lý. Ch ng h n nh s
hóa đ n, s h p đ ng, mã hàng hóa, … ho c có th t thêm vào khi thi t k .
c. Thu c tính s đ ng và ph c h p

Thu c tính s đ ng là thu c tính có các giá tr không th tách ra thành nh ng ph n t
nh h n mà v n có ý ngh a và có th đ t tên thành m t tr ng m i.
Thu c tính ph c h p là thu c tính có các giá tr có th tách ra thành nh ng ph n t
nh h n mà v n có ý ngh a và có th đ t tên thành m t tr ng m i.

VD: trong b ng d li u Khách hàng sau:
H và tên

Gi i tính

Ngày sinh

a ch
11


Nguy n V n An

Nam

02/09/1985

157 Gi ng Võ, Ba ình, HN

Bùi Th Hoa

N

20/10/1980

89 Thái Hà,

S đ ng

Ph c h p


Ph c h p

ng a, HN


Ph c h p

- H và tên : là thu c tính ph c h p vì có th tách thành các thu c tính :
+ H đ m, Tên ho c
+ H ,

m và Tên ho c

+ H , Tên đ m, Tên.
- Gi i tính : là thu c tính s đ ng vì không th tách nh h n đ

c mà v n có ý ngh a.

- Ngày sinh : là thu c tính ph c h p vì có th tách thành 3 thu c tính : Ngày sinh, Tháng
sinh, N m sinh.
-

a ch : là thu c tính ph c h p vì có th tách thành : S nhà ph , Qu n, Thành Ph .

Khi nào thi t k thu c tính là ph c h p, khi nào c n tách ra thành s đ ng?
Câu tr l i ph thu c vào m c tiêu qu n lý và các yêu c u thông tin.
VD:
- N u th


ng xuyên c n đ a ra danh sách khách hàng s p x p theo Tên thì :

+ Thu c tính H và tên c n đ

c tách thành: H đ m, Tên.

+ Không nên ch n ph ng án tách thành: H ,
m, Tên. B i vì không bao gi c n s p
x p theo tên đ m và khi đ a ra báo cáo th ng c n tên đ y đ , khi đó l i ph i thêm
thao tác n i xâu.
- N u c n đ a ra danh sách các khách hàng theo t ng qu n ho c t ng thành ph thì :
+ Thu c tính

a ch c n tách thành S nhà ph , Qu n, Thành Ph .

Thu c tính Ngày sinh không c n tách nh h n, ch c n l u tr theo ki u Date thì Access
s cung c p các hàm đ có th x lý d li u này m t cách nhanh chóng. Ch ng h n: l y ra
n m c a m t giá tr Date, cho bi t giá tr Date đó thu c quý m y, tháng nào, tu n th bao
nhiêu trong n m, …

12


d. Thu c tính đ n tr và đa tr

Thu c tính đ n tr : là thu c tính mà m i ph n t (ô giao gi a dòng và c t) ch là m t
giá tr .
Thu c tính đa tr : là thu c tính mà m i ph n t (ô giao gi a dòng và c t) ch là m t
dãy hay m t t p các giá tr .
VD: trong b ng d li u NHÂN VIÊN sau:

Mã NV

H và tên

Ngo i ng

A01

Nguy n V n An

A02

Bùi Th Hoa

A03

Thái S n Kim

n tr

Anh, Pháp, Nh t

c, Pháp, Tây Ban Nha, Hàn, Trung qu c, Anh

n tr

a tr

- Mã NV :


là thu c tính đ n tr vì trong m i ô c a c t Mã NV ch ch a m t mã NV.

- H và tên :

là thu c tính đ n tr vì trong m i ô c a c t H và tên ch ch a duy nh t

giá tr H và tên c a 1 nhân viên.
- Ngo i ng :

là thu c tính đa tr vì trong m i ô c a c t Ngo i ng ch a m t dãy các giá

tr .

Tho t nhìn, thu c tính đa tr có v gi ng thu c tính ph c h p. V y thu c tính Ngo i ng
trên có ph i là thu c tính ph c h p không?
Theo đúng khái ni m thu c tính ph c h p, ta s tách thu c tính Ngo i ng thành các
ph n nh h n:
Mã NV

H và tên

A01

Nguy n V n An

A02

Bùi Th Hoa

A03


Thái S n Kim

?

?

?

Anh

Pháp

Nh t

Anh

Pháp

?

?

c

Hàn

?

Trung


- Các giá tr thu c m i c t thành ph n ch có th g i tên b ng chính giá tr ho c là tên thu c
tính ban đ u Ngo i ng  m i thành ph n này không th đ ng riêng làm thu c tính nên
Ngo i ng không ph i là thu c tính ph c h p.

13


- H n n a n u l y giá tr làm tên thu c tính thì ta s có các thu c tính : Anh, Pháp, Nh t, …
S c t s thay đ i tùy theo nhân viên  vi ph m đ c đi m c a b ng d li u c n thi t k .

G p thu c tính đa tr thì x lý th nào?
- N u b n không bao gi c n :
+ th ng kê s l

ng nhân viên bi t m t ngo i ng nào đó

+ hay đ a ra danh sách các nhân viên bi t m t ngo i ng nào đó
+ mà ch c n l u tr thông tin v thông tin v các ngo i ng mà m t nhân viên bi t, đ
khi c n thì tra c u nh m t thông tin tham kh o thêm
 hãy thi t k ngo i ng nh là m t thu c tính đa tr .
- N ub nc n:
+ th ng kê s l

ng nhân viên bi t m t ngo i ng nào đó

+ hay đ a ra danh sách các nhân viên bi t m t ngo i ng nào đó
 hãy thi t k m i ngo i ng là m t thu c tính.
+ Khi đó giá tr c a thu c tính có th là trình đ ngo i ng ho c yes/no.
+ Tuy nhiên c n h n ch s ngo i ng mà b n quan tâm. Ch ng h n, công ty b n hay làm

n v i các khách hàng Nh t b n, b n có th thi t k nh sau :

Mã NV

H và tên

Anh

Nh t

A01

Nguy n V n An

Yes

No

A02

Bùi Th Hoa

No

No

A03

Thái S n Kim


Yes

Yes

Th c th là m t danh t .
Thu c tính là m t danh t .
Giá tr có th là m t danh t ho c m t s ho c m t giá tr ngày tháng n m, …
e. V y m t danh t khi nào s là th c th , khi nào s là thu c tính, khi nào s là giá tr ?

M t danh t s là th c th khi:
- Là m t danh t chung ch m t nhóm các đ i t
- Có th li t kê m t s thu c tính mô t đ i t

ng c n qu n lý

ng đó.

M t danh t s là thu c tính khi:
14


- Danh t đó mô t thu c tính c a đ i t

ng qu n lý

- Là m t danh t chung c a m t t p các giá tr c th , cùng lo i.
- Không th li t kê các thu c tính mô t danh t đó.

M t danh t s là giá tr khi:
- Danh t đó xu t hi n trong m t dãy các danh t cùng lo i và có th g i tên b ng m t danh

t chung. Danh t chung đó chính là tên thu c tính.

VD sau phân tích các danh t xu t hi n trong đo n đ u c a bài t p 2:
Siêu th HOA XUÂN c n xây d ng m t ng d ng đ QU N LÝ VI C BÁN HÀNG.
Hàng hóa trong c a hàng đ c phân theo lo i nh :
u ng, Th c ph m đông l nh,
Hóa m ph m,
h p,... M t m t hàng ch thu c v m t lo i hàng và m t lo i hàng
có th có nhi u hàng hóa.

Danh t
Siêu th

Phân tích

Th c th /
thu c tính/
giá tr

Có c n qu n lý các siêu th không?
Không. Theo m c tiêu qu n lý, ch qu n lý vi c bán hàng
trong m t siêu th , c th đây là siêu th Hoa Xuân.

Hàng hóa

Có c n qu n lý các hàng hóa không?

Th c th

Có.

Có th mô t m t s thu c tính mô t hàng hóa không?
Tên hàng hóa,

n giá,

n v tính

u ng, Có c n qu n lý đ u ng, th c ph m đông l nh, hóa m Giá tr c a
ph m, đ h p, … không?
thu c
tính
Th c
Lo i hàng
ph m
Có.
đông l nh,
Có th mô t m t s thu c tính mô t
u ng không?
Hóa
m
Không. N u có ch có th là: Tên đ u ng, đ n giá, đ n v
ph m,
tính. ây là các thu c tính mô t hàng hóa r i.
h p
u ng, th c ph m đông l nh, hóa m ph m, đ h p, …
15


Danh t


Th c th /
thu c tính/
giá tr

Phân tích
có th g i b ng m t danh t chung là Lo i hàng.

m t hàng

Là t đ ng ngh a v i Hàng hóa.

lo i hàng

Nh trên, Lo i hàng là m t thu c tính có các giá tr :
u ng, th c ph m đông l nh, hóa m ph m, …

Th c th

Lo i hàng có ph i là m t thu c tính mô t Hàng hóa
không?
Có. B i vì giá tr c a Lo i hàng ph thu c vào Hàng hóa
và Lo i hàng đ ng trong b d li u hàng hóa c a m t m t
hàng c th có ý ngh a.
Tên lo i

VT

Pepsi

u ng


Lon

5.000

Cá h p

h p

H p

16.000

Tên hàng

n giá

Tuy nhiên, siêu th có hàng tr m m t hàng. M i lo i hàng
có th có vài ch c m t hàng và đ c nh p vào theo th t
khác nhau.
Li u b n có th đ m b o chu i ký t “
u ng” đ c gõ
đ ng nh t nh nhau trong c t Tên lo i c a hàng ch c dòng
m t hàng thu c lo i này ?
Li u có kh n ng lúc nào đó b n gõ thành:


u ng”

hay “


u ng”

hay “

u ng ” ?

N u b n là ng i c c k c n th n và t p trung cao đ khi
nh p d li u thì kh n ng x y ra đi u trên v n là có, cho
dù xác su t th p.
Nh v y khi b n c n đ a ra danh sách các m t hàng “
u ng” thì k t qu s không chính xác, thi u các dòng m t
hàng có lo i hàng gõ sai nh trên.
đ m b o d li u nh p luôn đ ng nh t, Access cho phép
16


Danh t

Th c th /
thu c tính/
giá tr

Phân tích
b n t o LOOKUP cho tr ng Tên lo i đ khi nh p d li u
cho tr ng này b n ch c n ch n m t trong nh ng giá tr
có s n mà không ph i gõ l i.

Có 2 gi i pháp cho vi c t o LOOKUP cho tr
hàng:


ng Lo i

- Danh sách giá tr l a ch n là danh sách do b n nh p vào
 s d ng khi giá tr trong danh sách ít và không có nhu
c u qu n lý đ i t ng đó.
- Danh sách giá tr l a ch n tham chi u t i m t b ng  s
d ng khi giá tr trong danh sách nhi u, hay bi n đ ng và
có nhu c u qu n lý đ i t ng đó.

đây Lo i hàng là m t đ i t ng c n qu n lý nên Lo i
hàng s là m t th c th v i các thu c tính: Mã lo i, Tên
lo i.

f. Thu c tính tính toán t các thu c tính khác th

Thành ti n = S l

ng không đ

ng *

cl ul i

n giá

- S l ng và
n giá là các thu c tính c s . Có giá tr c a 2 thu c tính này ta có th tính
đ c Thành ti n.
- Thành ti n: là thu c tính có th tính toán đ


c t các thu c tính c s .

 Ch c n l u tr thu c tính S l

n giá.

ng và

17


 Không c n l u thu c tính Thành ti n. Th c t , trong m t s tr ng h p v n thi t k
l u l i thu c tính này. Tuy nhiên, khi đó c n l p trình đ đ m b o đ ng b d li u, tính
chính xác c a d li u. Tr

ng h p này dành cho sinh viên chuyên Tin.

2.2.4. Xác đ nh m i quan h gi a 2 th c th
a. Làm th nào đ bi t có t n t i m i quan h gi a 2 th c th ?
- N u 2 th c th đó là 2 đ i t

ng tham gia tr c ti p vào quá trình qu n lý thì ch c ch n t n

t i m i quan h gi a 2 th c th này.
- N u 1 trong 2 th c th là th c th phát sinh đ ph c v vi c qu n lý thì ít khi t n t i m i
quan h gi a 2 th c th này tr khi có yêu c u nghi p v rõ ràng.
- N u 2 th c th đ u là th c th phát sinh đ ph c v vi c qu n lý thì ho c là không có
quan h ho c là ch có th có quan h phân c p cha con.


VD: có 3 th c th : LO I HÀNG – th c th phát sinh đ qu n lý Hàng hóa, HÀNG HÓA
– th c th tham gia tr c ti p vi c bán hàng, KHÁCH HÀNG – th c th tham gia tr c
ti p vi c bán hàng.
- Gi a LO I HÀNG và HÀNG HÓA có m i quan h Có
- Gi a HÀNG HÓA và KHÁCH HÀNG có m i quan h Mua
- Gi a KHÁCH HÀNG và LO I HÀNG không có quan h nào. Khách hàng mua hàng
hóa ch không mua lo i hàng.
b. Làm th nào đ xác đ nh đ liên k t (1-n, n-n)

C n xác đ nh đ liên k t c a quan h Có
gi a 2 th c th LO I HÀNG và HÀNG
HÓA.
M t LO I HÀNG có th Có bao nhiêu
HÀNG HÓA ?
Có th có nhi u nhân viên (n)
M t HÀNG HÓA có th Thu c v bao
nhiêu LO I HÀNG?
Ch thu c v 1 phòng ban (1)

LO I
HÀNG



HÀNG
HÓA

LO I
HÀNG




n

HÀNG
HÓA

n

HÀNG
HÓA

LO I
HÀNG

1



18


c. N u m i quan h c a 2 th c th đ
nh th nào?

c th hi n b ng hóa đ n ho c ch ng t thì thi t k

VD: Gi a HÀNG HÓA và KHÁCH HÀNG có m i quan h Mua.
Tuy nhiên m i l n khách hàng mua hàng hóa đ


c th hi n, xác nh n b ng m t hóa đ n.

V y nên khi v mô hình ER thì không đ quan h Mua tr c ti p gi a HÀNG HÓA và
KHÁCH HÀNG

KHÁCH n
HÀNG

Mua

n

HÀNG
HÓA

Mà đ a thêm Hóa đ n vào nh m t đ i t ng qu n lý. Và bây gi ch còn m i quan h
gián ti p gi a HÀNG HÓA và KHÁCH HÀNG thông qua HÓA
N
HÀNG
HÓA

KHÁCH
HÀNG

1

n

S
h u


n

HÓA
N

G m

n

N u v n gi m i quan h tr c ti p Mua gi a HÀNG HÓA và KHÁCH HÀNG thì s
sai
KHÁCH
HÀNG

n

n

Mua

1
S
h u

HÀNG
HÓA

n


n

HÓA
N

n

G m

d. Khi nào m t thu c tính là thu c tính c a m i quan h ?

VD: Bài t p 2 ph n Thi t k CSDL.
19


S H : HD001

Siêu th HOA XUÂN
HÓA

N MUA HÀNG

Ngày mua: 1/1/2003

Tên khách hàng: Nguy n V n A

Qu n/Huy n: Q Ba ình

T nh/Thành Ph : Hà N i
SL


V tính

Thành ti n

STT

Tên hàng

Giá bán

1

M H oH o

5

Thùng

30000

150000

2

Trà đào IceTea

10

H p


10000

100000

T ng c ng
Ng

S l

250000

il pH

ng là thu c tính c n l u tr l i. S l

N uS l

ng là thu c tính c a th c th nào?

ng là thu c tính c a th c th HÀNG HÓA, ta có th có b ng d li u sau:
Tên lo i

Tên hàng
M H oH o

M gói

Trà đào IceTea
M H oH o


VT

S l

ng

Thùng

30.000

5

H p

10.000

10

Thùng

30.000

20

u ng
M gói

n giá


T n t i 2 dòng này
b i vì M H o h o
có th bán cho
nhi u ng i, trong
nhi u hóa đ n.

N u l u tr nh trên thì:
- Vi ph m qui t c thi t k b ng d li u: M i hàng hóa ch đ
HÀNG HÓA.
- S l

ng 5

+ S l
+ S l
S l

dòng th nh t là :

ng t n kho hay s l

+ N u là s l
ng

c l u trong 1 dòng c a b ng

ng bán? - Không bi t.

ng bán thì bán cho ai, trong hóa đ n nào? - Không bi t.
đây không có ý ngh a, không ph i là thu c tính mô t Hàng hóa.


ng không th là thu c tính c a th c th HÀNG HÓA.

Nh v y, đ đ m b o m i hàng hóa ch đ
s có b ng d li u nh sau:
Tên hàng

Tên lo i

VT

c l u trong 1 dòng c a b ng HÀNG HÓA, ta

n giá

S l

ng

Ph i l u tr th
này b i vì M H o
h o có th bán cho
20
nhi u ng i, trong
nhi u hóa đ n.


M H oH o
Trà đào IceTea


M gói
u ng

Thùng

30.000

5, 20, …

H p

10.000

10

N u l u tr nh trên thì:
- S l

ng s là thu c tính đa tr .

- S l

ng là 5, 20, … là s l

S l

ng gì ? – Không rõ ràng.

ng không th là thu c tính c a th c th HÀNG HÓA.


N uS l

ng là thu c tính c a th c th HÓA

S HD

Ngày

S l

N, ta có th có b ng d li u sau:

ng

HD001

01/01/2003

5

HD001

01/01/2003

10

T n t i 2 dòng này
b i vì hóa đ n
HD001 mua 2 m t
hàng.


N u l u tr nh trên thì:
- Vi ph m qui t c thi t k b ng d li u: M i hàng hóa ch đ
HÀNG HÓA.
- S l

ng 5

- S l

ng

S l

dòng th nh t là s l

ng mua c a m t hàng nào ? - Không xác đ nh đ

c.

đây không có ý ngh a, không ph i là thu c tính mô t Hóa đ n.

ng không th là thu c tính c a th c th HÓA

Nh v y, đ đ m b o m i hàng hóa ch đ
s có b ng d li u nh sau:
S HD

c l u trong 1 dòng c a b ng


Ngày

S l

ng

HD001

01/01/2003

5, 10

HD002

01/01/2003

20

N.

c l u trong 1 dòng c a b ng HÓA

N, ta

Ph i l u tr th
này b i vì hóa đ n
HD001 mua 2 m t
hàng.

N u l u tr nh trên thì:

- S l

ng s là thu c tính đa tr .

21


- S l

ng là 5, 20, … là s l

S l

ng gì ? – Không rõ ràng.

ng không th là thu c tính c a th c th HÓA

N.

Nh v y:
- S l

ng không th là thu c tính c a th c th HÀNG HÓA

- S l

ng không th là thu c tính c a th c th HÓA

- S l


ng ph thu c vào c Hàng hóa và Hóa đ n. S l

N
ng đ t bên c nh hàng hóa và

hóa đ n th hi n : Hàng hóa nào bán cho hóa đ n nào v i s l

S l
e.

ng bao nhiêu.

ng là thu c tính c a m i quan h G m gi a HÓA

N và HÀNG HÓA.

a quan h gi a 2 t p th c th

VD Bài t p 3: Qu n lý xu t nh p kho, ph n Thi t k CSDLQL.
PHI U NH P KHO
Ngày nh p

S phi u…………

Tên nhân viên nh p hàng
Tên nhà cung c p
a ch nhà cung c p
STT Tên hàng

VT


SL

n giá

1

M H oH o

Thùng 3

24฀00

5%

756000

2

Trà đào IceTea

Thùng 1

240000

5%

252000

T ng c ng

Th kho
Trong phi u nh p kho
- Ng

VAT Thành ti n

1008000
K toán tr

ng

Ng

i giao

trên, ta th y:

i giao : là nhân viên c a nhà cung c p  không c n qu n lý nh ng có th l u l i đ

thêm không tin tham kh o, khi x y ra s c liên quan.

22


- Nhân viên nh p hàng, Th kho, K toán tr ng : đ u là nhân viên c a công ty  c n
qu n lý  m i nhân viên s đ c th hi n b ng 1 dòng trong b ng NHÂN VIÊN.

23



Có th v mô hình ER theo 2 cách sau:
Cách 1

Cách 2
P_NH P

NHÂN VIÊN

S phi u
Ngày nh p

Mã NV
Tên NV
i n tho i

1

1

n
1

n

n

P_NH P

NHÂN VIÊN


S phi u
Ngày nh p

Mã NV
Tên NV
i n tho i

n

n

L p

Tham
gia

Là Th
kho

Vai trò

ER

Mô hình d li u quan h

Mô hình d li u quan h
P_NH P

NHÂN VIÊN
# Mã NV

Tên NV
i n tho i

ER

Là k toán
tr ng

1
1
1

# S phi u
Ngày nh p
n @Mã nv nh p
n @Mã Th kho
n
@Mã KT tr ng

P_NH P

NHÂN VIÊN

1
# Mã NV
Tên NV
i n tho i

1


# S phi u
Ngày nh p

CT_P.NH P
#@ S phi u
#@ Mã NV
n
Vai trò

- Cách này áp d ng đ i v i các tr ng h p
s quan h gi a 2 th c th c đ nh đ i v i
m i quan h c th .
- M i phi u nh p kho, đ u có đúng 3 nhân
viên tham gia v i 3 vai trò xác đ nh

n

- Cách này áp d ng đ i v i các tr ng
h p s quan h gi a 2 th c th không
xác đ nh, thay đ i đ i v i m i quan h
c th . ây c ng chính là u đi m c a
cách này.
- Cách này phù h p v i m i quan h gi a

24


NHÂN VIÊN và D ÁN. M i d án có
nhi u nhân viên tham gia v i các vai trò
khác nhau. M i d án có s l ng nhân


 nên ch n cách này.
-

u đi m c a cách này là mô hình d li u
quan h đ n gi n, không sinh thêm b ng

viên tham gia khác nhau và các vai trò
c ng khác nhau.

trung gian.

2.2.5. Mô hình ER – Qu n lý bán hàng t i siêu th Hoa Xuân
LO I HÀNG

HÀNG HÓA

1

Mã lo i
Tên lo i



n

n

Mã hàng
Tên hàng

n giá
VT

Thu c
v

KHÁCH HÀNG

1
Mã KH

S
h u

n

HÓA
S HD
Ngày bán

Tên KH
a ch

SL

N

n

NHÂN VIÊN


1
Mã NV

L p

n

Tên NV
i n tho i

25


×