lOMoARcPSD|46342985
lOMoARcPSD|46342985
CTTXXX – H Qu n Tr CSDL
Tháng 1/2013
GIAO TÁC
(Transaction)
Tóm t t n i dung bài th c hành:
- Gi i thi u khái ni m giao tác
- Đ c đi m c a giao tác
- Cách cài đ t giao tác
- C ch c p phát khóa c a HQT trong giao tácơ ế
Bộ môn Hệ thống thông tin
Khoa Công nghệ thông tin
lOMoARcPSD|46342985
M C L C
1
M c tiêu và tóm t t n i dung ...........................................................................................................................
1
2
H ng d n c th ..................................................................................................................................................ướ
1
2.1 Giao tác ...............................................................................................................................................................
1
2.2 Ví d minh h a .................................................................................................................................................
2
2.3 B ng c p phát khóa c a MS SQLSERVER .............................................................................................
4
2.4B ng truy xu t d li u ..................................................................................................................................
5
3
Bài t p t i l p ..........................................................................................................................................................
5
4
Bài t p v nhà .........................................................................................................................................................
7
lOMoARcPSD|46342985
Đ NH NGHĨA C U TRÚC GIAO TÁC TRONG MS SQLSERVER
1 M c tiêu và tóm t t n i dung
Cài đ t giao tác trên MS SQLSERVER.
Sau khi hoàn thành bài t p này sinh viên có th :
- Hi u đ c khái ni m giao tác ượ
- Bi t cách cài đ t giao tác trên MS SQLSERVERế
- Bi t cách xác đ nh b ng truy xu t d li u c a MS SQLSERVER.ế
2 H ng d n c thướ
2.1 Giao tác
Đ nh nghĩa
- Giao tác là t p các thao tác có th t , truy xu t d li u trên CSDL.
- Giao tác chuy n CSDL t tr ng thái nh t quán này sang tr ng thái nh t
quán khác.
Tính ch t
- Tính nguyên t (atomicity): Giao tác là đ n v nh nh t không chia c t ơ
đ c n a.ượ
- Tính nh t quán (consistency): Các thao tác c p nh t thông tin trong
CSDL c a giao tác không làm m t tính nh t quán c a CSDL (tính b t
h p lí gi a các d li u trong CSDL)
- Tính cô l p (isolation): Giao tác th c hi n m t cách đ c l p,không ph
thu c vào các giao tác khác.
- Tính b n v ng (durability): K t qu giao tác đ c l u tr b n v ng ế ượ ư
trong CSDL.
Cài đ t
- Đ n gi nơ
BEGIN TRANSACTION
B môn H th ng thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 1
lOMoARcPSD|46342985
--CÂU L NH SQL
COMMIT TRANSACTION --N U THÀNH CÔNG, HO C ROLLBACK
N U TH T B I
- Có x lí l i
BEGIN TRANSACTION
BEGIN TRY
--CÂU L NH SQL
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION –N U TH T
B I END CATCH
COMMIT TRANSACTION --N U THÀNH CÔNG
2.2 Ví d minh h a
TAIKHOAN (USERNAME, PASS, STATUS)
Vi t giao tác th c hi n ch c năng đăng nh p vào h th ngế ư
- Đ u vào : username, pass
- Đ u ra : k t qu đăng nh pế
- N i dung
O Ki m tra username có t n t i ko?
§ N u không t n t iế
Xu t thông báo
Thoát
O Ki m tra m t kh u có t ng thích v i username không ươ
§ N u không t ng thíchế ươ
Xu t thông báo
Thoát
§ Xu t k t qu ki m tra đăng nh p thành công ế
lOMoARcPSD|46342985
Nh n xét:
- Các thao tác trong giao tác trên không th tách r i đ c. N u 1 thao tác ượ ế
đ c th c thi thì t t c các thao tác khác ph i đ c th c thi thànhượ ượ
công và ng c l i.ượ
- Giao tác đ c khai báo t ng minh (ượ ườ BEGIN TRANSACTION) nên ph i
đ c h y t ng minh b ng cách dùng (ượ ườ ROLLBACK ho c COMMIT
TRANSACTION)
Cài đ t : Vi t d i d ng 1 th t cế ướ
CREATE PROC USP_DANGNHAP
@username char(10),
@pass char(10)
AS
BEGIN TRANSACTION
BEGIN TRY
IF NOT EXISTS(SELECT *
FROM TAIKHOAN
WHERE username = @username )
BEGIN
PRINT ‘USERNAME không t n t i’
ROLLBACK TRANSACTION
RETURN
END
IF NOT EXISTS(SELECT *
FROM TAIKHOAN
B môn H th ng thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 3
lOMoARcPSD|46342985
WHERE username = @username and pass = @pass)
BEGIN
PRINT ‘Sai m t kh u không t n t i’
ROLLBACK TRANSACTION
RETURN
END
END TRY
BEGIN CATCH
PRINT ‘L i đăng nh p’
ROLLBACK TRANSACTION
END CATCH
PRINT ‘Đăng nh p thành công’
COMMIT TRANSACTION
GO
2.3 B ng c p phát khóa c a MS SQLSERVER
Shared Lock Update Lock Exclusive lock
(S) (U) (X)
SELECT
þ
UPDATE
DELETE
INSERT
þ þ
þ
þ
Khóa S được trả ngay khi thực hiện xong thao tác đọc (nếu không
đặt mức cô lập)
Khóa X được giữ đến hết giao tác
lOMoARcPSD|46342985
2.4 B ng truy xu t d li u
Câu lệnh Khóa Dữ liệu
SELECT *
FROM TAIKHOAN
S TAIKHOAN
WHERE username = @username
SELECT *
FROM TAIKHOAN
S TAIKHOAN
WHERE username = @username
and pass = @pass
3 Bài t p t i l p
L c đ CSDLượ :
+ TaiKhoan(MaTK, NgayLap, SoDu, TrangThai, LoaiTK, MaKH)
+ LoaiTaiKhoan (MaLoai, TenLoai)
+ KhachHang(MaKH, HoTen, NgaySinh, CMND, DiaChi)
+ GiaoDich(MaGD, MaTK, SoTien, ThoiGianGD, GhiChu)
Vi t các giao tác sau:ế
1. Vi t giao tác xem s d tài kho n. N i dung:ế ư
- Input: MaTK
- Output: s d tài kho n ư
§ Ki m tra MaTK đã t n t i
N u MaTK không t n t i xu t thông báoế à [MaTK]
không t n t i. Thoát kh i th t c.
§ Ki m tra Tr ng thái c a tài kho n
N u Tr ng thái = “Đã khóa” xu t thông báoế à [MaTK]
đã b khóa.
§ Xu t s d ra màn hình ư
2. Vi t giao tác thêm tài kho n m i. N i dung:ế
- Input: thông tin tài kho n
B môn H th ng thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 5
lOMoARcPSD|46342985
- Output: 0 – Thêm thành công
1 – Thêm không thành công
§ Ki m tra MaTK có t n t i
N u MaTK đã t n t i xu t thông báoế à [MaTK] đã t n
t i. Thoát kh i th t c.
§ Ki m tra s d tài kho n > = 100000 VND ư
N u vi ph m xu t thông báoế à [S d ] không h p l . ư
Thoát kh i th t c.
§ Ki m tra Tr ng thái <> Null
N u Tr ng thái = Null thì gán Tr ng thái = “Đang dùng”ế
§ Ki m tra lo i tài kho n t n t i
N u lo i tài kho n không t n t i, xu t thông báoế à
[Lo i tài kho n] không t n t i. Thoát kh i th t c.
§ Ki m tra MaKH t n t i
3. Vi t giao tác xóa tài kho n.ế
- Input: MaTK
- Output: 0 – Xóa thành công
1 – Xóa không thành công
§ Ki m tra MaTK đã t n t i
N u MaTK không t n t i xu t thông báoế à [MaTK]
không t n t i và thoát.
§ Ki m tra tài kho n đã th c hi n giao d ch nào ch a ư
N u tài kho n ch a th c hi n giao d ch nàoế ư à Xóa tài
kho n.
Ng c l i, xu t thông báo tài kho n đã th c hi n giao ượ
d ch không th xóa.
§ Xu t thông báo k t qu xóa. ế
4. C p nh t thông tin tài kho n.
- Input: MaTK, Ngày l p, s d , tr ng thái ư
- Output: Output: 0 – c p nh t thành công
lOMoARcPSD|46342985
1 – c p nh t không thành công
§ Ki m tra MaTK đã t n t i
N u MaTK không t n t i xu t thông báoế à [MaTK]
không t n t i và thoát.
§ Ki m tra ngày l p khác null à Xu t thông báo ngày l p không h p l n u vi ph m ế
và thoát kh i th t c.
§ Ki m tra s d >100000 VND ư à Xu t thông báo s d không h p l và thoát kh i ư
th t c n u vi ph m. ế
§ Ki m tra tr ng thái ph i thu c trong t p {đang dùng, đã khóa, b h y} à N u vi ế
ph m xu t thông báo và thoát kh i th t c.
§ Th c hi n c p nh t thông tin m i.
4 Bài t p v nhà
L c đ CSDLượ :
B môn H th ng thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 7
lOMoARcPSD|46342985
Bài 1: Hãy cài đ t các giao tác sau
1. Thêm công vi c
Input: thông tin công vi c
Output: 0 – Thêm thành công. 1 – Thêm không thành công
- Ki m tra thông tin nh p không đ c r ng. ượ
- Ki m tra thông tin nh p t n t i.
- Ki m tra ngày b t đ u công vi c ph i sau ngày b t đ u đ tài
và tr c ngày k t thúc đ tài.ướ ế
- Thêm công vi c m i
2. C p nh t công vi c
Input: thông tin công
vi c
Output: 0 – C p nh t thành công. 1 – C p nh t không thành công
lOMoARcPSD|46342985
- Ki m tra thông tin nh p không đ c r ng. ượ
- Ki m tra thông tin nh p t n t i.
- Ki m tra ngày b t đ u công vi c ph i sau ngày b t đ u đ tài
và tr c ngày k t thúc đ tài.ướ ế
- Thông tin ngoài khóa ph i có thay đ i v i thông tin ban đ u
- C p nh t thông tin
3. Xóa công vi c
Input: Khóa trong b ng công vi c
Output: 0 – Xóa thành công. 1 – Xóa không thành công
- Ki m tra khóa t n t i
- Ki m tra công vi c ch a đ c phân công ư ượ
- Xóa công vi c.
- Ki m tra đ tài không còn công vi c nào thì xóa đ tài đó.
4. Thêm đ tài
Input: thông tin đ tài
Output: 0 – Thêm thành công. 1 – Thêm không thành công
- Ki m tra thông tin nh p không đ c r ng. ượ
- Ki m tra thông tin nh p h p l .
- Ki m tra thông tin đ u vào t n t i.
- GVCNTDT ph i là tr ng b môn h c tr ng khoa. ưở ưở
- C p qu n lí cao h n thì kinh phí cho đ tài ph i cao h n. ơ ơ
- Thêm đ tài
5. C p nh t đ tài
Input: thông tin đ
tài
Output: 0 – C p nh t thành công. 1 – C p nh t không thành công
- Ki m tra thông tin nh p không đ c r ng. ượ
- Ki m tra thông tin nh p h p l .
- Ki m tra thông tin đ u vào t n t i.
- GVCNTDT ph i là tr ng b môn h c tr ng khoa. ưở ưở
B môn H th ng thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 9
lOMoARcPSD|46342985
- C p qu n lí cao h n thì kinh phí cho đ tài ph i cao h n. ơ ơ
- C p qu n lí ch đ c nâng lên không đ c h xu ng. ượ ượ
- C p nh t đ tài
6. Xóa đ tài
Input: Mã đ tài
Output: 0 – Xóa thành công. 1 – Xóa không thành công
- Ki m tra mã đ tài t n t i
- Ki m tra đ tài ch a có tham gia. ư
- Ki m tra đ tài ch a k t thúc. ư ế
- Xóa đ tài
Bài 2: Hãy mô t và cài đ t các giao tác sau
1. Thêm ng i thânườ
2. Thêm giáo viên
3. C p nh t tr ng b môn ưở
4. C p nh t ch nhi m đ tài
5. Thêm tham gia đ tài
6. C p nh t tham gia đ tài
7. Xóa tham gia đ tài c a giáo viên
H T

Preview text:

lOMoARcPSD|46342985 lOMoARcPSD|46342985 CTTXXX – H ệ Qu n ả Tr ị CSDL Tháng 1/2013 GIAO TÁC (Transaction) Tóm t t ắ n i ộ dung bài th c ự hành: - Gi i ớ thi u ệ khái ni m ệ giao tác - Đặc đi m ể c a ủ giao tác - Cách cài đặt giao tác - Cơ ch ế c p ấ phát khóa c a ủ HQT trong giao tác
Bộ môn Hệ thống thông tin Khoa Công nghệ thông tin lOMoARcPSD|46342985 M C Ụ L C 1 Mục tiêu và tóm t t ắ n i
ộ dung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 Hư n ớ g dẫn cụ th
ể . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2.1 Giao tác . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2.2 Ví d ụ minh h a
ọ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.3 B n ả g cấp phát khóa c a
ủ MS SQLSERVER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.4Bảng truy xu t ấ d ữ li u
ệ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3 Bài tập tại l p
ớ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 4 Bài tập v
ề nhà . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 lOMoARcPSD|46342985 ĐỊNH NGHĨA C U
Ấ TRÚC GIAO TÁC TRONG MS SQLSERVER 1 M c ụ tiêu và tóm t t ắ n i ộ dung
Cài đặt giao tác trên MS SQLSERVER. Sau khi hoàn thành bài t p ậ này sinh viên có th : ể - Hi u ể đư c ợ khái ni m ệ giao tác - Bi t ế cách cài đ t
ặ giao tác trên MS SQLSERVER - Bi t ế cách xác đ n ị h b n ả g truy xu t ấ d ữ li u ệ c a ủ MS SQLSERVER. 2 Hư n ớ g d n ẫ c ụ thể 2.1 Giao tác Đ n ị h nghĩa - Giao tác là t p ậ các thao tác có th ứ t , ự truy xu t ấ d ữ li u ệ trên CSDL. - Giao tác chuy n ể CSDL t ừ tr n ạ g thái nh t ấ quán này sang tr n ạ g thái nh t ấ quán khác. Tính ch t
- Tính nguyên tố (atomicity): Giao tác là đ n ơ v ịnh ỏ nh t ấ không chia c t ắ đư c ợ nữa. - Tính nh t
ấ quán (consistency): Các thao tác c p ậ nh t ậ thông tin trong CSDL c a ủ giao tác không làm m t ấ tính nh t ấ quán c a ủ CSDL (tính b t ấ h p ợ lí gi a ữ các d ữ li u ệ trong CSDL) - Tính cô l p
(isolation): Giao tác th c ự hi n ệ m t ộ cách đ c ộ l p ậ ,không ph ụ thu c ộ vào các giao tác khác. - Tính b n ề v n
ữ g (durability): K t ế qu ả giao tác đư c ợ l u ư tr ữ b n ề v n ữ g trong CSDL. Cài đ t - Đ n ơ gi n BEGIN TRANSACTION Bộ môn Hệ th n
ố g thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 1 lOMoARcPSD|46342985 --CÂU L N Ệ H SQL
COMMIT TRANSACTION --N U Ế THÀNH CÔNG, HO C Ặ ROLLBACK NẾU TH T Ấ B I - C ó x ử lí l i BEGIN TRANSACTION BEGIN TRY --CÂU L N Ệ H SQL END TRY BEGIN CATCH
ROLLBACK TRANSACTION –N U Ế TH T
BẠI END CATCH
COMMIT TRANSACTION --N U Ế THÀNH CÔNG 2.2 Ví d ụ minh h a
TAIKHOAN (USERNAME, PASS, STATUS) Vi t ế giao tác th c ư hi n ệ ch c ứ năng đăng nh p ậ vào h ệ th n ố g - Đ ầu vào : username, pass - Đ ầu ra : k t ế quả đăng nh p ậ - N i ộ dung O Ki m ể tra username có t n ồ t i ạ ko? § N u ế không t n ồ t i ạ • Xuất thông báo • Thoát O Ki m ể tra m t ậ kh u ẩ có tư n ơ g thích v i ớ username không § N u ế không tư n ơ g thích • Xuất thông báo • Thoát § Xuất k t ế qu ả ki m ể tra đăng nh p ậ thành công lOMoARcPSD|46342985 Nhận xét:
- Các thao tác trong giao tác trên không th ể tách r i ờ đư c ợ . N u ế 1 thao tác đư c ợ th c ự thi thì t t
ấ cả các thao tác khác ph i ả đư c ợ th c ự thi thành công và ngư c ợ l i ạ . - Giao tác đư c ợ khai báo tư n
ờ g minh (BEGIN TRANSACTION) nên ph i ả đư c ợ hủy tư n ờ g minh b n
ằ g cách dùng (ROLLBACK hoặc COMMIT TRANSACTION) Cài đặt: Vi t ế dư i ớ d n ạ g 1 th ủ t c ụ
CREATE PROC USP_DANGNHAP @username char(10), @pass char(10) AS BEGIN TRANSACTION BEGIN TRY IF NOT EXISTS(SELECT * FROM TAIKHOAN WHERE username = @username ) BEGIN PRINT ‘USERNAME không t n ồ t i ạ ’ ROLLBACK TRANSACTION RETURN END IF NOT EXISTS(SELECT * FROM TAIKHOAN Bộ môn Hệ th n
ố g thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 3 lOMoARcPSD|46342985
WHERE username = @username and pass = @pass) BEGIN PRINT ‘Sai m t ậ kh u ẩ không t n ồ t i ạ ’ ROLLBACK TRANSACTION RETURN END END TRY BEGIN CATCH PRINT ‘Lỗi đăng nh p ậ ’ ROLLBACK TRANSACTION END CATCH PRINT ‘Đăng nh p ậ thành công’ COMMIT TRANSACTION GO 2.3 B n ả g c p ấ phát khóa c a ủ MS SQLSERVER Shared Lock Update Lock Exclusive lock (S) (U) (X) SELECT þ þ þ UPDATE DELETE þ INSERT þ
Khóa S được trả ngay khi thực hiện xong thao tác đọc (nếu không đặt mức cô lập)
Khóa X được giữ đến hết giao tác lOMoARcPSD|46342985 2.4 B n ả g truy xu t ấ d ữ li u Câu lệnh Khóa Dữ liệu SELECT * FROM TAIKHOAN S TAIKHOAN WHERE username = @username SELECT * FROM TAIKHOAN S TAIKHOAN WHERE username = @username and pass = @pass 3 Bài t p ậ t i ạ l p Lư c ợ đồ CSDL:
+ TaiKhoan(MaTK, NgayLap, SoDu, TrangThai, LoaiTK, MaKH)
+ LoaiTaiKhoan (MaLoai, TenLoai)
+ KhachHang(MaKH, HoTen, NgaySinh, CMND, DiaChi)
+ GiaoDich(MaGD, MaTK, SoTien, ThoiGianGD, GhiChu) Vi t ế các giao tác sau: 1. Vi t ế giao tác xem s ố d ư tài kho n ả . N i ộ dung: - Input: MaTK - Output: s ố d ư tài kho n ả § Ki m ể tra MaTK đã t n t ồ i ạ • N u ế MaTK không t n ồ t i ạ xu t ấ thông báo à [MaTK] không t n ồ t i ạ . Thoát kh i ỏ th ủ t c ụ . § Ki m ể tra Trạng thái c a ủ tài kho n ả • N u ế Tr n
ạ g thái = “Đã khóa” xu t ấ thông báo à [MaTK] đã bị khóa. § Xu t ấ s d ố r ư a màn hình 2. Vi t ế giao tác thêm tài kho n ả m i ớ . N i ộ dung: - Input: thông tin tài kho n ả Bộ môn Hệ th n
ố g thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 5 lOMoARcPSD|46342985
- Output: 0 – Thêm thành công
1 – Thêm không thành công § Ki m ể tra MaTK có t n ồ t i ạ • N u ế MaTK đã t n ồ t i ạ xu t
ấ thông báo à [MaTK] đã t n ồ tại. Thoát kh i ỏ th ủ t c ụ . § Ki m ể tra s d ố t ư ài kho n > ả = 100000 VND • N u ế vi phạm xu t ấ thông báo à [Số d ] ư không h p ợ l . ệ Thoát kh i ỏ th ủ t c ụ . § Ki m
ể tra Trạng thái <> Null • N u ế Tr n
ạ g thái = Null thì gán Tr n
ạ g thái = “Đang dùng” § Ki m ể tra lo i ạ tài kho n ả t n t ồ i ạ • N u ế loại tài kho n ả không t n ồ t i ạ , xu t ấ thông báo à [Loại tài kho n ả ] không t n ồ t i ạ . Thoát kh i ỏ th ủ t c ụ . § Ki m ể tra MaKH t n t ồ i ạ 3. Vi t ế giao tác xóa tài kho n ả . - Input: MaTK
- Output: 0 – Xóa thành công 1 – Xóa không thành công § Ki m ể tra MaTK đã t n t ồ i ạ • N u ế MaTK không t n ồ t i ạ xu t ấ thông báo à [MaTK] không t n ồ t i ạ và thoát. § Ki m ể tra tài kho n đ ả ã th c ự hi n ệ giao d ch ị nào ch a ư • N u ế tài kho n ả ch a ư th c ự hi n ệ giao d c ị h nào à Xóa tài kho n ả . • Ngư c ợ lại, xu t ấ thông báo tài kho n ả đã th c ự hi n ệ giao dịch không th ể xóa. § Xu t ấ thông báo k t ế qu xó ả a. 4. Cập nh t ậ thông tin tài kho n ả . - Input: MaTK, Ngày l p ậ , s ố d , ư tr n ạ g thái - Output: Output: 0 – c p ậ nh t ậ thành công lOMoARcPSD|46342985 1 – cập nh t ậ không thành công § Ki m ể tra MaTK đã t n t ồ i ạ • N u ế MaTK không t n ồ t i ạ xu t ấ thông báo à [MaTK] không t n ồ t i ạ và thoát. § Ki m ể tra ngày l p ậ khác null à Xu t ấ thông báo ngày l p ậ không h p ợ l ệ n u ế vi ph m ạ và thoát kh i ỏ thủ t c. ụ § Ki m ể tra s d ố > ư 100000 VND à Xu t ấ thông báo s d ố k ư hông h p ợ l và ệ thoát kh i ỏ thủ t c n ụ u ế vi ph m. ạ § Ki m ể tra trạng thái ph i ả thu c ộ trong t p
ậ {đang dùng, đã khóa, b h ị y} ủ à N u ế vi phạm xu t
ấ thông báo và thoát kh i ỏ th t ủ c. ụ § Th c ự hi n ệ c p ậ nh t ậ thông tin m i ớ . 4 Bài t p ậ v ề nhà Lư c ợ đồ CSDL: Bộ môn Hệ th n
ố g thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 7 lOMoARcPSD|46342985
Bài 1: Hãy cài đ t ặ các giao tác sau 1. Thêm công vi c ệ Input: thông tin công vi c ệ
Output: 0 – Thêm thành công. 1 – Thêm không thành công - Ki m ể tra thông tin nh p ậ không đư c ợ r n ỗ g. - Ki m ể tra thông tin nh p ậ t n ồ t i ạ . - Ki m ể tra ngày b t ắ đ u ầ công vi c ệ ph i ả sau ngày b t ắ đ u ầ đ ề tài và trư c ớ ngày k t ế thúc đ ề tài. - Thêm công vi c ệ m i ớ 2. Cập nh t ậ công vi c ệ Input: thông tin công vi c ệ Output: 0 – C p ậ nh t ậ thành công. 1 – C p ậ nh t ậ không thành công lOMoARcPSD|46342985 - Ki m ể tra thông tin nh p ậ không đư c ợ r n ỗ g. - Ki m ể tra thông tin nh p ậ t n ồ t i ạ . - Ki m ể tra ngày b t ắ đ u ầ công vi c ệ ph i ả sau ngày b t ắ đ u ầ đ ề tài và trư c ớ ngày k t ế thúc đ ề tài. - Thông tin ngoài khóa ph i ả có thay đ i ổ v i ớ thông tin ban đ u ầ - Cập nh t ậ thông tin 3. Xóa công vi c ệ Input: Khóa trong b n ả g công vi c ệ
Output: 0 – Xóa thành công. 1 – Xóa không thành công - Ki m ể tra khóa t n ồ t i ạ - Ki m ể tra công vi c ệ ch a ư đư c ợ phân công - Xóa công vi c ệ . - Ki m ể tra đ
ề tài không còn công vi c ệ nào thì xóa đ ề tài đó. 4. Thêm đ ề tài Input: thông tin đ ề tài
Output: 0 – Thêm thành công. 1 – Thêm không thành công - Ki m ể tra thông tin nh p ậ không đư c ợ r n ỗ g. - Ki m ể tra thông tin nh p ậ h p ợ l . ệ - Ki m ể tra thông tin đ u ầ vào t n ồ t i ạ . - GVCNTDT phải là trư n ở g b ộ môn h c ọ trư n ở g khoa. - Cấp quản lí cao h n ơ thì kinh phí cho đ ề tài ph i ả cao h n ơ . - Thêm đ ề tài 5. Cập nh t ậ đ ề tài Input: thông tin đ ề tài Output: 0 – C p ậ nh t ậ thành công. 1 – C p ậ nh t ậ không thành công - Ki m ể tra thông tin nh p ậ không đư c ợ r n ỗ g. - Ki m ể tra thông tin nh p ậ h p ợ l . ệ - Ki m ể tra thông tin đ u ầ vào t n ồ t i ạ . - GVCNTDT phải là trư n ở g b ộ môn h c ọ trư n ở g khoa. Bộ môn Hệ th n
ố g thông tin | Khoa CNTT | ĐH KHTN TP HCM | 1/2013 Trang 9 lOMoARcPSD|46342985 - Cấp quản lí cao h n ơ thì kinh phí cho đ ề tài ph i ả cao h n ơ .
- Cấp quản lí ch ỉđư c ợ nâng lên không đư c ợ h ạ xu n ố g. - Cập nh t ậ đ ề tài 6. Xóa đ ề tài Input: Mã đề tài
Output: 0 – Xóa thành công. 1 – Xóa không thành công - Ki m ể tra mã đ ề tài t n ồ t i ạ - Ki m ể tra đ ề tài ch a ư có tham gia. - Ki m ể tra đ ề tài ch a ư k t ế thúc. - Xóa đ ề tài
Bài 2: Hãy mô tả và cài đ t ặ các giao tác sau 1. Thêm ngư i ờ thân 2. Thêm giáo viên 3. Cập nh t ậ trư n ở g b ộ môn 4. Cập nh t ậ ch ủ nhi m ệ đề tài 5. Thêm tham gia đ ề tài 6. Cập nh t ậ tham gia đ ề tài 7. Xóa tham gia đ ề tài c a ủ giáo viên H T