Trong một quy trình được gọi từ cấp cao nhất hoặc một khối mã ẩn danh (do
Lệnh) được gọi từ cấp cao nhất có thể kiểm soát các giao dịch. Để thực hiện giao dịch hiện tại, hãy gọiplpy.commit ()
. Để quay lại giao dịch hiện tại, hãy gọiplpy.rollback ()
. (Lưu ý rằng không thể chạy các lệnh SQLcam kết
hoặcrollback
Viaplpy.execute
hoặc tương tự. Nó phải được thực hiện bằng cách sử dụng các chức năng này.) Sau khi kết thúc giao dịch, một giao dịch mới được tự động bắt đầu, do đó không có chức năng riêng cho điều đó.
Đây là một ví dụ:
Tạo quy trình giao dịch_test1 () Ngôn ngữ plpython3u Như $$ Đối với tôi trong phạm vi (0, 10): plpy.execute ("Chèn vào các giá trị Test1 (a) ( % d)" % i) Nếu i % 2 == 0: plpy.commit () khác: plpy.rollback () $$; Gọi giao dịch_test1 ();
Giao dịch không thể kết thúc khi Subtransaction rõ ràng đang hoạt động.
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không phù hợp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.