11
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
http://www.facebook.com/groups/hoclaptrinhweb/
22
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
http://www.facebook.com/groups/hoclaptrinhweb/
Thực thi các hoạt động xử lý theo
quan điểm giao tác (Transaction)
1.Giao tác là gì?
2.Xử lý đối với Local Transaction
3.Xử lý đối với Distributed Transaction
4.Các cấp độ cô lập (Isolation Level)
33
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
http://www.facebook.com/groups/hoclaptrinhweb/
1. Giao tác là gì?
•
Giao tác được xem như một công việc (không
thể phân chia thêm nữa)
•
Giao tác được xem là thành công khi tất cả
các thao tác thực hiện thành công
•
Giao tác được xem là thất bại khi chỉ cần một
thao tác thất bại
•
.NET Framework hỗ trợ các loại giao tác
−
•
B4: Thực hiện Command
•
B5: Chấm dứt Transaction với
Commit/Rollback
66
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
http://www.facebook.com/groups/hoclaptrinhweb/
Các Transaction trong .NET
•
System.Data.SqlClient.SqlTransaction
•
System.Data.OleDbClient.OleDbTransaction
•
System.Data.Odbc.OdbcTransaction
•
System.Data.OracleClient.OracleTransaction
77
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
http://www.facebook.com/groups/hoclaptrinhweb/
3. Xử lý với Distributed Transaction
•
B1: Tạo đối tượng TransactionScope
•
B2: Mở các Connection
•
B3: Tạo và thực hiện các Command
•
T2 có thể đọc thấy dữ liệu chưa được Commit
của T1
1010
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
http://www.facebook.com/groups/hoclaptrinhweb/
Lỗi Non-repeatable read
•
T1 đang đọc dữ liệu đã được Commit
•
T2 có thể cập nhật dữ liệu này
•
T1 đọc lại và thấy có sự thay đổi
1111
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
http://www.facebook.com/groups/hoclaptrinhweb/
Lỗi Phantom read
•
T1 đang đọc dữ liệu đã được Commit và dữ
liệu được đọc theo các điều kiện
•
T2 có thể cập nhật dữ liệu liên quan đến các
điều kiện
•
T1 đọc lại và thấy có sự thay đổi
1212
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
http://www.facebook.com/groups/hoclaptrinhweb/