Về lý thuyết : Đề tài đã khảo sát được toàn bộ hiện trạng hệ thống, nắm bắt được quy trình quy phạm công tác quản lý đào tạo và cấp GPLX để phát biểu bài toán, phân tích hoàn chỉnh bài toán từ sơ đồ tổ chức, phân tích dữ liệu và phân tích chức năng hệ thống, thiết kế dữ liệu, thiết kế chức năng hệ thống .
78 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 2329 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Chuyên ngành công nghệ thông tin hệ thống quản lý đào tạo và cấp giấy phép lái xe, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
®ît s¸t h¹ch, thuéc tÝnh khãa trong thùc thÓ ®ît s¸t h¹ch
M· khãa ®µo t¹o (makhoa) : Lµ m· khãa ®µo t¹o, thuéc tÝnh khãa trong thùc thÓ khãa ®µo t¹o
Sè lîng thÝ sinh (SL) : M« t¶ sè lîng thÝ sinh tham gia s¸t h¹ch cña c¸c khãa ®µo t¹o
Thùc thÓ Hå s¬ GPLX : M« t¶ c¸c thuéc tÝnh ®Ó x¸c ®Þnh mét hå s¬ GPLX. X¸c ®Þnh c¸c thuéc tÝnh cña thùc thÓ :
Sè hå s¬ (sohoso) : §©y lµ thuéc tÝnh khãa, nhê thuéc tÝnh nµy ta ph©n biÖt ®îc hå s¬ GPLX nµy víi hå s¬ GPLX kh¸c
Sè lý lÞch (solylich) : Lµ sè lý lÞch, thuéc tÝnh khãa trong thùc thÓ lý lÞch
M· GPLX (magplx) : Lµ m· GPLX, thuéc tÝnh khãa trong thùc thÓ GPLX
M· h¹ng GPLX (mahang) : M· h¹ng GPLX, thuéc tÝnh khãa trong thùc thÓ h¹ng GPLX
M· c¬ së ®µo t¹o (macsdt) : Lµ m· c¬ së ®µo t¹o, thuéc tÝnh khãa trong thùc thÓ c¬ së ®µo t¹o
TØnh chuyÓn ®i (tinhdi) : Lµ m· tØnh, thuéc tÝnh khãa trong thùc thÓ tØnh, m« t¶ tØnh mµ hå s¬ GPLX sÏ chuyÓn ®i
TØnh chuyÓn ®Õn (tinhden) : Lµ m· tØnh, thuéc tÝnh khãa trong thùc thÓ tØnh, m« t¶ tØnh mµ cã hå s¬ GPLX ®· chuyÓn ®Õn
Thùc thÓ C¸n bé : M« t¶ c¸c thuéc tÝnh ®Ó x¸c ®Þnh c¸n bé s¸t h¹ch trong Ban qu¶n lý s¸t h¹ch, lµ ngêi tham gia trong Héi ®ång s¸t h¹ch vµ Tæ s¸t h¹ch. X¸c ®Þnh c¸c thuéc tÝnh cña thùc thÓ :
M· c¸n bé (macanbo) : §©y lµ thuéc tÝnh khãa, nhê thuéc tÝnh nµy ta ph©n biÖt ®îc c¸n bé s¸t h¹ch nµy víi c¸n bé s¸t h¹ch kh¸c
Tªn c¸n bé (tencanbo) : M« t¶ tªn c¸n bé s¸t h¹ch t¬ng øng víi m· c¸n bé
CÊp ®é (capdo) : M« t¶ tr×nh ®é cña c¸n bé s¸t h¹ch cã thÓ s¸t h¹ch ®Õn h¹ng GPLX nµo
S¬ ®å thùc thÓ vµ c¸c mèi liªn kÕt :
huyÖn
lý lÞch
1
n
²
XÐt hai thùc thÓ HuyÖn vµ Lý lÞch, ta thÊy r»ng mét lý lÞch chØ ë trong mét huyÖn, nhng mét huyÖn cã thÓ cã nhiÒu lý lÞch. Nh vËy, hai thùc thÓ HuyÖn vµ Lý lÞch cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
tØnh
lý lÞch
1
n
²
XÐt hai thùc thÓ tØnh vµ Lý lÞch, ta thÊy r»ng mét lý lÞch chØ ë trong mét tØnh, nhng mét tØnh cã thÓ cã nhiÒu lý lÞch. Nh vËy, hai thùc thÓ tØnh vµ Lý lÞch cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
tØnh
huyÖn
1
n
²
XÐt hai thùc thÓ tØnh vµ huyÖn, ta thÊy r»ng mét huyÖn chØ ë trong mét tØnh, nhng mét tØnh cã thÓ cã nhiÒu huyÖn. Nh vËy, hai thùc thÓ tØnh vµ huyÖn cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
d©n téc
lý lÞch
1
n
²
XÐt hai thùc thÓ d©n téc vµ Lý lÞch, ta thÊy r»ng mét lý lÞch chØ mang mét d©n téc, nhng mét d©n téc cã thÓ cã nhiÒu lý lÞch. Nh vËy, hai thùc thÓ d©n téc vµ Lý lÞch cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
t«n gi¸o
lý lÞch
1
n
²
XÐt hai thùc thÓ t«n gi¸o vµ Lý lÞch, ta thÊy r»ng mét lý lÞch chØ ë trong mét t«n gi¸o, nhng mét t«n gi¸o cã thÓ cã nhiÒu lý lÞch. Nh vËy, hai thùc thÓ t«n gi¸o vµ Lý lÞch cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
lý lÞch
gplx
1
n
²
XÐt hai thùc thÓ Lý lÞch vµ gplx, ta thÊy r»ng mét GPLX chØ x¸c ®Þnh mét lý lÞch, nhng mét lý lÞch cã thÓ cã nhiÒu GPLX. Nh vËy, hai thùc thÓ Lý lÞch vµ gplx cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
lý lÞch
hå s¬
1
n
²
XÐt hai thùc thÓ Lý lÞch vµ hå s¬, ta thÊy r»ng mét hå s¬ chØ x¸c ®Þnh mét lý lÞch, nhng mét lý lÞch cã thÓ cã nhiÒu hå s¬. Nh vËy, hai thùc thÓ Lý lÞch vµ hå s¬ cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
lý lÞch
hå s¬ gplx
1
n
²
XÐt hai thùc thÓ Lý lÞch vµ hå s¬ gplx, ta thÊy r»ng mét hå s¬ GPLX chØ x¸c ®Þnh mét lý lÞch, nhng mét lý lÞch cã thÓ cã nhiÒu hå s¬ GPLX. Nh vËy, hai thùc thÓ Lý lÞch vµ hå s¬ GPLX cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
h¹ng gplx
gplx
1
n
²
XÐt hai thùc thÓ h¹ng gplx vµ gplx, ta thÊy r»ng mét GPLX chØ x¸c ®Þnh mét h¹ng GPLX cao nhÊt, nhng mét h¹ng GPLX cã thÓ cã nhiÒu GPLX. Nh vËy, hai thùc thÓ h¹ng gplx vµ gplx cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
h¹ng gplx
khãa ®µo t¹o
1
n
²
XÐt hai thùc thÓ h¹ng gplx vµ khãa ®µo t¹o, ta thÊy r»ng mét khãa ®µo t¹o chØ ®µo t¹o mét h¹ng GPLX, nhng mét h¹ng GPLX cã thÓ cã nhiÒu khãa ®µo t¹o. Nh vËy, hai thùc thÓ h¹ng gplx vµ khãa ®µo t¹o cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
h¹ng gplx
hå s¬
1
n
²
XÐt hai thùc thÓ h¹ng gplx vµ hå s¬, ta thÊy r»ng mét hå s¬ chØ cã mét h¹ng GPLX cao nhÊt, nhng mét h¹ng GPLX cã thÓ cã nhiÒu hå s¬. Nh vËy, hai thùc thÓ h¹ng gplx vµ hå s¬ cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
h¹ng gplx
hå s¬ gplx
1
n
²
XÐt hai thùc thÓ h¹ng gplx vµ hå s¬ gplx, ta thÊy r»ng mét hå s¬ GPLX chØ cã mét h¹ng GPLX cao nhÊt, nhng mét h¹ng GPLX cã thÓ cã nhiÒu hå s¬ GPLX. Nh vËy, hai thùc thÓ h¹ng gplx vµ hå s¬ gplx cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
c¬ së ®µo t¹o
khãa ®µo t¹o
1
n
²
XÐt hai thùc thÓ c¬ së ®µo t¹o vµ khãa ®µo t¹o, ta thÊy r»ng mét khãa ®µo t¹o chØ ®îc ®µo t¹o trong mét c¬ së ®µo t¹o, nhng mét c¬ së ®µo t¹o cã thÓ ®µo t¹o ®îc nhiÒu khãa ®µo t¹o. Nh vËy, hai thùc thÓ c¬ së ®µo t¹o vµ khãa ®µo t¹o cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
c¬ së ®µo t¹o
hå s¬ gplx
1
n
²
XÐt hai thùc thÓ c¬ së ®µo t¹o vµ hå s¬ gplx, ta thÊy r»ng mét hå s¬ GPLX chØ ®îc ®µo t¹o trong mét c¬ së ®µo t¹o, nhng mét c¬ së ®µo t¹o cã thÓ cã nhiÒu hå s¬ GPLX. Nh vËy, hai thùc thÓ c¬ së ®µo t¹o vµ hå s¬ gplx cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
gplx
hå s¬ gplx
1
n
²
XÐt hai thùc thÓ gplx vµ hå s¬ gplx, ta thÊy r»ng mét hå s¬ GPLX chØ cã mét lo¹i GPLX, nhng mét lo¹i GPLX cã thÓ cã nhiÒu hå s¬ GPLX. Nh vËy, hai thùc thÓ gplx vµ hå s¬ gplx cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
khãa ®µo t¹o
dßng s¸t h¹ch
1
n
²
XÐt hai thùc thÓ khãa ®µo t¹o vµ dßng s¸t h¹ch, ta thÊy r»ng mét dßng s¸t h¹ch chØ cã trong mét khãa ®µo t¹o, nhng mét khãa ®µo t¹o cã thÓ s¸t h¹ch nhiÒu lÇn. Nh vËy, hai thùc thÓ khãa ®µo t¹o vµ dßng s¸t h¹ch cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
®ît s¸t h¹ch
dßng s¸t h¹ch
1
n
²
XÐt hai thùc thÓ ®ît s¸t h¹ch vµ dßng s¸t h¹ch, ta thÊy r»ng mét dßng s¸t h¹ch chØ cã trong mét ®ît s¸t h¹ch, nhng mét ®ît s¸t h¹ch cã thÓ cã nhiÒu dßng s¸t h¹ch. Nh vËy, hai thùc thÓ ®ît s¸t h¹ch vµ dßng s¸t h¹ch cã sù liªn kÕt víi nhau theo quan hÖ mét - nhiÒu.
C¸c phô thuéc hµm :
Tinh : (matinh) ® (tentinh)
huyen : (mahuyen)® (tenhuyen, matinh)
dantoc : (madt) ® (tendt)
tongiao : (matg) ® (tentg)
hanggplx : (mahang) ® (tenhang, loaixe)
cosodaotao : (macsdt) ® (tencsdt)
lylich : (solylich) ® (holot, ten, ngaysinh, gioitinh, cmnd, tinhns, dctt, huyentt, dcct, huyenct, tel, madt, matg, quoctich, anh, ghichu)
hoso : (sothutu) ® (solylich, mahang, DIEMLT, diemth)
gplx : (magplx) ® (solylich, serial, ngaycap, thoihan, mahang)
khoadaotao : (makhoa) ® (tenkhoa, sl, hinhthuc, mahang, macsdt)
dotsathach : (madotsh) ® (tendotsh, ddsh, tungay, denngay)
dongsathach : (madotsh, makhoa) ® (sl)
hosogplx : (sohoso) ® (solylich, magplx, mahang, macsdt, tinhdi, tinhden)
M« h×nh d÷ liÖu thùc thÓ ERD :
1
n
n
1
1
n
1
n
n
1
1
n
1
n
n
1
1
n
n
1
1
n
1
n
1
n
1
n
1
n
n
1
1
n
Ch¬ng iiI
thiÕt kÕ hÖ thèng
1. ThiÕt kÕ c¬ së d÷ liÖu
Sau ®©y lµ tæ chøc c¸c tËp tin c¬ së d÷ liÖu Microsoft SQL
1.1. tØnh (tinh) : Lu th«ng tin vÒ danh môc tØnh
Field
Field name
Type
Size
DiÔn gi¶i
1
matinh
Nchar
02
M· tØnh
2
tentinh
Varchar
16
Tªn tØnh
1.2. huyÖn (huyen) : Lu th«ng tin vÒ danh môc huyÖn
Field
Field name
Type
Size
DiÔn gi¶i
1
mahuyen
Nchar
04
M· huyÖn
2
matinh
Nchar
02
M· tØnh
3
tenhuyen
Varchar
20
Tªn huyÖn
1.3. d©n téc (dantoc) : Lu th«ng tin vÒ danh môc d©n téc
Field
Field name
Type
Size
DiÔn gi¶i
1
madt
Nchar
02
M· d©n téc
2
tendt
Varchar
10
Tªn d©n téc
1.4. t«n gi¸o (tongiao) : Lu th«ng tin vÒ danh môc t«n gi¸o
Field
Field name
Type
Size
DiÔn gi¶i
1
matg
Nchar
02
M· t«n gi¸o
2
tentg
Varchar
16
Tªn t«n gi¸o
1.5. h¹ng gplx (hanggplx) : Lu th«ng tin vÒ c¸c h¹ng GPLX
Field
Field name
Type
Size
DiÔn gi¶i
1
mahang
Nchar
02
M· h¹ng GPLX
2
tenhang
Nchar
02
Tªn h¹ng GPLX
3
loaixe
Varchar
95
Lo¹i xe ®îc sö dông
1.6. c¬ së ®µo t¹o (cosodaotao) : Lu th«ng tin vÒ c¸c c¬ së ®µo t¹o
Field
Field name
Type
Size
DiÔn gi¶i
1
macsdt
Nchar
01
M· c¬ së ®µo t¹o
2
tencsdt
Varchar
30
Tªn c¬ së ®µo t¹o
1.7. lý lÞch (lylich) : Lu th«ng tin vÒ ngêi cã GPLX
Field
Field name
Type
Size
DiÔn gi¶i
1
solylich
Nchar
10
Sè lý lÞch
2
Holot
Varchar
30
Hä vµ tªn lãt
3
ten
Varchar
7
Tªn
4
ngaysinh
Datetime
8
Ngµy th¸ng n¨m sinh
5
gioitinh
Bit
01
Giíi tÝnh
6
cmnd
Char
12
Sè CMND
7
tinhns
Smallint
02
M· tØnh
8
diachitt
Varchar
50
§Þa chØ thêng tró ®Õn x· phêng
9
huyentt
Nchar
04
M· huyÖn
10
diachict
Varchar
50
§Þa chØ c tró ®Õn x· phêng
11
huyenct
Nchar
04
M· huyÖn
12
tel
Char
10
§iÖn tho¹i liªn l¹c
13
madt
Nchar
02
M· d©n téc
14
matg
Nchar
02
M· t«n gi¸o
15
quoctich
Varchar
20
Quèc tÞch
16
anh
Image
16
H×nh ¶nh
17
ghichu
Varchar
100
Ghi c¸c th«ng tin cÇn thiÕt kh¸c
1.8. hå s¬ (hoso) : Lu th«ng tin vÒ hå s¬ cña ngêi cã GPLX
Field
Field name
Type
Size
DiÔn gi¶i
1
sothutu
Nchar
10
Sè thø tù cña hå s¬ (sè BD)
2
solylich
Nchar
10
Sè lý lÞch
3
mahang
Nchar
02
M· h¹ng GPLX
4
diemlt
Int
04
§iÓm thi lý thuyÕt
5
diemth
Int
04
§iÓm thi thùc hµnh
1.9. dßng ®µo t¹o (dongdaotao) : Lu th«ng tin vÒ Dßng ®µo t¹o
Field
Field name
Type
Size
DiÔn gi¶i
1
solylich
Nchar
10
Sè lý lÞch
2
macsdt
Nchar
01
M· c¬ së ®µo t¹o
3
makhoa
Nchar
05
M· khãa ®µo t¹o
4
sathach
bit
01
§îc tham dù s¸t h¹ch
5
lydokhongdu
Nchar
100
Lý do kh«ng ®ñ ®iÒu kiÖn
1.10. khãa ®µo t¹o (khoadaotao) : Lu th«ng tin vÒ c¸c khãa ®µo t¹o
Field
Field name
Type
Size
DiÔn gi¶i
1
makhoa
Nchar
05
M· khãa ®µo t¹o
2
macsdt
Nchar
01
M· c¬ së ®µo t¹o
3
tenkhoa
Varchar
20
Tªn khãa ®µo t¹o
4
sl
Int
04
Sè lîng thÝ sinh
5
hinhthuc
Varchar
15
H×nh thøc ®µo t¹o
6
mahang
Nchar
02
M· h¹ng GPLX
1.11. ®ît s¸t h¹ch (dotsathach) : Lu th«ng tin vÒ c¸c ®ît s¸t h¹ch
Field
Field name
Type
Size
DiÔn gi¶i
1
madotsh
Nchar
04
M· ®ît s¸t h¹ch
2
tendotsh
Varchar
20
Tªn ®ît s¸t h¹ch
3
ddsh
Varchar
90
§Þa ®iÓm s¸t h¹ch
4
tungay
Datetime
8
Ngµy b¾t ®Çu s¸t h¹ch
5
denngay
Datetime
8
Ngµy kÕt thóc s¸t h¹ch
1.12. dßng s¸t h¹ch (dongsathach) : Lu th«ng tin vÒ dßng s¸t h¹ch
Field
Field name
Type
Size
DiÔn gi¶i
1
madotsh
Nchar
04
M· ®ît s¸t h¹ch
2
makhoa
Nchar
05
M· khãa ®µo t¹o
3
macsdt
Nchar
01
M· c¬ së ®µo t¹o
4
sl
Int
03
Slîng thÝ sinh tham gia s¸t h¹ch
1.13. hå s¬ gplx (hosogplx) : Lu th«ng tin vÒ hå s¬ GPLX
Field
Field name
Type
Size
DiÔn gi¶i
1
magplx
Nchar
12
M· GPLX
2
mahang
Nchar
02
M· h¹ng GPLX
3
solylich
Nchar
10
Sè lý lÞch
4
serial
Nchar
12
Sè serial trªn GPLX
5
Ngaycap
Datetime
08
Ngµy th¸ng n¨m cÊp GPLX
6
Thoihan
Nchar
08
Ngµy th¸ng n¨m hÕt h¹n
7
macsdt
Nchar
01
M· c¬ së ®µo t¹o
8
tinhdi
Nchar
02
M· tØnh
9
tinhden
Nchar
02
M· tØnh
1.14. c¸n bé (canbo) : Lu th«ng tin vÒ c¸n bé s¸t h¹ch
Field
Field name
Type
Size
DiÔn gi¶i
1
macanbo
Nchar
02
M· c¸n bé s¸t h¹ch
2
tencanbo
Varchar
40
Tªn c¸n bé
3
capdo
Nchar
01
CÊp ®é s¸t h¹ch cña c¸n bé
1.15. s¬ ®å quan hÖ d÷ liÖu trªn microsoft sql server 7.0
m« t¶ tiÕn tr×nh
Qu¸ tr×nh : CËp nhËt c¸c Danh môc (nh : TØnh, C¬ së ®µo t¹o,....)
WHO : Nh©n viªn bé phËn §µo t¹o, TiÕp nhËn hå s¬
WHEN : Khi cã c¸c danh môc míi cÇn cËp nhËt
INPUT : C¸c th«ng tin cÇn cËp nhËt
OUTPUT : File Danhmuc
open File danhmuc
Do While cã sù thay ®æi
Input record danh môc
Write record danh môc vµo File Danhmuc
Enddo
Close File
Qu¸ tr×nh : CËp nhËt hå s¬ thÝ sinh, l¸i xe
WHO : Nh©n viªn bé phËn §µo t¹o, TiÕp nhËn hå s¬
WHEN : Khi cã nép hå s¬ ®Ó häc vµ thi ®Ó nhËn GPLX hoÆc hå s¬ cÊp ®æi
INPUT : Hå s¬ thÝ sinh, l¸i xe
OUTPUT : File LYLICH, HOSO, GPLX, hosogplx
open File lylich, HOSO, GPLX, hosogplx
Do While cã sù thay ®æi
Input record lý lÞch, hå s¬, GPLX, hå s¬ GPLX
Write record lý lÞch, hå s¬, GPLX, hå s¬ GPLX vµo File lylich, HOSO, GPLX, hosogplx
Enddo
Close File
Qu¸ tr×nh : CËp nhËt th«ng tin Khãa ®µo t¹o
WHO : Nh©n viªn bé phËn §µo t¹o, S¸t h¹ch
WHEN : Khi cã khãa ®µo t¹o míi vµ xin s¸t h¹ch
INPUT : C¸c th«ng tin míi vµ cã thay ®æi
OUTPUT : File khoadaotao, dongsathach
open File khoadaotao, dongsathach
Do While cã sù thay ®æi
Input record khãa ®µo t¹o, dßng s¸t h¹ch
Write record khãa ®µo t¹o, dßng s¸t h¹ch vµo File khoadaotao, dongsathach
Enddo
Close File
Qu¸ tr×nh : CËp nhËt th«ng tin §ît s¸t h¹ch
WHO : Nh©n viªn bé phËn S¸t h¹ch
WHEN : Khi cã nhu cÇu cña c¸c c¬ së ®µo t¹o vµ bé phËn s¸t h¹ch
INPUT : C¸c th«ng tin míi, thay ®æi
OUTPUT : File dotsathach, dongsathach
open File dotsathach, dongsathach
Do While cã sù thay ®æi
Input record ®ît s¸t h¹ch, dßng s¸t h¹ch
Write record ®ît s¸t h¹ch, dßng s¸t h¹ch vµo File dotsathach, dongsathach
Enddo
Close File
Qu¸ tr×nh : §iÒu chØnh s¬ thÝ sinh
WHO : Nh©n viªn bé phËn XÐt duyÖt hå s¬, §µo t¹o, CÊp ®æi
WHEN : Khi cã th«ng tin vÒ thÝ sinh cÇn thay ®æi
INPUT : C¸c th«ng tin míi, cÇn thay ®æi
OUTPUT : File lylich, hoso
open File lylich, hoso
Do While cßn hå s¬ thÝ sinh cÇn thay ®æi
Input thÝ sinh cÇn t×m
find record lý lÞch, hå s¬ cÇn thay ®æi th«ng tin
If found()
Read record lý lÞch, hå s¬ cÇn thay ®æi th«ng tin
Input record lý lÞch, hå s¬
Write record lý lÞch, hå s¬ vµo File lylich, hoso
Else
Write }Kh«ng t×m thÊy. Xin nhËp l¹i thÝ sinh kh¸c~
Endif
Enddo
Close File
Qu¸ tr×nh : Xãa hå s¬ thÝ sinh
WHO : Nh©n viªn bé phËn S¸t h¹ch, §µo t¹o, CÊp ®æi
WHEN : Khi cã thÝ sinh kh«ng tham gia s¸t h¹ch, nghØ häc, cËp nhËt sai
INPUT : C¸c th«ng tin cÇn hñy
OUTPUT : File lylich, hoso
open File lylich, hoso
Do While cßn hå s¬ thÝ sinh cÇn hñy
Input thÝ sinh cÇn t×m
find record lý lÞch, hå s¬ cÇn hñy
If found()
delete record lý lÞch, hå s¬ trong File lylich, hoso
Else
Write }Kh«ng t×m thÊy. Xin nhËp l¹i thÝ sinh kh¸c~
Endif
Enddo
Close File
Qu¸ tr×nh : T×m kiÕm vµ xem th«ng tin thÝ sinh, l¸i xe
WHO : Nh©n viªn bé phËn S¸t h¹ch, XÐt duyÖt hå s¬, CÊp ®æi, §µo t¹o
WHEN : Khi cÇn xem th«ng tin vÒ thÝ sinh hoÆc l¸i xe
INPUT : M· sè cña thÝ sinh hoÆc l¸i xe (nh M· GPLX, Sè lý lÞch,....)
OUTPUT : File lylich, hoso, gplx, hosogplx
open File lylich, hoso, gplx, hosogplx
Do While cßn muèn xem
Input M· sè cña thÝ sinh hoÆc l¸i xe (nh M· GPLX, Sè lý lÞch,....) cÇn t×m
find record lý lÞch, hå s¬, GPLX, hå s¬ GPLX cÇn t×m thÊy
If found()
Read record lý lÞch, hå s¬, GPLX, hå s¬ GPLX cÇn t×m thÊy
list record lý lÞch, hå s¬, GPLX, hå s¬ GPLX cÇn t×m thÊy
Else
Write }Kh«ng t×m thÊy. Xin nhËp l¹i thÝ sinh kh¸c~
Endif
Enddo
Close File
3. ThiÕt kÕ menu hÖ thèng
Khi khëi ®éng ch¬ng tr×nh, menu chÝnh cña hÖ thèng gåm c¸c môc sau :
HÖ thèng
Ph©n hÖ
®µo t¹o
Ph©n hÖ
qu¶n lý cÊp ®æi
Ph©n hÖ
qu¶n lý thèng kª
Gióp ®ì
hÖ thèng
Môc chän
DiÔn gi¶i
Danh môc tØnh (thµnh phè)
Dïng ®Ó cËp nhËt Danh môc tØnh
Danh môc huyÖn (quËn)
Dïng ®Ó cËp nhËt Danh môc huyÖn
Danh môc c¬ së ®µo t¹o
Dïng ®Ó cËp nhËt Danh môc c¬ së ®µo ¹to
Danh môc t«n gi¸o
Dïng ®Ó cËp nhËt Danh môc t«n gi¸o
Danh môc d©n téc
Dïng ®Ó cËp nhËt Danh môc d©n téc
CÊu h×nh hÖ thèng
Th«ng b¸o vÒ hÖ thèng
Lu dù phßng c¬ së d÷ liÖu
Dïng ®Ó sao lu d÷ liÖu khi cÇn
Phôc håi c¬ së d÷ liÖu
Dïng ®Ó phôc håi c¬ së d÷ liÖu khi cã sù cè
Qu¶n lý ngêi sö dông
T¹o ngêi dïng míi hoÆc xãa ngêi sö dông ®ang cã
Tho¸t ch¬ng tr×nh
KÕt thóc ch¬ng tr×nh trë vÒ Windows
Ph©n hÖ ®µo t¹o
Môc chän
DiÔn gi¶i
Tæ chøc s¸t h¹ch
Gåm 5 menu con dïng cho c¸c c«ng t¸c chuÈn bÞ cho mét ®ît s¸t h¹ch nh lµ : - Më ®ît s¸t h¹ch míi, - TiÕp nhËn míi hå s¬, - §¨ng ký s¸t h¹ch l¹i, - Lo¹i bá hå s¬ qu¸ h¹n ®¨ng ký l¹i, - In danh s¸ch hå s¬ dù s¸t h¹ch ban ®Çu
XÐt duyÖt hå s¬
Gåm 7 menu con dïng cho c¸c c«ng t¸c xÐt tuyÓn hå s¬ dù s¸t h¹ch ®Ó tæ chøc ®ît s¸t h¹ch nh lµ : - XÐt ®iÒu kiÖn dù s¸t h¹ch, - §iÒu chØnh hå s¬ dù s¸t h¹ch, - Xãa hå s¬ kh«ng hîp lÖ, - In danh s¸ch hå s¬ kh«ng hîp lÖ, - In danh s¸ch hå s¬ ®îc s¸t h¹ch, - In biªn b¶n ph©n c«ng s¸t h¹ch, - In quyÕt ®Þnh tæ chøc s¸t h¹ch
KÕt qu¶ s¸t h¹ch
Gåm 5 menu con dïng cho c«ng t¸c sau khi s¸t h¹ch nh lµ : - NhËp kÕt qu¶ s¸t h¹ch, - In danh s¸ch kh«ng ®¹t, - In danh s¸ch tróng tuyÓn, - In biªn b¶n xÐt kÕt qu¶ s¸t h¹ch, - In quyÕt ®Þnh cÊp GPLX
CÊp giÊy phÐp l¸i xe
Gåm 2 menu con dïng cho c¸c c«ng t¸c chuÈn bÞ GPLX ®Ó cÊp cho ngêi l¸i xe nh lµ : - NhËp GPLX, - In GPLX
Ph©n hÖ qu¶n lý cÊp ®æi
Môc chän
DiÔn gi¶i
TiÕp nhËn hå s¬ cÊp ®æi
Dïng cho c«ng t¸c tiÕp nhËn hå xin ®æi GPLX khi chuÈn bÞ hÕt h¹n dïng cña GPLX
XÐt duyÖt hå s¬ cÊp ®æi
Dïng cho c«ng t¸c kiÓm tra hå s¬ cã ®ñ tiªu chuÈn theo quy ®Þnh vÒ viÖc cÊp ®æi GPLX
Lµm GPLX ®îc cÊp ®æi
NhËp GPLX ®· ®ñ ®iÒu kiÖn cÊp ®æi
In DS hå s¬ xin cÊp ®æi
In toµn bé danh s¸ch hå s¬ trong mét ®ît cÊp ®æi
In DS hå s¬ ®îc cÊp ®æi
In danh s¸ch nh÷ng hå s¬ kh«ng ®ñ ®iÒu kiÖn cÊp ®æi
In DS GPLX qu¸ h¹n
In danh s¸ch nh÷ng hå s¬ ®· qu¸ h¹n sö dông mµ cha lµm thñ tôc cÊp ®æi. dïng phôc vô c«ng t¸c th«ng b¸o
In GPLX ®îc cÊp ®æi
In GPLX ®îc cÊp ®æi ®Ó cÊp cho ngêi l¸i xe
Ph©n hÖ qu¶n lý thèng kª
Môc chän
DiÔn gi¶i
T×m kiÕm tra cøu GPLX
Dïng cho c«ng t¸c t×m kiÕm vµ tra cøu bÊt kú mét th«ng tin nµo liªn quan ®Õn GPLX
Qu¶n lý GPLX di dêi
Phôc vô c«ng t¸c cËp nhËt th«ng tin hå s¬ GPLX chuyÓn ®Õn, ®ång thêi lµm thñ tôc cho c¸c hå s¬ GPLX chuyÓn ®i vµ ®a vµo lu tr÷ c¸c hå s¬ nµy
Thèng kª GPLX cÊp ®æi
Phôc vô c«ng t¸c b¸o c¸o sè lîng GPLX ®· cÊp ®æi theo ®Þnh kú : th¸ng, quý hoÆc n¨m
Thèng kª GPLX cÊp míi
Phôc vô c«ng t¸c b¸o c¸o sè lîng GPLX ®· cÊp míi theo ®Þnh kú : th¸ng, quý hoÆc n¨m
Thèng kª GPLX theo h¹ng
Phôc vô c«ng t¸c b¸o c¸o sè lîng GPLX theo tõng h¹ng ®Þnh kú : th¸ng, quý hoÆc n¨m
Thèng kª GPLX di dêi
Phôc vô c«ng t¸c b¸o c¸o sè lîng GPLX ®· chuyÓn ®Õn vµ ®· chuyÓn ®i theo ®Þnh kú : th¸ng, quý hoÆc n¨m
Gióp ®ì
Môc chän
DiÔn gi¶i
Néi dung
Tr×nh bµy toµn bé néi dung trî gióp cho ngêi sö dông hÖ thèng
Tham kh¶o
Minh häa phÇn trî gióp ®Ó ngêi sö dông tham kh¶o trong qu¸ tr×nh sö dông hÖ thèng
B¶n quyÒn
Th«ng b¸o vÒ b¶n quyÒn cña hÖ thèng
4. ThiÕt kÕ m· (Code Design)
Tªn hÖ thèng : Qu¶n lý ®µo t¹o, s¸t h¹ch vµ cÊp GPLX
ThiÕt kÕ m· cho form sè 1
Ngµy thiÕt kÕ :
Tªn code : SOLYLICH
Sè lý lÞch
Ph¬ng ph¸p thiÕt kÕ :
M· tuÇn tù
Sè cét :
Check digit : No
Sè lîng sö dông :
HiÖn nay : 150.000
T¬ng lai : kh«ng dù ®o¸n
Chu kú sö dông :
10 n¨m
SOLYLICH ®îc sö dông trong LYLICH, hoso, gplx, hosogplx
§èi tîng code : Sè lý lÞch
CÊu tróc : TuÇn tù t¨ng dÇn
CÊu tróc :
999999999
D¹ng sè lý lÞch : 1..999999999
KiÓu : Charater
Tªn hÖ thèng : Qu¶n lý ®µo t¹o, s¸t h¹ch vµ cÊp GPLX
ThiÕt kÕ m· cho form sè 2
Ngµy thiÕt kÕ :
Tªn code : macsdt
M· c¬ së ®µo t¹o
Ph¬ng ph¸p thiÕt kÕ :
M· gîi nhí
Sè cét :
Check digit : No
Sè lîng sö dông :
HiÖn nay :
T¬ng lai :
Chu kú sö dông :
10 n¨m
macsdt ®îc sö dông trong cosodaotao, hosogplx, khoadaotao
§èi tîng code : M· c¬ së ®µo t¹o
CÊu tróc : Do ngêi sö dông nhËp
CÊu tróc :
AAAA : M· gîi nhí
KiÓu : Charater
Tªn hÖ thèng : Qu¶n lý ®µo t¹o, s¸t h¹ch vµ cÊp GPLX
ThiÕt kÕ m· cho form sè 3
Ngµy thiÕt kÕ :
Tªn code : sohoso
Sè hå s¬
Ph¬ng ph¸p thiÕt kÕ :
M· tuÇn tù
Sè cét :
Check digit : No
Sè lîng sö dông :
HiÖn nay :
T¬ng lai :
Chu kú sö dông :
10 n¨m
SOhoso ®îc sö dông trong hosogplx
§èi tîng code : Sè hå s¬
CÊu tróc : TuÇn tù t¨ng dÇn
CÊu tróc :
99999999999
D¹ng sè hå s¬ : 1..99999999999
KiÓu : Charater
Tªn hÖ thèng : Qu¶n lý ®µo t¹o, s¸t h¹ch vµ cÊp GPLX
ThiÕt kÕ m· cho form sè 4
Ngµy thiÕt kÕ :
Tªn code : Magplx
M· GPLX
Ph¬ng ph¸p thiÕt kÕ :
M· tuÇn tù
Sè cét :
Check digit : No
Sè lîng sö dông :
HiÖn nay :
T¬ng lai :
Chu kú sö dông :
10 n¨m
magplx ®îc sö dông trong gplx, hosogplx
§èi tîng code : M· GPLX
CÊu tróc : T×m kiÕm nÕu tån t¹i g¸n m· cò, nÕu kh«ng th× t¨ng dÇn theo tuÇn tù
CÊu tróc :
99999999999
D¹ng m· GPLX : 1..99999999999
KiÓu : Charater
T¬ng tù ta lËp b¶ng thiÕt m· cho c¸c m· cßn l¹i nh M· h¹ng GPLX, M· khãa ®µo t¹o,....
5. ThiÕt kÕ report
HÖ thèng Qu¶n lý ®µo vµ cÊp giÊy phÐp l¸i xe cã rÊt nhiÒu mÉu b¸o c¸o nh ®· tr×nh bµy mét phÇn trong môc 3 cña ch¬ng I, ®Ó ®¸p øng ®Çy ®ñ nhu cÇu vµ thuËn lîi cho ngêi sö dông, chóng ta cÇn ph¶i thiÕt kÕ tÊt c¶ c¸c b¸o biÓu cã thÓ (c¸c b¸o biÓu nµy cã mÉu quy ®Þnh t¹i c¸c v¨n b¶n ph¸p quy) nh»m hæ trî cho viÖc qu¶n lý nhanh gän, kÞp thêi vµ chÝnh x¸c, ®ång thêi tiÕn ®Õn tù ®éng hãa hÖ thèng cµng nhiÒu cµng tèt. Do thêi gian ®Çu t cho ®Ò tµi cã h¹n nªn phÇn thiÕt kÕ Report kh«ng tr×nh bµy cô thÓ trong thuyÕt minh nµy.
6. mét sè h×nh ¶nh cña ch¬ng tr×nh
hép th«ng b¸o vÒ hÖ thèng
Giao diÖn chÝnh vµ hép kiÓm tra th«ng tin ngêi sö dông
Giao diÖn chÝnh giíi thiÖu menu ph©n hÖ ®µo t¹o
Giao diÖn chÝnh giíi thiÖu menu ph©n hÖ qu¶n lý thèng kª
Giao diÖn chÝnh giíi thiÖu form : danh môc tØnh
Giao diÖn chÝnh giíi thiÖu form : xÐt ®iÒu kiÖn dù s¸t h¹ch
Giao diÖn chÝnh giíi thiÖu form : më ®ît s¸t h¹ch míi
Ch¬ng iv
giíi thiÖu m«i trêng
vµ c«ng cô ph¸t triÓn hÖ thèng
1. hÖ qu¶n trÞ c¬ së d÷ liÖu microsoft sql server 7.0
MS SQL Server lµ mét hÖ qu¶n trÞ c¬ së d÷ liÖu quan hÖ m¹nh cã tÝnh më, ®¸ng tin cËy, lµ hÖ qu¶n trÞ c¬ së d÷ liÖu theo m« h×nh Client/Server vµ cã thÓ dÔ dµng ph¸t triÓn theo m« h×nh d÷ liÖu ph©n t¸n.
MS SQL Server cung cÊp ®Çy ®ñ c¸c c«ng cô ®Ó :
- DÔ dµng x©y dùng mét c¬ së d÷ liÖu quan hÖ lín, mçi c¬ së d÷ liÖu cã thÓ chøa 2 tû quan hÖ vµ mçi quan hÖ cã thÓ chøa 1024 thuéc tÝnh
- Gi¶i quyÕt t×nh tr¹ng va ch¹m gi÷a c¸c user khi cïng truy xuÊt mét d÷ liÖu t¹i cïng mét thêi ®iÓm
- B¶o ®¶m c¸c rµng buéc toµn vÑn trªn c¬ së d÷ liÖu
- B¶o vÖ an toµn c¬ së d÷ liÖu (Qu¶n lý nhiÒu møc ®é ®Ó truy cËp vµo c¬ së d÷ liÖu)
- Truy vÊn d÷ liÖu nhanh
CÊu tróc c¬ së d÷ liÖu sql server
SQL Server tæ chøc d÷ liÖu lu trong c¬ së d÷ liÖu (CSDL) thµnh nh÷ng thµnh phÇn lý luËn. User lµm viÖc trªn nh÷ng thµnh phÇn lý luËn nh b¶ng (Table), view, procedure,.... Thµnh phÇn vËt lý cña nh÷ng file th× trong suèt (Transparent), chØ cã ngêi qu¶n lý CSDL míi ®îc lµm viÖc ®ã.
c¸c ®èi tîng d÷ liÖu trong csdl sql server
Mçi c¬ së d÷ liÖu trªn SQL Server cßn bao gåm nh÷ng ®èi tîng kh¸c ®îc dïng ®Õn trong viÖc lu tr÷ vµ tæ chøc d÷ liÖu, c¸c ®èi tîng cña c¬ së d÷ liÖu SQL server bao gåm : Table, Colums, Indexes, View, Constraints, Rules, Defaults, Triggers, Stored procedure, vµ Extended Stored Procedure.
B¶ng d÷ liÖu (Table) :
Mçi c¬ së d÷ liÖu trªn SQL server ®Òu chøa mét hoÆc nhiÒu b¶ng d÷ liÖu (table). §èi tîng b¶ng d÷ liÖu lµ cÊu thµnh chñ yÕu lu tr÷ d÷ liÖu (data storage) cña SQL server. Mét b¶ng d÷ liÖu thùc chÊt lµ mét l« cét (colums) cã tæ chøc. Mét l« cét ®îc qui chiÕu nh lµ mét hµng (row). Trªn SQL server cã hai lo¹i b¶ng d÷ liÖu : b¶ng d÷ liÖu hÖ thèng (system table) vµ b¶ng d÷ liÖu ngêi dïng (user table). B¶ng d÷ liÖu hÖ thèng chøa th«ng tin liªn quan ®Õn SQL server víi nh÷ng ®èi tîng kh¸c nhau, trong khi b¶ng d÷ liÖu ngêi dïng th× chøa thuÇn tuý d÷ liÖu cña ngêi dïng. C¸c b¶ng d÷ liÖu hÖ thèng ®îc ®Æt tªn víi tiÒn tè }sys~ (viÕt t¾t cña system).
Cét d÷ liÖu (Colum) :
Mçi b¶ng d÷ liÖu thêng gåm mét l« nh÷ng cét d÷ liÖu cã liªn hÖ víi nhau. Cét lµ nh÷ng môc tin (data item) tîng trng cho mét thuéc tÝnh (property) cña b¶ng d÷ liÖu.
ChØ môc (Index) :
C¸c chØ môc dïng ®Ó tèi u hãa tèc ®é truy xuÊt d÷ liÖu. NÕu kh«ng cã chØ môc, mçi lÇn ngêi dïng chän mét lo¹t hµng trªn mét b¶ng d÷ liÖu nµo ®ã, th× cÇn ph¶i rµ chän b¶ng tõ ®Çu cho tíi khi hoµn tÊt yªu cÇu cña ngêi dïng, ®èi víi nh÷ng b¶ng d÷ liÖu lín th× ®iÒu nµy kh«ng ®a ®Õn hiÖu qu¶ cao. ChØ môc sÏ lo¹i trõ viÖc rµ tõ ®Çu b¶ng mÊt thêi gian vµ cho phÐp tr×nh bµy d÷ liÖu theo nhiÒu tæ chøc thay thÕ kh¸c nhau vµ h÷u hiÖu h¬n. Ngêi ta t¹o mét chØ môc nh lµ mét ®èi chøc thay thÕ kh¸c nhau vµ h÷u hiÖu h¬n. Ngêi ta t¹o mét chØ môc nh lµ mét ®èi tîng c¨n cø d÷ liÖu riªng biÖt t¸ch khái b¶ng d÷ liÖu nguyªn thñy, cã 2 lo¹i chØ môc Clustered vµ nonclustered.
B¶ng nh×n xem (View) :
View lµ b¶ng d÷ liÖu ¶o (virtual table), lµ n¬i lu tr÷ nh÷ng c©u lÖnh select qui chiÕu vÒ mét hoÆc nhiÒu b¶ng d÷ liÖu c¬ së. Ta cã thÓ truy vÊn view gièng nh víi c¸c b¶ng d÷ liÖu b×nh thêng, còng cã thÓ nhËn tõ view lµ c«ng t¸c nhËn chØ ¶nh hëng mét b¶ng d÷ liÖu ®¬n chiÕc mµ th«i
Nh÷ng rµng buéc :
Rµng buéc ®¶m b¶o tÝnh chÊt toµn vÑn d÷ liÖu ®èi víi c¸c b¶ng d÷ liÖu còng nh ®èi víi c¸c cét d÷ liÖu. Th«ng thêng, c¸c rµng buéc ®îc thªm vµo khi mét b¶ng d÷ liÖu ®îc t¹o ra vµ ®îc khai b¸o ë cÊp b¶ng hoÆc ë cÊp cét. Cã n¨m lo¹i rµng buéc.
+ Primary Key (môc khãa chÝnh) : ®¶m b¶o tÝnh toµn vÑn chñ thÓ (entity integrity), nghÜa lµ tÊt c¶ c¸c hµng trªn mét b¶ng d÷ liÖu ®Òu cã mét môc kho¸ (key) duy nhÊt kh«ng null
+ Foreign Key : dïng ®Ó ®¶m b¶o tÝnh toµn vÑn qui chiÕu (referential integrity) rµng buéc foreign key ®¶m b¶o cã mét mèi liªn hÖ ®îc khai b¸o gi÷a hai tËp tin
+ Unique Key : ng¨n kh«ng cho bÊt cø cét nµo cã mét trÞ trïng lÆp (duplicate value). Dïng unique key ®Ó ®¶m b¶o tÝnh toµn vÑn chñ thÓ vµ cßn ®a ®Õn kÕt qu¶ t¹o mét chØ môc. Tuy nhiªn kh¸c víi Primary key, Unique key cho phÐp cã gi¸ trÞ null
+ Check : t¨ng cêng tÝnh toµn vÑn ph¹m vi b»ng c¸ch h¹n chÕ kho¶ng gi¸ trÞ cã thÓ ®îc nhËp vµo mét cét.
+ Not null : mét cét sÏ kh«ng chøa bÊt cø trÞ null nµo.
C¸c quy t¾c :
C¸c qui t¾c còng gÇn gièng nh rµng buéc check trong viÖc h¹n chÕ trÞ cã thÓ ®îc nhËp vµo mét cét. Tuy nhiªn, kh¸c víi rµng buéc check ®Æt ra mét tr¾c nghiÖm t¬ng ®èi ®¬n gi¶n vÒ trÞ, mét qui t¾c cã thÓ h¹n chÕ nh÷ng gi¸ trÞ d÷ liÖu dùa trªn mét biÓu thøc ®iÒu kiÖn (condition expression) hoÆc mét danh s¸ch c¸c trÞ. Ngoµi ra, kh«ng gièng nh mét rµng buéc check, b¹n chØ cã thÓ cã mét qui t¾c cho mét cét vµ c¸c qui t¾c SQL server sÏ ®îc lu tr÷ díi d¹ng mét ®èi tîng c¨n cø d÷ liÖu riªng rÏ. Th× mét qui t¾c cã thÓ phñ lªn nhiÒu cét.
Nh÷ng mÆc nhiªn :
Trong SQL Server, mçi colum trong mét record ph¶i chøa c¸c gi¸ trÞ kÓ c¶ ®ã lµ c¸c gi¸ trÞ Null. Gi¸ trÞ mÉu tin t¹i colum sÏ chøa gi¸ trÞ lµ Null nÕu kh«ng ®îc chÊp nhËn d÷ liÖu. Trªn thùc tÕ cã thÓ cã nhu cÇu colum sÏ chøa mét gi¸ trÞ x¸c ®Þnh nµo ®ã thay v× gi¸ trÞ null nÕu colum kh«ng ®îc nhËp d÷ liÖu
MS SQL Server cung cÊp ®èi tîng mÆc nhiªn dïng ®Ó t¹o c¸c gi¸ trÞ mÆc ®Þnh g¾n vµo colum trong trêng hîp t¹o míi mÉu tin nh÷ng gi¸ trÞ cña colum nµy kh«ng chÊp nhËn. C«ng viÖc nµy gièng nh viÖc x¸c ®Þnh c¸c gi¸ trÞ mÆc nhiªn
giao t¸c trong sql server
Giíi thiÖu vÒ giao t¸c :
Mét biÕn côc bé trong giao t¸c lµ mét ®èi tîng cã thÓ lu tr÷ mét gi¸ trÞ d÷ liÖu ®¬n cña mét kiÓu x¸c ®Þnh. C¸c biÕn trong batcher vµ scripts ®îc sö dông tiªu biÓu nh sau :
+ Sö dông nh lµ mét bé ®Õm dïng ®Ó ®Õm sè lÇn lÆp ®îc thùc hiÖn hoÆc dïng ®Ó ®iÒu khiÓn vßng lÆp
+ Sö dông ®Ó lu gi÷ gi¸ trÞ d÷ liÖu sÏ ®îc kiÓm tra bëi mét lÖnh ®iÒu khiÓn dßng (control-of-flow)
+ Sö dông ®Ó ghi nhËn gi¸ trÞ tr¶ vÒ tõ mét strored procedure (kh¸i niÖm vÒ stored procedure ®îc ®Ò cËp ë phÇn sau cña ch¬ng nµy nµy)
C¸c vÊn ®Ò thêng gÆp khi x©y dùng giao t¸c :
a. KiÓm tra lçi khi thùc hiÖn Giao t¸c
Mét sè lçi thêng gÆp sau khi thùc hiÖn mét c©u lÖnh trong giao t¸c :
Kh«ng cã quyÒn truy cËp trªn mét ®èi tîng (table, stored procedure,....)
Vi ph¹m rµng buéc toµn vÑn
Update hay Insert mét dßng d÷ liÖu ®· cã trong table
Deadlock
SQL Server tr¶ gi¸ trÞ lçi vÒ trong biÕn toµn côc @@ERROR
@@ERROR = 0 : kh«ng x¶y ra lçi
@@ERROR # 0 : x¶y ra lçi víi m· lçi lµ @@ERROR
Giao t¸c kh«ng thÓ tù ®éng rollback khi gÆp nh÷ng lçi ph¸t sinh trong qu¸ tr×nh thùc hiÖn mét c©u lÖnh thµnh phÇn trong giao t¸c
CÇn kiÓm tra gi¸ trÞ cña biÕn @@ERROR sau mçi c©u lÖnh thµnh phÇn trong giao t¸c vµ cÇn xö lý nh÷ng lçi (nÕu cã) : yªu cÇu giao t¸c rollback mét c¸ch têng minh b»ng lÖnh rollback tran {saction}
b. @@ROWCOUNT vµ @@ERROR
BiÕn toµn côc @@Rowcount chøa sè lîng nh÷ng dßng d÷ liÖu ®îc t×m thÊy (vÝ dô nh khi thùc hiÖn lÖnh select hay update). §©y chÝnh lµ sè lîng nh÷ng dßng d÷ liÖu tháa m·n ®iÒu kiÖn trong mÖnh ®Ò where
NÕu t×m thÊy mét dßng d÷ liÖu nµo tháa m·n yªu cÇu truy vÊn (tháa m·n ®iÒu kiÖn trong mÖnh ®Ò where) th× @@ERROR vÉn b»ng 0 (nghÜa lµ kh«ng x¶y ra lçi). Do ®ã trong trêng hîp nµy cÇn kiÓm tra gi¸ trÞ @@ RowCount.
C¸c lo¹i giao t¸c :
a. Explicit
Explicit Transaction lµ giao t¸c mµ user ®Þnh nghÜa mét c¸ch râ rµng c¶ qu¸ tr×nh khëi ®éng lÉn kÕt thóc giao dÞch. Explicit Transtion còng ®îc gäi bëi giao dÞch user_defined hay user_specified trong c¸c version cña SQL Server.
b. Autocommit
Giao t¸c autocommit ®îc thiÕt lËp qu¶n lý giao dÞch mÆc ®Þnh trong SQL Server. NÕu mét giao t¸c thùc hiÖn thµnh c«ng th× nã ®îc commit (tÊt c¶ sù thay ®æi ®îc t¹o ra tõ c¸c giao t¸c ®ã sÏ ®îc cËp nhËt trong c¬ së d÷ liÖu), nÕu nã gÆp bÊt kú lçi nã sÏ roll back.
Trong mode autocommit, thØnh tho¶ng xuÊt hiÖn lçi nÕu SQL Server roll back nguyªn c¶ batch (mét tËp c¸c lÖnh SQL server còng ®îc xem xÐt vµ ®îc thùc thi, nã ®îc biªn dÞch mét lÇn vµ kÕt thóc bëi lÖnh Go) thay v× mét lÖnh SQL. §iÒu nµy chØ x¶y ra nÕu lçi ®ông ®é lµ lçi biªn dÞch kh«ng ph¶i lµ lçi run_time. Lçi biªn dÞch ng¨n c¶n SQL Server x©y dùng kÕ ho¹ch thùc thi, v× thÕ kh«ng cã lÖnh nµo trong batch ®îc thùc thi.
c. Implicit
Khi kÕt nèi ®îc t¹o ra theo mode implicit transtion. SQL Server tù ®éng khëi ®éng mét giao t¸c míi sau khi giao t¸c hiÖn thêi ®îc commit hay roll back. User kh«ng lµm bÊt cø ®iÒu g× ®Ó ph¸c häa khëi t¹o giao t¸c, user chØ commit hay roll back mçi giao t¸c. Implicit Transtion mode ®a ra c¸c m¾c xÝch nèi kÕt liªn tôc c¸c giao t¸c.
Lock vµ viÖc xö lý ®ång thêi
Lock :
Microsoft SQL Server ®¶m b¶o sù toµn vÑn cña giao t¸c vµ sù nhÊt qu¸n d÷ liÖu. Locking ng¨n c¶n user ®äc d÷ liÖu ®ang ®îc thay ®æi bëi nh÷ng user kh¸c, vµ ng¨n c¶n nhiÒu user thay ®æi cïng mét d÷ liÖu trong cïng thêi gian. NÕu locking kh«ng ®îc sö dông th× d÷ liÖu trong mét database trë nªn kh«ng ®óng vµ c¸c truy vÊn t¬ng ph¶n víi d÷ liÖu sÏ cho kÕt qu¶ kh«ng ®óng nh mong ®îi
MÆc dï Microsoft SQL Server ®· thùc thi locking mét c¸ch tù ®éng, user cã thÓ thiÕt kÕ øng dông hiÖu qu¶ h¬n.
Nh÷ng vÊn ®Ò cña viÖc xö lý ®ång thêi :
MÊt d÷ liÖu cËp nhËt : ®iÒu ph¸t sinh do hai hay nhiÒu giao t¸c chän cïng mét dßng vµ cËp nhËt d÷ liÖu dùa vµo gi¸ trÞ ®îc chän ban ®Çu. Bëi v× mçi mét giao t¸c kh«ng cã ý thøc vÒ nh÷ng giao t¸c kh¸c, gi¸ trÞ ®îc update cuèi cïng sÏ viÕt ®Ì gi¸ trÞ update cña nh÷ng giao dÞch kh¸c. V× vËy d÷ liÖu bÞ mÊt.
+ §äc d÷ liÖu cha commit (dirty data) : vÝ dô Giao t¸c T1 thay ®æi mét dßng d÷ liÖu. Giao t¸c T2 ®äc sù thay ®æi tríc khi giao t¸c T1 commit. NÕu giao t¸c T1 roll back sù thay ®æi th× giao t¸c T2 ®äc mét dßng d÷ liÖu ®îc xem nh kh«ng tån t¹i
+ Thao t¸c ®äc kh«ng thÓ lÆp l¹i (Unrepeatable read) : nÕu mét giao t¸c ®äc cïng mét d÷ liÖu h¬n mét lÇn vµ gi÷a hai lÇn ®äc ®ã cã sù thay ®æi d÷ liÖu bëi mét giao t¸c t¸ch biÖt kh¸c. Bëi viÖc ®äc d÷ liÖu nhiÒu lÇn trong cïng mét giao t¸c mµ cã sù thay ®æi kh¸c t¸c ®éng vµo do mét giao t¸c kh¸c g©y ra sù m©u thuÉn
+ VÊn ®Ò phantom read : khi mét giao t¸c cè g¾ng select mét dßng mµ nã kh«ng tån t¹i vµ giao t¸c thø hai insert dßng ®ã tríc khi giao t¸c thø nhÊt kÕt thóc. NÕu dßng nµy ®îc chÌn vµo th× nã xuÊt hiÖn nh mét phantom ®èi víi giao t¸c thø nhÊt, sù xuÊt hiÖn vµ biÕn mÊt g©y ra m©u thuÉn.
C¸c møc ®é t¸ch biÖt :
Khi lock ®îc sö dông nh lµ mét c«ng cô ®iÒu khiÓn ®ång thêi th× nã sÏ gi¶i quyÕt vÊn ®Ò ®ång thêi. §iÒu nµy cho phÐp tÊt c¶ c¸c giao t¸c ch¹y ®ång thêi t¸ch biÖt víi nhau, mÆc dï cã nhiÒu giao t¸c ch¹y trªn cïng mét SQL Server t¹i mét thêi ®iÓm
TÝnh tuÇn tù (Serializability) lµ mét tÝnh chÊt mµ c¬ së d÷ liÖu ®¹t ®îc khi mét sè giao t¸c ®îc thùc hiÖn ®ång thêi th× kÕt qu¶ ph¶i gièng nh khi chóng thùc hiÖn tuÇn tù theo mét sè thø tù nµo ®ã. NÕu mét hÖ thèng cung cÊp ®iÒu khiÓn ®ång thêi, ngêi lËp tr×nh cã thÓ viÕt c¸c giao t¸c nh lµ khi chóng ®îc thùc hiÖn mét m×nh
Møc ®é mµ mét giao t¸c chÊp nhËn sù kh«ng nhÊt qu¸n d÷ liÖu ®îc nhãm thµnh c¸c møc ®é kh¸c nhau. §iÒu nµy sÏ lµm gi¶m khi mét giao t¸c ph¶i ®îc t¸ch biÖt víi nh÷ng giao t¸c kh¸c. Møc ®é t¸ch biÖt thÊp th× lµm t¨ng tÝnh ®ång thêi nhng ph¶i tr¶ gi¸ cho sù ®óng ®¾n d÷ liÖu cao. Ngîc l¹i, ®èi víi møc ®é t¸ch biÖt cao h¬n th× ®¶m b¶o d÷ liÖu ®óng nhng kh«ng hiÖu qu¶ vÒ viÖc ®ång thêi. Møc ®é t¸ch biÖt trong øng dông x¸c ®Þnh c¸ch thøc lock trong SQL Server.
2. microsoft visual basic 6.0
§Ó viÕt mét ch¬ng tr×nh trªn Windows, tøc t¹o ra c¸c cöa sæ, bè trÝ c¸c control trªn cöa sæ vµ qui ®Þnh c¸c c¸ch øng xö cña cöa sæ, c¸c control cña nã øng víi tõng t¸c ®éng ngêi sö dông ph¶i khai b¸o, tÝnh to¸n vµ viÕt rÊt nhiÒu c©u lÖnh phøc t¹p. V× vËy ®Ó cho c«ng viÖc lËp tr×nh ®îc dÔ dµng, nhÑ nhµng vµ nhanh chãng h¬n ngêi ta ®a ra mét kiÓu lËp tr×nh míi gäi lµ visual hay cßn gäi lµ RAD (Rapid Application Development). Visual Basic lµ mét trong nh÷ng ng«n ng÷ lËp tr×nh kiÓu míi nµy.
Víi kiÓu lËp tr×nh Visual nµy b¹n chØ cÇn dïng mouse kÐo tõng ®èi tîng control vµo cöa sæ, råi viÕt thªm mét sè c©u lÖnh ®Ó qui ®Þnh c¸ch lµm viÖc cña nã.
Visual Basic lµ mét ng«n ng÷ lËp tr×nh theo kiÓu ®Þnh nghÜa híng ®èi tîng. Trong kiÓu lËp tr×nh nµy, ngêi lËp tr×nh cã thÓ ph©n mçi yÕu tè trong ch¬ng tr×nh thµnh mét ®èi tîng vµ viÕt c¸ch øng xö riªng cho tõng ®èi tîng ®ã
Kh¸i niÖm ®èi tîng : ®Ó viÕt ch¬ng tr×nh ®¬n gi¶n, ngêi ta t¹o mçi yÕu tè trong ch¬ng tr×nh thµnh mét ®èi tîng. Trong Visual basic ®èi tîng lµ nh÷ng thµnh phÇn t¹o nªn giao diÖn ngêi sö dông cho øng dông.
§Æc ®iÓm cña ®èi tîng trong ch¬ng tr×nh : - Mét ®èi tîng cã mét c¸i tªn ®Ó ph©n biÖt víi c¸c ®èi tîng kh¸c, - Mçi ®èi tîng cã thÓ cã nhiÒu ®Æc tÝnh, c¸c ®Æc tÝnh nµy gäi lµ c¸c property cña ®èi tîng ®ã, - Mçi ®èi tîng cã thÓ cã nhiÒu ho¹t ®éng, c¸c ho¹t ®éng nµy gäi lµ c¸c Method cña nã.
C¸c ®èi tîng trªn Windows cßn cã nh÷ng ®éng t¸c ®Ó ®¸p l¹i nh÷ng sù kiÖn t¸c ®éng lªn nã, mçi lo¹i ®èi tîng chØ ®¸p l¹i mét sè sù kiÖn nµo ®ã mµ th«i. C¸c sù kiÖn mµ c¸c ®èi tîng cã ph¶n øng víi nã ®îc gäi lµ c¸c Event cña ®èi tîng nµy.
Truy xuÊt ®èi tîng : nghÜa lµ ®äc hoÆc ®Æt gi¸ trÞ cho c¸c property cña ®èi tîng, hay cßn gäi lµ method cña ®èi tîng ®ã cho nã ho¹t ®éng. BÊt cø khi nµo truy xuÊt mét ®èi tîng b¹n ®Òu ph¶i viÕt theo có ph¸p sau :
.
Khi viÕt ch¬ng tr×nh b»ng Visual Basic, chóng ta ph¶i qua hai bíc :
+ ThiÕt kÕ giao diÖn (Visual programming)
+ ViÕt lÖnh (Code programming)
ThiÕt kÕ giao diªn : do Visual Basic lµ ng«n ng÷ lËp tr×nh híng ®èi tîng nªn viÖc thiÕt kÕ giao diÖn rÊt ®¬n gi¶n b»ng c¸ch ®a c¸c ®èi tîng vµo form vµ tiÕn hµnh thay ®æi mét sè thuéc tÝnh cña c¸c ®èi tîng ®ã.
FORM : form lµ biÓu mÉu cña mçi øng dông trong visual basic. Ta dïng form (nh lµ mét biÓu mÉu) nh»m ®Þnh vÞ vµ s¾p xÕp c¸c bé phËn trªn nã khi thiÕt kÕ c¸c phÇn giao tiÕp víi ngêi dïng.
TOOLS BOX (hép c«ng cô) : hép c«ng cô nµy chøa c¸c biÓu tîng biÓu thÞ cho c¸c ®iÒu khiÓn mµ ta cã thÓ bæ sung vµo biÓu mÉu, lµ b¶ng chøa c¸c ®èi tîng ®îc ®Þnh nghÜa s½n cña Visual Basic. C¸c ®èi tîng nµy ®îc sö dông trong form ®Ó t¹o thµnh giao diÖn cho c¸c ch¬ng tr×nh øng dông cña Visual Basic.
PROPERTIES WINDOWS (cöa sæ thuéc tÝnh) : properties windows lµ n¬i chøa danh s¸ch c¸c thuéc tÝnh cña mét ®èi tîng cô thÓ. C¸c thuéc tÝnh nµy cã thÓ thay ®æi ®îc ®Ó phï hîp víi yªu cÇu vÒ giao diÖn cña c¸c ch¬ng tr×nh øng dông PROJECT EXPLORER
Do c¸c øng dông cña Visual Basic thêng dïng chung m· hoÆc c¸c form ®· tïy biÕn tríc ®ã, nªn Visual Basic tæ chøc c¸c øng dông thµnh c¸c project. Mçi project cã thÓ cã nhiÒu form vµ m· kÝch ho¹t c¸c ®iÒu khiÓn trªn mét form sÏ ®îc lu tr÷ chung víi form ®ã trong c¸c tËp tin riªng biÖt. M· lËp tr×nh chung mµ tÊt c¶ c¸c form trong øng dông chia sÏ cã thÓ ®îc ph©n thµnh c¸c Module kh¸c nhau vµ còng ®îc lu tr÷ t¸ch biÖt, gäi lµ c¸c Module m·. Project Explorer nÕu tÊt c¶ c¸c biÓu mÉu tïy biÕn ®îc vµ c¸c Module m· chung, t¹o nªn øng dông cña ta.
ViÕt lÖnh cho ®èi tîng : Visual Basic xö lý m· chØ ®Ó ®¸p øng c¸c sù kiÖn. Thùc vËy, kh«ng nh nhiÒu ng«n ng÷ lËp tr×nh kh¸c, c¸c dßng m· thi hµnh trong mét ch¬ng tr×nh Visual Basic ph¶i n»m trong c¸c thñ tôc hoÆc c¸c hµm, c¸c dßng m· bÞ c« lËp sÏ kh«ng lµm viÖc.
Cöa sæ code :
+ Hép liÖt kª Object
+ Hép liÖt kª Procedure
+ Intellisense : cho phÐp thuËn lîi tra cøu. Intellisense bËt ra c¸c hép nhá víi c¸c th«ng tin h÷u Ých vÒ ®èi tîng mµ ta ®ang lam viÖc.
BiÕn : trong Visual Basic, c¸c biÕn [Variables] lu gi÷ th«ng tin (c¸c gi¸ trÞ). Khi dïng mét biÕn, Visual Basic x¸c lËp mét vïng trong bé nhí m¸y tÝnh ®Ó lu gi÷ th«ng tin. Trong Visual Basic, tªn biÕn cã thÓ dµi tíi 255 ký tù vµ trõ ký tù ®Çu tiªn ph¶i lµ mét mÉu tù, ta cã thÓ gép mét tæ hîp mÉu tù, con sè vµ dÊu g¹ch díi bÊt kú. Ch÷ hoa, ch÷ thêng trong tªn biÕn kh«ng quan träng.
C¸c c©u lÖnh ®iÒu khiÓn :
- Ph¸t biÓu IF
If ®iÒu kiÖn Then
C¸c lÖnh thùc hiÖn khi ®iÒu kiÖn tháa
Else
C¸c lÖnh thùc hiÖn khi ®iÒu kiÖn kh«ng tháa
End If
- Ph¸t biÓu SELECT CASE
Select Case
[Case
[khèi lÖnh -1]]
[ Case
[khèi lÖnh - 2]]
...
[Case Else
[Khèi lÖnh - n]]
End Select
- LÖnh DO WHILE..LOOP
Do While
Loop
- LÖnh DO..LOOP WHILE
Do
Loop While
- LÖnh FOR..NEXT
For = To [ Step ]
Next []
- LÖnh DO..LOOP UNTIL
Do
Loop Until
LÖnh EXIT..FOR
LÖnh EXIT DO
MÆt kh¸c, mét trong nh÷ng thÕ m¹nh cña ng«n ng÷ lËp tr×nh n¨ng ®éng nµy lµ vÊn ®Ò vÒ qu¶n lý CSDL. Nã cung cÊp cho ta tõ c¸c thao t¸c c¬ b¶n trªn CSDL nh c¸c c©u truy vÊn ®Õn c¸c kü thuËt lËp tr×nh nh : ADO, ODBC, DAO, RDO, RDS. C¸c ®iÒu khiÓn ActiveX, CSDL nhiÒu ngêi dïng, c¸c øng dông CSDL trªn Internet. Ngoµi ra cßn cã mét sè ®iÒu khiÓn nh : MSLlexGrid, DBGrid,....
S¬ lîc c¸c ®iÒu khiÓn, ®èi tîng truy cËp d÷ liÖu :
+ Sö dông DAO ®Ó lµm viÖc víi CSDL
+ Dïng ®èi tîng Database ®Ó kÕt nèi víi mét CSDL
+ Ph¬ng thøc Opendatabase ®Ó t¹o mét ®èi tîng Database
+ Ph¬ng thøc Execute ®Ó thi hµnh truy vÊn hµnh ®éng
+ §èi tîng DBEngine ®Ó kiÓm so¸t truy nhËp CSDL
+ Sö dông ®èi tîng recordset : ph¬ng thøc OpenRecordset ®Ó t¹o mét ®èi tîng Recodset
+ Dïng ®èi tîng Filed ®Ó thao t¸c víi c¸c trêng.
C¸c ph¬ng thøc duyÖt cña mét ®èi tîng Recordset :
+ MoveFirst : di chuyÓn ®Õn mÉu tin ®Çu tiªn trong Recordset
+ MoveNext : di chuyÓn ®Õn mÉu tin kÕ tiÕp trong Recordset
+ MovePrevious : di chuyÓn ®Õn mÉu tin tríc trong Recordset
+ MoveLast : di chuyÓn ®Õn mÉu tin cuèi cïng trong Recordset
+ Thuéc tÝnh EOF (end of file)
+ Thuéc tÝnh BOF ( begin of file)
+ Thuéc tÝnh Recordcount ®Ó x¸c ®Þnh sè mÉu tin trong Recorset
+ Ph¬ng thøc Edit ®Ó söa ®æi gi¸ trÞ trong mét mÉu tin
+ Ph¬ng Thøc Addnew vµ Update ®Ó t¹o mÉu tin míi
+ Ph¬ng thøc Close ®Ó ®ãng Recordset
+ T×m kiÕm d÷ liÖu trong Recordset vµ b¶ng
+ Ph¬ng thøc Find ®Ó ®Þnh vÞ mÉu tin trong mét Recordset
+ Ph¬ng thøc Seek ®Ó thi hµnh t×m kiÕm theo chØ môc
+ Thuéc tÝnh Bookmark ®Ó ghi nhí vÞ trÝ trong mét Recordset
+ Sö dông tËp hîp Error vµ ®èi tîng Error ®Ó xö lý lçi
Sö dông ®iÒu khiÓn MSFLEXGRID :
+ Dïng ph¬ng thøc AddItem ®Ó ®a d÷ liÖu vµo FlexGrid
+ Thuéc tÝnh FormatString ®Ó t¹o tiªu ®Ò cho líi
+ Thuéc tÝnh TextMatrix ®Ó ®a d÷ liÖu vµo
+ §a h×nh ¶nh vµo ®iÒu khiÓn líi
C©u truy vÊn : c©u truy vÊn lµ mét lÖnh CSDL ®Ó lÊy vÒ c¸c mÉu tin. Sö dông c¸c c©u truy vÊn ta cã thÓ lÊy d÷ liÖu tõ mét hoÆc nhiÒu trêng trong mét hay nhiÒu b¶ng.
C¸c c©u truy vÊn trong Visual Basic chñ yÕu dùa trªn SQL. SQL lµ mét ng«n ng÷ kh¸ chuÈn ®Ó lÊy vÒ d÷ liÖu hoÆc thao t¸c víi CSDL.
C¸c c©u lÖnh SQL ®îc chia thµnh hai lo¹i :
+ C¸c c©u thuéc ng«n ng÷ ®Þnh nghÜa d÷ liÖu (DDL) : cho phÐp sö dông truy vÊn SQL ®Ó t¹o c¸c thµnh phÇn trong CSDL nh B¶ng, trêng,....
+ C¸c c©u lÖnh thuéc ng«n ng÷ thao t¸c d÷ liÖu : ®îc thiÕt kÕ ®Ó lÊy vÒ c¸c mÉu tin tõ c¸c CSDL.
Ph¹m vi ®Ò tµi nµy chØ sö dông c¸c c©u lÖnh thuéc ng«n ng÷ thao t¸c d÷ liÖu. C¸c c©u truy vÊn thêng dïng.
C©u lÖnh SELECT : lÊy vÒ c¸c mÉu tin.
Dïng mÖnh ®Ò FROM : chØ ra nguån mÉu tin
Dïng mÖnh ®Ò WHERE ®Ó chØ ra tiªu chÝ läc
To¸n Tö Chøc N¨ng
< Nhá h¬n
<= Nhá h¬n hoÆc b»ng
> Lín h¬n
>= Lín h¬n hoÆc b»ng
= B»ng
Kh¸c
Between Thuéc mét miÒn c¸c gi¸ trÞ
Like §èi chiÕu víi mét mÉu
In Chøa trong danh s¸ch c¸c gi¸ trÞ
Sö dông ORDER BY ®Ó ®îc s¾p xÕp kÕt qu¶
Dïng TOP ®Ó hiÓn thÞ phÇn ®Çu hoÆc phÇn cuèi cña mét miÒn gi¸ trÞ
Nèi c¸c b¶ng quan hÖ trong mét c©u truy vÊn
Sö dông c©u truy vÊn chøa s¾n trong CSDL
Ch¬ng v
s¬ lîc vÒ an toµn d÷ liÖu
1. vÊn ®Ò vÒ an toµn d÷ liÖu
Cho dï hÖ thèng cã ®îc cµi ®Æt trªn m¸y ®¬n hay lµ trªn m¸y m¹ng th× vÊn ®Ò vÒ an toµn d÷ liÖu lu«n lu«n ®îc quan t©m hµng ®Çu. D÷ liÖu chóng ta lu«n ®îc lu trong ®Üa cøng cña m¸y tÝnh, v× mét lý do nµo ®ã ch¼ng h¹n nh bÞ virus tÊn c«ng, ®Üa cøng bÞ háng,.... th× toµn bé d÷ liÖu cã kh¶ n¨ng bÞ mÊt hoÆc bÞ sai lÖch. §Ó tr¸nh sù tæn thÊt to lín nµy, ta ph¶i tiÕn hµnh tæ chøc c«ng t¸c an toµn d÷ liÖu.
2. ph¬ng ph¸p tæ chøc ®¶m b¶o an toµn d÷ liÖu vµ hÖ thèng
Nh ®· tr×nh bµy ë trªn, nªn viÖc b¶o vÖ hÖ thèng b¶o vÖ d÷ liÖu lµ mét vÊn ®Ò hµng ®Çu khi ®a hÖ thèng vµ sö dông. Do hÖ thèng ®îc cµi ®Æt cho nhiÒu ngêi sö dông, nªn ®ßi hái hÖ thèng ph¶i ®îc b¶o vÖ mét c¸ch ch¾c ch¾n, tr¸nh nh÷ng sai sãt cã thÓ g©y t¸c h¹i trÇm träng cho hÖ thèng còng nh cho d÷ liÖu trong qu¸ tr×nh khai th¸c sö dông. ChØ cã nh÷ng ngêi cã ®ñ thÈm quyÒn míi cã thÓ cËp nhËt vµ thay ®æi hÖ thèng, còng nh d÷ liÖu hÖ thèng. Ta cã thÓ b¶o vÖ hÖ thèng vµ b¶o vÖ d÷ liÖu b»ng c¸ch kÕt hîp nhiÒu ph¬ng ph¸p tõ cæ truyÒn ®Õn hiÖn ®¹i.
NÕu chóng ta ph¸t triÓn hÖ thèng ®îc ho¹t ®éng trªn m¸y m¹ng th× hÖ thèng qu¶n lý nµy ®îc cµi ®Æt b¶o mËt víi 3 cÊp :
+ HÖ thèng ®îc b¶o mËt ë cÊp m¹ng trªn m«i trêng Windows NT. Mäi ngêi sö dông khi truy cËp trªn m«i trêng m¹ng Windows NT ®Òu ph¶i ®îc cÊp quyÒn sö dông nhÊt ®Þnh, mµ dùa trªn quyÒn ®ã, ngêi sö dông cã thÓ thÊy ®îc nh÷ng g× hä cã thÓ ®îc ®äc, ®îc ghi.
QuyÒn cao nhÊt Administrator cã thÓ cÊp, söa ®æi quyÒn sö dông. Windows NT cã hai c¬ chÕ gióp b¶o toµn tµi nguyªn trªn Windows NT Server lµ user account vµ NTFS. Mäi ngêi muèn th©m nhËp vµo Server ph¶i cã mét account vµ password do administrator cung cÊp.
C¬ chÕ NTFS gióp b¶o vÖ tµi nguyªn cña hÖ thèng chÆt chÎ h¬n. C¸c tËp tin cÇn b¶o vÖ ph¶i ®îc ®Æt vµo partition NTFS, tµi nguyªn trong partition nµy sÏ chÞu ¶nh hëng cña c¬ chÕ Access Control List, cho phÐp quy ®Þnh tËp tinhoÆc th môc nµo ®îc nh×n thÊy bëi user, group nµo vµ kiÓu th©m nhËp (Read, Write, Execute,....).
+ HÖ thèng ®îc b¶o mËt ë cÊp c¬ së d÷ liÖu cña SQL Server. Trong SQL Server quy ®Þnh cô thÓ quyÒn sö dông cña tõng ngêi sö dông, cña tõng b¶ng d÷ liÖu ®èi víi tõng ngêi sö dông. Ngêi qu¶n trÞ c¬ së d÷ liÖu sÏ cÊp quyÒn cho tõng ngêi sö dông vµ quyÒn nµy sÏ x¸c ®Þnh quyÒn h¹n cña ngêi sö dông ®èi víi c¬ së d÷ liÖu.
+ HÖ thèng còng ®îc cµi ®Æt b¶o mËt ë cÊp ch¬ng tr×nh. Tõng ngêi sö dông sÏ cã quyÒn cô thÓ víi tõng mµn h×nh lµm viÖc, tõng nhãm mµn h×nh còng nh quyÒn víi toµn bé hÖ thèng ch¬ng tr×nh.
QuyÒn cao nhÊt Administrator sÏ cã cho tõng ngêi sö dông hoÆc mét nhãm ngêi sö dông ®iÒu hµnh hÖ thèng. ë quyÒn nµy, míi cã thÓ cÊp quyÒn sö dông cho tõng ngêi sö dông hoÆc nhãm ngêi sö dông kh¸c.
Bªn c¹nh ®ã, ta cã thÓ kÕt hîp mét sè ph¬ng ph¸p truyÒn thèng ®Ó b¶o vÖ d÷ liÖu nh :
+ Sao lu d÷ liÖu : c¸c d÷ liÖu cã thÓ ®îc sao lu ra ®Üa mÒm, ®Üa cøng kh¸c hoÆc CD, c«ng viÖc nµy ®îc thùc hiÖn theo mét chu kú nµo ®ã, chu kú nµy cµng ng¾n th× ®é ®¶m b¶o d÷ liÖu cµng cao. Khi c¸c d÷ liÖu bÞ háng do sù cè nµo ®ã, nã sÏ ®îc kh«i phôc l¹i tõ c¸c b¶n sao lu nµy.
+ Dïng hai file server víi m«i trêng m¹ng : d÷ liÖu ®îc ghi ®ång thêi vµo hai file server, chóng ta chØ cÇn lµm viÖc trªn mét file. Trong trêng hîp cã mét sù cè nµo ®ã trªn mét file server, chóng ta cã thÓ lµm viÖc víi file server cßn l¹i.
kÕt luËn
C«ng viÖc qu¶n lý ®µo t¹o vµ cÊp giÊy phÐp l¸i xe c¬ giíi ®êng bé t¹i c¸c Së Giao th«ng VËn t¶i ®Ó ®îc nhanh gän vµ chÝnh x¸c, ®¸p øng kÞp thêi nhu cÇu cho ngêi d©n lµ mét ho¹t ®«ng cã gi¸ trÞ hÕt søc cÇn thiÕt hiÖn nay cho mét c¬ quan qu¶n lý nhµ níc. Ngµy nay díi sù ph¸t triÓn m¹nh mÏ cña m¸y tÝnh ®ßi hái ph¶i x©y xùng mét hÖ th«ng qu¶n lý ®µo t¹o sao cho phï hîp víi mçi Së Giao Th«ng lµ hÕt søc cÇn thiÕt, nh»m gi¶m ®i c«ng søc lao ®éng trong viÖc lu tr÷ th«ng tin, ®ång thêi ®em l¹i hiÖu qu¶ cao, th«ng tin chÝnh x¸c vµ nhanh chãng. §èi víi L·nh ®¹o Së, viÖc dùa vµo nh÷ng th«ng tin chÝnh x¸c nµy ®Ó x©y dùng c¸c ph¬ng híng qu¶n lý ®¹t hiÖu qu¶ cao lµ ®iÒu tèi cÇn thiÕt.
Do tr×nh ®é cßn h¹n chÕ, thêi gian ®Çu t cho ®Ò tµi kh«ng ®îc nhiÒu, nªn kÕt qu¶ cña ®Ò tµi ®¹t ®îc v« cïng khiªm tèn. Nh÷ng kÕt qu¶ ®¹t ®îc cña ®Ò tµi :
VÒ lý thuyÕt :
+ Kh¶o s¸t ®îc toµn bé hiÖn tr¹ng hÖ thèng, n¾m b¾t ®îc quy tr×nh quy ph¹m thùc hiÖn cña c«ng viÖc ®µo t¹o, s¸t h¹ch vµ cÊp GPLX ®Ó ®i ®Õn ph¸t biÓu bµi to¸n
+ Ph©n tÝch ®îc toµn bé bµi to¸n tõ bíc m« t¶ s¬ ®å tæ chøc, m« t¶ c¸c ho¹t ®éng cña hÖ thèng ®Ó ®i ®Õn :
· Ph©n tÝch d÷ liÖu
· Ph©n tÝch chøc n¨ng hÖ thèng
+ ThiÕt kÕ bµi to¸n :
· ThiÕt kÕ d÷ liÖu
· ThiÕt kÕ ch¬ng tr×nh
VÒ ch¬ng tr×nh : do thêi gian cã h¹n nªn ch¬ng tr×nh ®îc cµi ®Æt míi ®¸p øng ®îc mét phÇn yªu cÇu cña bµi to¸n
híng ph¸t triÓn ®Ò tµi
§©y lµ bµi to¸n lín cã nhiÒu tiÒm n¨ng ®Ó ph¸t triÓn thµnh mét hÖ thèng qu¶n lý hoµn chØnh c¸c c«ng ®o¹n tõ ®Çu ®Õn cuèi. Chóng ta cã thÓ nhóng c¸c OLE ®Ó qu¶n lý ngêi sö dông b»ng c¸ch scan h×nh cña c¸c lý lÞch vµo trong c¬ së d÷ liÖu.
Trong thêi gian tíi hÖ thèng sÏ ®îc hoµn thiÖn cã kh¶ n¨ng ho¹t ®éng trªn m¸y ®¬n, LAN vµ Intranet, ®ång thêi kÕt hîp víi viÖc thiÕt kÕ c¸c website ®Ó ®a c¬ së d÷ liÖu nµy lªn WEB, gióp cho viÖc ®µo t¹o vµ thi lý thuyÕt trùc tiÕp trªn m¹ng, nh»m phôc vô ngêi d©n ngµy mét tèt h¬n, thuËn lîi h¬n.
Sinh viªn thùc hiÖn
Huúnh V¨n ¸nh
Tµi liÖu tham kh¶o
TuyÓn tËp c¸c v¨n b¶n ph¸p quy vÒ ®µo t¹o, s¸t h¹ch, cÊp vµ ®æi giÊy phÐp l¸i xe c¬ giíi ®êng bé
- Côc §êng bé ViÖt Nam
- Nhµ XuÊt b¶n Giao th«ng VËn t¶i, 1999
C¸c v¨n b¶n quy ®Þnh vÒ Qu¶n lý ®µo t¹o, s¸t h¹ch vµ cÊp giÊy phÐp l¸i xe
- Côc §êng bé ViÖt Nam
- Trung t©m Kü thuËt nghiÖp vô, 2002
C¸c v¨n b¶n híng dÉn thùc hiÖn Qu¶n lý ®µo t¹o, s¸t h¹ch vµ cÊp giÊy phÐp l¸i xe
- Côc §êng bé ViÖt Nam
- Trung t©m Kü thuËt nghiÖp vô, 2002
Ph©n tÝch ThiÕt kÕ HÖ thèng qu¶n lý th«ng tin
- Th¹c sü §inh ThÕ HiÓn, Trung t©m øng dông kinh tÕ Thµnh phè, ViÖn Kinh tÕ thµnh phè Hå ChÝ Minh
- Nhµ XuÊt b¶n Thèng kª, 2000
Ph©n tÝch & ThiÕt kÕ HÖ thèng th«ng tin qu¶n lý
- TrÇn Thµnh Trai, Ph©n viÖn C«ng nghÖ th«ng tin thµnh phè Hå ChÝ Minh, Trung t©m Khoa häc tù nhiªn & C«ng nghÖ Quèc gia
- Nhµ XuÊt b¶n Thèng trÎ 1996,
Ph©n tÝch ThiÕt kÕ HÖ thèng trong lËp tr×nh
- Kü s §inh Xu©n L·m, VN - GUIDE
- Nhµ XuÊt b¶n Thèng kª, 2003
NhËp m«n C¬ së d÷ liÖu quan hÖ
- Lª TiÕn V¬ng
- Nhµ XuÊt b¶n Khoa häc vµ Kü thuËt, 1997
Tù häc Microsoft SQL Server 7.0
- NguyÔn V¨n Hoµng
- Nhµ XuÊt b¶n Thèng kª, 2001
Microsoft Visual Basic 6.0 & LËp tr×nh c¬ së d÷ liÖu
- NguyÔn ThÞ Ngäc Mai, Cè vÊn Khoa häc GSTS NguyÔn H÷u Anh
- Nhµ XuÊt b¶n Gi¸o dôc, 2000
Môc lôc
Lêi nãi ®Çu 1
Ch¬ng I : Giíi thiÖu vµ kh¶o s¸t hiÖn tr¹ng hÖ thèng 3
1. Tæng quan vÒ hÖ thèng 3
1.1. Giíi thiÖu chung 3
1.2. Yªu cÇu vÒ bµi to¸n 3
1.3. NhiÖm vô cña bµi to¸n 4
1.4. Nhu cÇu vµ ý nghÜa viÖc tin häc hãa bµi to¸n 5
2. Kh¶o s¸t hÖ thèng 5
2.1. C¬ së ®µo t¹o l¸i xe 5
2.2. Tæ tiÕp nhËn hå s¬ 6
2.3. Héi ®ång s¸t h¹ch 6
2.4. Tæ s¸t h¹ch 6
2.5. Tæ ph¸t hµnh vµ cÊp GPLX 7
3. Kh¶o s¸t quy tr×nh hÖ thèng 7
3.1. VÒ c¸c cÊp ®é (h¹ng) cña giÊy phÐp l¸i xe 7
3.2. T×m hiÓu, nghiªn cøu quy tr×nh ®µo t¹o, s¸t h¹ch vµ cÊp GPLX 9
Ch¬ng II : Ph©n tÝch bµi to¸n 11
1. S¬ ®å tæ chøc 11
2. M« t¶ s¬ ®å ph©n cÊp c¸c chøc n¨ng 12
2.1. HÖ thèng 12
2.2. Ph©n hÖ ®µo t¹o 13
2.3. Ph©n hÖ qu¶n lý cÊp ®æi 16
2.4. Ph©n hÖ qu¶n lý thèng kª 16
2.5. Trî gióp 17
3. M« t¶ m«i trêng vµ nhãm c«ng viÖc 17
4. Ph©n tÝch hÖ thèng 20
4.1. S¬ ®å chøc n¨ng BFD 20
4.2. S¬ ®å dßng d÷ liÖu DFD 21
4.3. M« h×nh d÷ liÖu thùc thÓ ERD 28
Ch¬ng III : ThiÕt kÕ hÖ thèng 45
1. ThiÕt kÕ c¬ së d÷ liÖu 45
1.1. TØnh 45
1.2. HuyÖn 45
1.3. D©n téc 45
1.4. T«n gi¸o 45
1.5. H¹ng GPLX 45
1.6. C¬ së ®µo t¹o 46
1.7. Lý lÞch 46
1.8. Hå s¬ 46
1.9. GPLX 46
1.10. Khãa ®µo t¹o 47
1.11. §ît s¸t h¹ch 47
1.12. Dßng s¸t h¹ch 47 1.13. Hå s¬ GPLX 47
1.14. C¸n bé 48
1.15. S¬ ®å quan hÖ d÷ liÖu trªn Microsoft SQL Server 7.0 48
2. M« t¶ tiÕn tr×nh 48
3. ThiÕt kÕ menu hÖ thèng 51
3.1. HÖ thèng 51
3.2. Ph©n hÖ ®µo t¹o 51
3.3. Ph©n hÖ qu¶n lý cÊp ®æi 52
3.4. Ph©n hÖ qu¶n lý thèng kª 52
3.5. Gióp ®ì 53
4. ThiÕt kÕ m· (Code design) 53
5. ThiÕt kÕ Report 54
6. Mét sè h×nh ¶nh cña ch¬ng tr×nh 55
6.1. Hép th«ng b¸o vÒ hÖ thèng 55
6.2. Giao diÖn chÝnh vµ hép kiÓm tra th«ng ngêi sö dông 55
6.3. Giao diÖn chÝnh giíi thiÖu ph©n hÖ ®µo t¹o 56
6.4. Giao diÖn chÝnh giíi thiÖu ph©n hÖ qu¶n lý thèng kª 56
6.5. Giao diÖn chÝnh giíi thiÖu Form : Danh môc tØnh 57
6.6. Giao diÖn chÝnh giíi thiÖu Form : XÐt ®iÒu kiÖn dù s¸t h¹ch 57
6.7. Giao diÖn chÝnh giíi thiÖu Form : Më ®ît s¸t h¹ch míi 58
Ch¬ng IV : Giíi thiÖu m«i trêng vµ c«ng cô ph¸t triÓn hÖ thèng 59
1. HÖ qu¶n trÞ c¬ së d÷ liÖu Microsoft SQL Server 7.0 59
1.1. CÊu tróc c¬ së d÷ liÖu SQL Server 59
1.2. C¸c ®èi tîng d÷ liÖu trong c¬ së d÷ liÖu SQL Server 59
1.3. Giao t¸c trong SQL Server 61
1.4. Lock vµ viÖc xö lý ®ång thêi 63
2. Microsoft Visual Basic 6.0 64
Ch¬ng V : S¬ lîc vÒ an toµn d÷ liÖu 70
VÊn ®Ò vÒ an toµn vÒ d÷ liÖu 70
Ph¬ng ph¸p tæ chøc ®¶m b¶o an toµn d÷ liÖu vµ hÖ thèng 70
KÕt luËn 72
Híng ph¸t triÓn ®Ò tµi 73
Tµi liÖu tham kh¶o 74
Môc lôc 76