Tôi đang cố gắng tạo một giao dịch trong MySql sẽ quay trở lại khi ngoại lệ xảy ra trong giao dịch. Tương tự bằng cách sử dụng sau đây trong một thủ tục được lưu trữ.MySQL Script với rollback trên lỗi
DECLARE EXIT HANDLER FOR SQLEXCEPTION ROLLBACK;
Điều này có thể được thực hiện mà không cần viết quy trình được lưu trữ không? Ví dụ: đoạn mã sau sẽ cuộn lại chèn đầu tiên vì chèn thứ hai sẽ không thành công.
START TRANSACTION;
INSERT INTO mytable VALUE 'foo1',2,'foo3','foo4'
INSERT INTO mytable VALUE 'foo1','foo2','foo3','foo4'
COMMIT
Bạn đang sử dụng PHP? Vì điều này có thể đạt được ở phía lập trình. –
Không có PHP chỉ SQL. Tôi có thể thực hiện trong Java nhưng yêu cầu chỉ yêu cầu tập lệnh SQL. – Damien
Tại sao bạn không sử dụng quy trình được lưu trữ? –