B. VIẾT LỆNH CHO CÁC ĐỐI TƯỢNG
III. Mô hình vật lý dữ liệu 1. Cấu trúc các bảng TABLE
Mô hình vật lý dữ liệu là mô hình của dữ liệu được cài đặt trên máy tính dướI một hệ thống quản trị dữ liệu, trong bài toán quản lý công chức - tiền lương của UBDS-GĐ&TE tôi đã trình bày mô hình vật lý dữ liệu dướI hệ quản trị dữ liệu bằng ACCESS.
Ứng vớI mỗI lược đồ quan hệ trong mô hình tổ chức dữ liệu được cài đặt thành một bảng dữ liệu cơ sở (Table). Ở đây ta chỉ trình bày các yếu tố chính của các table bao gồm các cột: Tên trường, kiểu dữ liệu, kích thước và rang buộc tính toàn vẹn dữ liệu.
GIA THUỘC ( Mã GT, Họ, Tên GT, Ngày sinh GT, Mã CV, Mã CQ, Mã nghề )
CC-QTL (Mã CC, Mã BL, Ngày LL ) CC-GT (Mã CC, Mã GT, Mã LGT ) CÙNG CƠ QUAN (Mã CC, Mã LGT)
TÊN LƯỢC ĐỒ QUAN HỆ
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc toàn vẹn
VớI mỗI thuộc tính : Ta chỉ giảI thích giá trị. VớI thuộc tính khoá ta thêm chữ (K) bên cạnh thuộc tính.
Tên thuộc tính: Ghi tên thuộc tính
Kiểu dữ liệu : Kiểu dữ liệu của thuộc tính (Tương ứng vớI kiểu dữ liệu khác không cần chọn ở đây).
Ràng buộc toàn vẹn: Ở đây ta chỉ nghi ràng buộc toàn vẹn giá trị và ràng buộc toàn vẹn khoá ngoạI ta nghi: Lookup(TableName) vớI table name là tên của bảng dữ liệu mà thuộc tính này là khoá.
Sau mỗI hình ta cho một ví dụ vớI giá trị của dữ liệu
Vậy bài toán quản lý công chức -tiền lương ta có mô hình tổ chức dữ liệu sau:
TỈNH (Mã tỉnh, Tên tỉnh)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã tỉnh(K) Text 2 Len()=2
Tên tỉnh Text 20
M ã t ỉnh: Số thứ tự của tỉnh trong nước. Việt nam có dướI 100 tỉnh, nên ta chon 2 ký tự để đánh số thứ tự của tỉnh.
Tên tỉnh: Bắt đầulà Tp cho thành phố trực thuộc trung ương, T cho tỉnh và tiếp theo là tên tỉnh hay tên thành phố. Tên dài nhất của tỉnh Việt Nam là T Bà Rịa Vũng Tàu gồm 18 chữ cái. Ta chọn chiều dài tốI đa là 20.
Ví dụ:
Mã tỉnh Tên tỉnh
01 Tp Hà Nội
02 Tp HảI Phòng B CHỦNG (Mã BC, Tên BC)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã BC(K) Text 1 Len()=1
Tên BC Text 30
Mã BC: Số thứ tự binh chủng trong Quân độI Nhâ dân Việt Nam.
Ví dụ:
Mã BC Tên BC
1 Binh nhất
2 Binh nhì
CCBINH (Mã CC, Ngày NN, Ngày XN, Mã BC, Mã CB)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Len()=1
Ngày NN Date <Date()
Ngày XN Date <Date()
Mã BC Text 1 Lookup(BCHUNG)
Mã CB Text 2 Lookup(CẤP BẬC)
PhảI có: Ngày NN< Ngày XN
ĐẢNG VIÊN ( Mã CC, Ngày VĐ, Ngày CT, Mã tỉnh)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup(CÔNG CHỨC)
Ngày VĐ Date <Date()
Ngày CT Date <Date()
Mã Tỉnh Text 2 Lookup(TỈNH)
PhảI có: Ngày VĐ< Ngày CT Vídụ:
Mã CC Ngày VĐ Ngày CT Mã tỉnh
1111-1111 18/05/1996 18/05/1997 41 1111-2222 02/02/1991 02/02/1992 32 CHỨC VỤ (Mã CV, Tên CV)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CV(K) Text 2 Len()=2
Tên CV Text 20
Trong một cơ quan có nhiều chức vụ khác nhau, Mã CV: Số thứ tự của chức vụ tạI cơ quan
Ví dụ:
Mã CV Tên CV
01 Chủ tịch
02 Phó Chủ tịch CƠ QUAN (Mã CQ, Tên CQ)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CQ(K) Text 3 Len()=3
Tên CQ Text 30
Mã CQ: Số thứ tự của các cơ quan trong khu vực. Trong bảng dữ liệu có một giá trị: Không có cơ quan vớI mã số 000
Ví dụ:
Mã CQ Tên CQ
000 Không cơ quan
001 Trường ĐạI Học Bách Khoa Hà Nội NGHỀ (Mã nghề, Tên nghề )
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã nghềK) Text 2 Len()=3
Tên nghề Text 30
Mã nghề: Số thứ tự của nghề nghiệp. Trong bảng dữ liệu có một giá trị: Không nghề nghiệp vớI mã số 00
Mã nghề Tên nghề
00 Không nghề nghiệp
01 Ký sư
LOẠI LGT ( Mã LGT, Tên LGT )
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã LGTK) Text 2 Len()=2
Tên LGT Text 6
Mã LGT: Số thứ tự của loạI gia thuộc Ví dụ:
Mã LGT Tên LGT
01 Cha
02 Mẹ
03 Anh
04 Em
05 Chồng
06 Vợ
07 Con
BẬC LƯƠNG (Mã BL, Hệ số L, Mã NL)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã BL Text 2 Len()=2
Tên Hệ số L Number Single >=1And<=2
Mã NL Text 4 L ookup(NGẠCH)
Mã BL: Số thứ tự của bậc lương
NGẠCH (Mã NL, Tên NL, Số TLL)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã NL Text 4 Len()=4
Tên NL Text
Số TLL Number Byte =24or=36
Ví dụ:
Mã NL Tên NL Số TLL
0510 Giảng viên 36 0211 Trợ giảng 24 LÝ DO (Mã LD, Tên LD)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã LD Text 4 Len()=4
Tên LD Text 50
Mã LD: 2 ký tự đầu là NN: Lý do đi nước ngoài, KL: lý do bị kỷ luật, KT: Lý do được khen thưởng. Hai ký tự sau là số thứ tự của mỗI lý do.
Ví dụ:
Mã LD Tên LD NN01 Du lịch
KT Hoàn thành tốt nhiệm vụ KL Vi phạm kỷ luật lao động KTKL (Mã KTKL, Tên KTKL)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã KTKL Text 2 Len()=2
Tên KTKL Text 50
Mã KTKL: Số thứ tự của khen thưởng hay kỷ luật Ví dụ:
Mã KTKL Tên KTKL
01 Đơn vị tặng giấy khen
… ……
51 Khiển trách trước đơn vị 52 Cảnh cáo trước đơn vị NƯỚC (Mã nước, Tên nước )
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã nước (K) Text 3 Len()=3
Tên nước Text 30
Mã nước: Chữ viết tắt của một nước trên thế giớI Ví dụ:
Mã nước Tên nước
VN Việt Nam
USA Hoa Kỳ
CMÔN (Mã CM, Tên CM, TgĐT)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CM (K) Text 2 Len()=2
Tên CM Text 50
TgĐT Byte
Mã CM: Số thứ tự của chuyên môn đào tạo TgĐT : ThờI gian đào tạo được tính bằng tháng Ví dụ:
Mã CM Tên CM TgĐT
01 Kế toán văn phòng 12
02 Sơ cấp tin học 6 TRƯỜNG (Mã Tr, Tên Tr)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã Tr (K) Text 2 Len()=2
Tên Tr Text 50
Mã Tr: Số thứ tự của trường đào tạo Ví dụ:
Mã Tr Tên Tr
01 ĐạI Học Thuỷ Sản 02 Trung cấp thống kê NG NGỮ (Mã NN, Tên NN)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã NN(K) Text 1 Len()=1
Tên NN Text 15
Có 7 ngoạI ngữ được công nhận: Anh, Pháp, Đức, Tây Ban Nha, Bồ Đào Nha, Trung Quốc. Mã NN là số thứ tự của NN
Ví dụ
Mã NN Tên NN
1 Anh
2 Nga
VĂN HOÁ (Mã TĐVH, Tên TĐVH)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã TĐVH(K) Text 1 Len()=1
Tên TĐVH Text 20
Có 5 trình độ văn hoá: Tiểu học, Trung học cơ sở, Trung học phổ thong, ĐạI học, Trên đạI học.
Ví dụ:
Mã TĐVH Tên TĐVH
1 Tiểu học
2 Trung học cơ sở
3 Trung học phổ thông
4 ĐạI học
5 Trên đạI học
TÔN GIÁO (Mã TG, Tên TG)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã TG(K) Text 1 Len()=1
Tên TGVH Text 15
Việt nam có khoảng 10 tôn giáo khác nhau. Mã TG là số thứ tự của tôn giáo.
Ví dụ:
Mã TG Tên TG
0 Không tôn giáo
1 Phật giáo
2 Thiên chúa giáo DÂN TỘC (Mã DT, Tên DT)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã DT(K) Text 2 Len()=2
Tên DTVH Text 10
Việt nam có khoảng 60 dân tộc khác nhau. Mã DT là số thứ tự của dân tộc.
Ví dụ:
Mã DT Tên DT
01 Kinh
02 Hoa
03 Mường
ĐƠN VỊ (Mã ĐV, Tên ĐV )
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã ĐV(K) Text 2 Len()=2
Tên ĐV Text 50
Mã đơn vị là số thứ tự của đơn vị trong cơ quan Ví dụ
Mã ĐV Tên ĐV 01 Phòng tổ chức 02 Phòng tài vụ 03 Phòng nghiệp vụ
GIA THUỘC (Mã GT, Họ tên GT, Ngày sinh GT, Mã CV, Mã CQ, Mã nghề) Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã GT(K) Text 4 Len()=4
Họ tên GT Text 30
Ngày sinh GT Date
Mã CV Text Lookup(CHỨC VỤ)
Mã CQ Text Lookup(CƠ QUAN)
Mã nghề Text Lookup(NGHỀ)
Mã GT: Số thứ tự của những ngườI trong gia thuộc của côngchức. Toàn bỘ trong cơ quan có khoảng 500 gia thuộc.
PHÉP(Mã CC, Mã tỉnh, Ngày BĐ, Ngày KT)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup (CÔNG CHỨC)
Ma tỉnh Text 2 Lookup (TỈNH)
Ngày BĐ Date <Date
Ngày KT Date <Date
PhảI có Ngày BĐ <= Ngày KT
Ngày BĐ: Ngày bắt đầu nghỉ phép. Thuộc tính này phảI tham gia vào khoá. Vì nếu chỉ có mã CC và Mã tỉnh là khoá thì một công chức nghỉ phép tạI một tỉnh nào đó chỉ có một lần.
Ngày KT: Ngày kết thúc nghỉ phép Ví dụ
Mã CC Mã tỉnh Ngày BĐ Ngày KT
1111-1111 01 12/03/1999 18/03/1999 1111-2222 02 14/04/2000 16/04/2000 1111-3333 03 10/05/2000 15/05/2000 CC-NN (Mã CC, Mã NN, Cấp độ)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup (CÔNG CHỨC)
Mã NN Text 1 Lookup (NGNGỮ)
Cấp độ Text 1 In (A,B,C,D)
Ví dụ:
Mã CC Mã NN Cấp độ
1111-1111 1 B
1111-2222 2 B
1111-3333 3 A
CC-CM (Mã CC, Mã Tr, Mã CM, LoạI CC, N ĐĐT, N BĐKT)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup (CÔNG CHỨC)
Mã Tr (K) Text 2 Lookup (TRƯỜNG)
Mã CM (K) Text 2 Lookup (CMÔN)
LoạI CC Yes/No
N BĐĐT Date
N BĐKT Date
LoạI CC: Có hai giá trị Yes là văn bằng; No là chứng chỉ tốt nghiệp
N BĐĐT: Ngày bắt đầu đào tạo. N BĐKT: Ngày bắt đầu kết thúc Ví dụ:
Mã CC Mã Tr Mã CM LoạI CC N BĐĐT N BĐKT
1111-1111 01 03 Yes 12/011996 10/06/1999
1111-2222 02 04 No 12/02/1997 12/08/2000
1111-3333 03 05 Yes 12/03/1995 10/06/2000
CC-ĐNN (Mã CC, Mã nước, Ngày đi, Ngày về)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup (CÔNG CHỨC)
Mã nước (K) Text 3 Lookup (NƯỚC)
Ngày đi (K) Date <Date()
Ngày về Date <Date()
PhảI có: Ngày đi < Ngày về
Ngày đi: Ngày công chức đi nước ngoài. Thuôck tính này phảI tham gia vào khoá. Vì nếu chỉ có Mã CC và Mã nước là khoá thì một công chức nào đó chỉ có một lần. Trong thực tế thì một công chức có thể đi nước ngoài nhiều lần
CC- KTKL (Mã CC, Mã KTKL, Mã LD, Ngày KTKL, Ngày XKL)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup (CÔNG CHỨC)
Mã KTKL (K) Text 2 Lookup (KTKL)
Mã LD (K) Text 2 Lookup (LÝ DO)
Ngày KTKL Date <Date()
Ngày XKL Date <Date()
Ngày KTKL: Ngày công chức được khen thưởng hay bị kỷ luật. Thuộc tính này phảI tham gia vào khoá, vì có nhiều công chức được khen thưởng hay bị kỷ luật một hình thức nào đó có thể nhiều lần.
Ngày XKL: Ngày công chức được xoá kỷ luật. Thuộc tính này chỉ có giá trị khi một công chức kỷ luật.
CÙNG CƠ QUAN (Mã CC1, Mã CC2, Mã LGT)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC1(K) Text 9 Lookup (CÔNG CHỨC)
Mã CC2 (K) Text 9 Lookup (CÔNG CHỨC)
Mã LGT (K) Text 2 Lookup (LGT)
Ví dụ:
Mã CC1 Mã CC2 Mã LGT
1111-1111 1111-1212 01 1111-2222 1111-0101 02
1111-3333 1331-2345 05 SĐT(Mã CC, Số ĐT)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup (CÔNG CHỨC)
Số ĐT (K) Text 10 Lookup (CÔNG CHỨC)
Ví dụ:
Mã CC Số ĐT 1111-1111 031778838 1111-2222 0241631010 1111-3333 0241632022
BẢNG CHẤM CÔNG(Mã CC, Số ngày làm việc, Số ngày nghỉ không phép, Số tiền thưởng, Số tiền phạt )
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup (CÔNG CHỨC)
Số NLV (K) Date <Date()
Số NKP (K) Date <Date()
Số TThưởng Number Single
Số TPhạt Number Single
Ví dụ:
Mã CC Số NLV Số NKP Số TThưởng Số TPhạt
1111-1111 20 6 200000 0
1111-2222 26 0 200000 10000
1111-3333 26 0 200000 15000
BẢO HIỂM (Mã BH, HTBH)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã BH(K) Text 2 Len()=2
Số HTBH Text 20
Mã BH: Mã bảo hiểm có kích thước là 2 HTBH: Hình thức bảo hiểm
CC-GT(Mã CC, Mã GT, Mã LGT)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup(CÔNG CHỨC)
Mã GT (K) Text 4 Lookup(GIA THUỘC)
Mã LGT (K) Text 2 Lookup(LGIA THUỘC)
PHỤ CẤP( Mã PC, Tên PC, Tiền)
ên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã PC(K) Text 1 Len()=1
Tên PC Text 20
PHÒNG TỔ CHỨC
PHÒNG TÀI VỤ
ĐƠN VỊ
Tiền Number Single Ví dụ:
Mã PC Tên PC Tiền
1 Chức vụ 50000
2 Chuyên môn 100000
CẤP BẬC(Mã CB, Tên CB)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CB(K) Text 2 Len()=2
Tên CB Text 15
Mã CB: Số thứ tự cấp bậc trong quân độI Nhân dân Việt Nam Ví dụ:
Mã CB Tên CB
01 Binh nhất
02 Binh nhì
CC-QTL(Mã CC, Mã BL, NLL)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Lookup(CÔNG CHỨC)
Mã BL(K) Text 4 Lookup(BẬC LƯƠNG)
NLL(K) Date <Date()
Ngày LL: Ngày công chức lên bậc lương mớI. Thuộc tính này phảI tham gia vào khoá. Vì nếu chỉ có Mã CC và Mã BL là khoá thì một công chức lên một bậc lương nào đó chỉ một lần. Trong thực tế có nhiều công chức bị kỷ luật hạ bậc lương nên một bậc lương công chức có thể lên nhiều hơn một lần.
CÔNG CHỨC(Mã CC, Họ CC, Tên CC, ngày sinh, giớI tính, nơi sinh, địa chỉ, đoàn viên, ngày CQ, ngày vào BC, Mã ĐV, Mã DT, Mã TG, Mã TĐCH, Mã CV, Mã BH, Mã PC)
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc tính toàn vẹn
Mã CC(K) Text 9 Len()=9
Họ CC Text 30
Tên CC Text 7
Ngày sinh Date (1)
GiớI tính Yes/No
Nơi sinh Text 50
Địa chỉ Text 50
Đoàn viên Yes/No
Ngày VCQ Date (2)
Ngày vào BC Date (3)
Mã ĐV Text 2 Lookup(ĐƠN VỊ)
Mã DT Text 2 Lookup(DÂN TỘC)
Mã TG Text 1 Lookup(TÔN GIÁO)
PHÒNG TỔ CHỨC
PHÒNG TÀI VỤ
ĐƠN VỊ
THÔNG BÁO TUYỂN CÔNG CHỨC
Hồ sơ bị từ chốI
Giấy báo trúng tuyển ND đã nhận In danh sách
trúng tuyển
Mã TĐVH Text 1 Lookup(VĂN HOÁ)
Mã CV Text 2 Lookup(CHỨC VỤ)
Mã BH Text 2 Lookup(BẢO HIỂM)
Mã PC Text 1 Lookup(PHỤ CẤP)
Mã CC: 4 ký tự đầu là ngạch, 4 ký tự sau là số thứ tự của CC trong cơ quan.
Hai nhóm cách nhau bởI dấu (-)
Tên CC: Gồm một từ là tên của công chức.
GiớI tính: Yes là Nam, No là Nữ III. Mô hình hoá xử lý
1) Sơ đồ thông lượng :
Nhằm xác định các luồng thông tin trao đổI giữa các tác nhân trong hệ thống thông tin quản lý. Bài toán quản lý công chức - tiền lương của UBDS-GĐ&TE có bốn tác nhân trong và có một tác nhân ngoài. Sự chuyển giao thông tin giữa các tác nhân theo sơ đồ thông lượng như sau:
2) Danh sách tác vụ
(1) Yêu cầu tuyển công chức (2) Lệnh tuyển công chức (3) Thông báo tuyển công chức (4) Nộp hồ sơ dự tuyển
(5) Trình hồ sơ xét duyệt (6) Hồ sơ được xét duyệt (7) Thông báo kết quả
NHÂN DÂN
CHỦ TỊCH UBDS- GĐ&TE
PHÒNG TỔ CHỨC
PHÒNG TÀI VỤ
ĐƠN VỊ
(1)
(14) (13)
(9) (8)
(10) (8)
(12) (11)
(6) (5) (2)
(7) (4)
(3)
(15)
(16)
(17)
(8) Quyết định tuyển công chức (9) Bảng chấm công
(10) Bảng chấm công đã duyệt (11) Bảng lương trình ký (12) Bảng lương đã duyệt (13) Bảng lương
(14) Bảng lương đã ký nhận (15) Đề nghị khen thưởng kỷ luật
(16) Danh sách khen thưởng kỷ luật đã duyệt (17) Danh sách khen thưởng kỷ luật
đãuyệt
THÔNG BÁO TUYỂN CÔNG CHỨC
Hồ sơ bị từ chốI
Giấy báo trúng tuyển ND đã nhận In danh sách
trúng tuyển
Danh sách không chấp nhận
LĨNH LƯƠNG NO YES
XÉT KTKL NO YES
Danh sách được KTKL
KHEN THƯỞNG KỶ LUẬT NO YES
Danh sách chưa KTKL