Trong tỷ lệ kèo bóng đá tối nay thủ tục được gọi bởigọi
lệnh cũng như trong tỷ lệ kèo bóng đá tối nay khối mã ẩn danh (do
Lệnh), có thể kết thúc các tỷ lệ kèo bóng đá tối nay bằng các lệnhcam kết
vàrollback
. Một tỷ lệ kèo bóng đá tối nay mới được bắt đầu tự động sau khi kết thúc tỷ lệ kèo bóng đá tối nay bằng cách sử dụng các lệnh này, do đó không có riêng biệtBắt đầu tỷ lệ kèo bóng đá tối nay
lệnh. (Lưu ý rằngbắt đầu
vàkết thúc
Có ý nghĩa khác nhau trong PL/PGSQL.)
Đây là một ví dụ đơn giản:
Tạo quy trình tỷ lệ kèo bóng đá tối nay dịch_test1 () Ngôn ngữ plpgsql Như $$ BẮT ĐẦU Cho tôi trong 0..9 vòng lặp Chèn vào các giá trị test1 (a) (i); Nếu i % 2 = 0 thì LÀM; KHÁC Rollback; Kết thúc nếu; Kết thúc vòng lặp; KẾT THÚC; $$; Gọi tỷ lệ kèo bóng đá tối nay dịch_test1 ();
Một tỷ lệ kèo bóng đá tối nay mới bắt đầu với các đặc điểm tỷ lệ kèo bóng đá tối nay mặc định như mức cách ly tỷ lệ kèo bóng đá tối nay. Trong trường hợp các tỷ lệ kèo bóng đá tối nay được cam kết trong một vòng lặp, có thể tự động bắt đầu các tỷ lệ kèo bóng đá tối nay mới với các đặc điểm giống như các đặc điểm trước. Các lệnhcam kết và chuỗi
vàrollback và chuỗi
thực hiện điều này.
Điều khiển tỷ lệ kèo bóng đá tối nay chỉ có thể trong9380_9386
hoặcdo
Những lời mời từ cấp cao nhất hoặc lồng nhaugọi
hoặcdo
Những lời mời mà không có bất kỳ lệnh can thiệp nào khác. Ví dụ: nếu ngăn xếp cuộc gọi làgọi Proc1 ()
→Gọi Proc2 ()
→gọi Proc3 ()
, sau đó các thủ tục thứ hai và thứ ba có thể thực hiện các hành động kiểm soát tỷ lệ kèo bóng đá tối nay. Nhưng nếu ngăn xếp cuộc gọi làGọi Proc1 ()
→Chọn func2 ()
→gọi Proc3 ()
, thì thủ tục cuối cùng không thể thực hiện kiểm soát tỷ lệ kèo bóng đá tối nay, vìChọn
ở giữa.
PL/PGSQLKhông hỗ trợ SavePoints (SavePoint
/rollback to savePoint
/Phát hành SavePoint
lệnh). tỷ lệ kèo bóng đá tối nay mẫu sử dụng điển hình cho tỷ lệ kèo bóng đá tối nay điểm lưu có thể được thay thế bằng tỷ lệ kèo bóng đá tối nay khối bằng trình xử lý ngoại lệ (xemPhần 41.6.8). Dưới mui xe, một khối có trình xử lý ngoại lệ tạo thành một phép trừ, điều đó có nghĩa là các tỷ lệ kèo bóng đá tối nay không thể kết thúc bên trong một khối như vậy.
Cân nhắc đặc biệt áp dụng cho tỷ lệ kèo bóng đá tối nay vòng lặp con trỏ. Xem xét ví dụ này:
10820_11070
Thông thường, con trỏ được tự động đóng khi cam kết tỷ lệ kèo bóng đá tối nay. Tuy nhiên, một con trỏ được tạo ra như một phần của vòng lặp như thế này được tự động chuyển đổi thành con trỏ có thể giữ được bởi đầu tiêncam kết
hoặcrollback
. Điều đó có nghĩa là con trỏ được đánh giá đầy đủ ở lần đầu tiêncam kết
hoặcrollback
thay vì hàng từng hàng. Con trỏ vẫn được gỡ bỏ tự động sau vòng lặp, vì vậy điều này chủ yếu là vô hình đối với người dùng. Nhưng người ta phải nhớ rằng bất kỳ khóa bảng hoặc hàng nào được thực hiện bởi truy vấn của con trỏ sẽ không còn được giữ sau lần đầu tiêncam kết
hoặcrollback
.
Các lệnh tỷ lệ kèo bóng đá tối nay không được phép trong các vòng lặp con trỏ được điều khiển bởi các lệnh không chỉ đọc (ví dụCập nhật ... Trả lại
).
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 khớ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ày13276_13340