Đối với những hệ thống lớn có nhiều người truy cập cùng lúc thì việc cùng truy cập và thay đổi một dữ liệu nào đó có thể diễn ra trong cùng một thời điểm, dẫn đến việc sai sót trong các giao tác của người dùng khi truy cập cùng lúc. Ví dụ: như có 2 người cùng vào một bảng trong DB, trong lúc người này đang select để lấy dữ liệu thì người kia đã update mất dữ liệu đó dẫn đến người select kia lấy dữ liệu đã ko còn chính xác rất nhiều cái. | GIAO DỊCH Mục tiêu Kiến thức cần có để học chương này Tài liệu tham khảo liên quan đến chương Nội dung KHÁI NIỆM TRẠNG THÁI GIAO DỊCH THựC THI TÍNH NGUYÊN TỬ VÀ TÍNH BỀN VỮNG CÁC THỰC HIỆN CẠNH TRANH TÍNH KHẢ TUẦN Tự TÍNH KHẢ PHỤC HỒI THựC THI CÔ LẬP ĐỊNH NGHĨA GIAO DỊCH TRONG SQL KIỂM THỬ TÍNH KHẢ TUẦN TỰ Vấn đề nghiên cứu của chương kế tiếp KHÁI NIỆM Một giao dịch là một đơn vị thực hiện chương trình truy xuất và có thể cập nhật nhiều hạng mục dữ liệu. Một giao dịch thường là kết quả của sự thực hiện một chương trình người dùng được viết trong một ngôn ngữ thao tác dữ liệu mức cao hoặc một ngôn ngữ lập trình SQL COBOL PASCAL . và được phân cách bởi các cau lệnh hoặc các lời gọi hàm có dạng begin transaction và end transaction. Giao dịch bao gồm tất cả các hoạt động được thực hiện giữa begin và end transaction. Để đảm bảo tính toàn vẹn của dữ liệu ta yêu cầu hệ CSDL duy trì các tính chất sau của giao dịch Tính nguyên tử Atomicity . Hoặc toàn bộ các hoạt động của giao dịch được phản ánh đúng đắn trong CSDL hoặc không có gì cả. Tính nhất quán consistency . Sự thực hiện của một giao dịch là cô lập Không có giao dịch khác thực hiện đồng thời để bảo tồn tính nhất quán của CSDL. Tính cô lập Isolation . Cho dù nhiều giao dịch có thể thực hiện đồng thời hệ thống phải đảm bảo rằng đối với mỗi cặp giao dịch Ti Tj hoặc Tj kết thúc thực hiện trước khi Ti khởi động hoặc Tj bắt đầu sự thực hiện sau khi Ti kết thúc. Như vậy mỗi giao dịch không cần biết đến các giao dịch khác đang thực hiện đồng thời trong hệ thống. Tính bền vững Durability . Sau một giao dịch hoàn thành thành công các thay đổi đã được tạo ra đối với CSDL vẫn còn ngay cả khi xảy ra sự cố hệ thống. Các tính chất này thường được gọi là các tính chất ACID Các chữ cái đầu của bốn tính chất . Ta xét một ví dụ Một hệ thống nhà băng gồm một số tài khoản và một tập các giao dịch truy xuất và cập nhật các tài khoản. Tại thời điểm hiện tại ta giả thiết rằng CSDL nằm trên .