Cách sử dụng giao dịch trong SQL

Lưu trữ cơ sở dữ liệu giúp lưu trữ hồ sơ doanh nghiệp của bạn hiệu quả và thuận tiện trên máy chủ. Khi bản ghi của bạn mở rộng và thay đổi, bạn có thể thêm và xóa các bảng trong cơ sở dữ liệu bằng Ngôn ngữ truy vấn có cấu trúc hoặc SQL. Sai lầm có thể xảy ra, và vô tình làm rơi bàn có thể làm mất thời gian và tài nguyên kinh doanh của bạn. Sử dụng các giao dịch khi truy vấn cơ sở dữ liệu của bạn cung cấp một điểm khôi phục cho công việc của bạn trong trường hợp có vấn đề phát sinh. Các giao dịch nhóm một loạt các câu lệnh SQL thành một đơn vị nguyên tử.

1.

Nhấp vào nút Bắt đầu và nhập vào cm cmd trong trường Tìm kiếm. Trong cửa sổ lệnh, nhập tên chương trình máy khách SQL của bạn để kết nối với máy chủ của bạn. Tùy thuộc vào chương trình bạn sử dụng, bạn có thể cần truyền đối số cho chương trình của mình từ dòng lệnh. Ví dụ: nếu bạn đang sử dụng MySQL, hãy nhập lệnh sau:

mysql -u root -p mysql

Nhập mật khẩu của bạn khi được nhắc.

2.

Bắt đầu một giao dịch ẩn danh với từ khóa BEGIN TRANSACTION như trong đoạn mã sau:

BEGIN GIAO DỊCH; CẬP NHẬT TÀI KHOẢN TÀI KHOẢN chi phí = chi phí + 1, 25 Ở ĐÂU tên THÍCH 'light%';

Nếu bạn đang sử dụng MySQL, hãy thay thế BẮT ĐẦU BẮT ĐẦU bằng BẮT ĐẦU, Thay thế như sau:

GIAO DỊCH BẮT ĐẦU;

3.

Thực thi toàn bộ khối mã bằng cách sử dụng các từ khóa CAM KẾT LÀM VIỆC hoặc GIAO DỊCH GIAO DỊCH. Hoàn tác giao dịch bằng cách sử dụng các từ khóa ROLLBACK WORK hoặc ROLLBACK TRANSACTION. Chấm dứt lệnh bằng dấu chấm phẩy như trong dòng sau:

CÔNG VIỆC ROLLBACK;

4.

Bắt đầu một giao dịch được đặt tên bằng cách thêm tên biến vào cuối câu lệnh giao dịch như trong đoạn mã sau:

BEGIN GIAO DỊCH t1; TẠO sách BẢNG CHỌN id, tiêu đề TỪ nguồn cung cấp; BEGIN GIAO DỊCH t2; Cung cấp DROP BẢNG; GIAO DỊCH CAM KẾT t1;

Cam kết hoặc khôi phục giao dịch bằng cách chỉ định tên biến bạn đã sử dụng để bắt đầu giao dịch.

Lời khuyên

  • Nếu bạn đang sử dụng Microsoft SQL Server, hãy tạo điểm khôi phục trong giao dịch bằng cách thêm câu lệnh TIẾT KIỆM GIAO DỊCH. Ví dụ: thêm dòng sau vào giao dịch:
  • TIẾT KIỆM GIAO DỊCH GIAO DỊCH1;
  • Sau này trong công việc của bạn, hãy sử dụng các câu lệnh có điều kiện để hoàn tác hoặc áp dụng các thay đổi như trong ví dụ sau:
  • NẾU @@ TRANCOUNT = 0
  • CAM KẾT GIAO DỊCH GIAO DỊCH1;
  • Máy chủ SQL tự động tăng biến số @ @ TRANCOUNT khi bạn bắt đầu các giao dịch được đặt tên.

Bài ViếT Phổ BiếN