.Nhắc lại Nhắc lại kiến thức lập trình với TSQL: Khái niệm về bó lệnh (Batch) và tiến trình xử lý Batch, Biến | Bài 3 Transaction và Lock Nhắc lại Nhắc lại kiến thức lập trình với T-SQL: Khái niệm về bó lệnh (Batch) và tiến trình xử lý Batch Biến Các hàm cơ bản của SQL Server Mục tiêu Nắm được khái niệm giao dịch (transaction) Nắm được các khái niệm về thuộc tính, phân loại, tính riêng biệt và mức độ riêng biệt của giao dịch Sử dụng các khái niệm về transaction để thực thi giao dịch SQL Transaction và tập lệnh (batch) Nắm được các khái niệm khóa (lock) và khóa chết (deadlock) Giải quyết các deadlock bằng cách đặt mức độ ưu tiên cho các transaction Giới thiệu Một transaction hoặc là sẽ thực hiện thành công hoàn toàn hoặc là sẽ không thay đổi một chút dữ liệu nào Giao dịch (Transaction) là một đơn vị công việc Các thuộc tính Transaction Tính hoàn chỉnh (Atomicity) Tính nhất quán (Consistency) Tính riêng biệt (Isolation) Tín bền vững (Durability) Phân loại Transaction Giao dịch tường minh (Explicit transaction) Giao dịch ngầm định (Implicit transaction) Giao dịch xác nhận (Commit transaction) . | Bài 3 Transaction và Lock Nhắc lại Nhắc lại kiến thức lập trình với T-SQL: Khái niệm về bó lệnh (Batch) và tiến trình xử lý Batch Biến Các hàm cơ bản của SQL Server Mục tiêu Nắm được khái niệm giao dịch (transaction) Nắm được các khái niệm về thuộc tính, phân loại, tính riêng biệt và mức độ riêng biệt của giao dịch Sử dụng các khái niệm về transaction để thực thi giao dịch SQL Transaction và tập lệnh (batch) Nắm được các khái niệm khóa (lock) và khóa chết (deadlock) Giải quyết các deadlock bằng cách đặt mức độ ưu tiên cho các transaction Giới thiệu Một transaction hoặc là sẽ thực hiện thành công hoàn toàn hoặc là sẽ không thay đổi một chút dữ liệu nào Giao dịch (Transaction) là một đơn vị công việc Các thuộc tính Transaction Tính hoàn chỉnh (Atomicity) Tính nhất quán (Consistency) Tính riêng biệt (Isolation) Tín bền vững (Durability) Phân loại Transaction Giao dịch tường minh (Explicit transaction) Giao dịch ngầm định (Implicit transaction) Giao dịch xác nhận (Commit transaction) Transaction Isolation và Isolation Levels Read Uncommitted Read Committed Repeatable read Serializable Sử dụng Transaction Log Nhật ký giao dịch (Transaction log) là một File riêng biệt (hoặc lưu ở vùng đĩa riêng) ở trong database server nó lưu trữ dấu vết thực hiện của các thao tác Bằng cách lưu trữ dấu vết thực hiện trong têp nhật ký (log), database server dễ dàng khôi phục lại dữ liệu khi gặp sự cố Transaction log đảm bảo tính hoàn chỉnh và tính bền vững SQL Server viết tất cả các thay đổi trên CSDL xuống transaction log, vì vậy nếu transaction đã bắt đầu nhưng chưa chạy xong, chúng ta vẫn có thể phục hồi lại tất cả các thay đổi từ file log Transaction với T-SQL BEGIN TRANSACTION COMMIT TRANSACTION ROLLBACK TRANSACTION SAVE TRANSACTION Locks Khóa (Lock) được sinh ra để giới hạn quyền truy nhập trên môi trường đa người dùng Microsoft SQL Server 2000 sử dụng lock để đảm bảo tính toàn vẹn của transaction và tính thống nhất của database Nếu lock không được sử dụng, dữ liệu bên trong CSDL có