Phiên bản được hỗ trợ:hiện tại(17)16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

Chuẩn bị kèo bóng đá cúp c2

Chuẩn bị kèo bóng đá cúp c2-Chuẩn bị kèo bóng đá cúp c2 hiện tại cho cam kết hai pha

Synopsis

10383_10406Giao dịch_id

Mô tả

Chuẩn bị kèo bóng đá cúp c2Chuẩn bị kèo bóng đá cúp c2 hiện tại cho cam kết hai pha. Sau lệnh này, kèo bóng đá cúp c2 không còn được liên kết với phiên hiện tại;

Sau khi chuẩn bị, một kèo bóng đá cúp c2 sau này có thể được thực hiện hoặc quay lại vớikèo bóng đá cúp c2: Tài liệu:hoặcPostgreSQL: Tài liệu: 11:, tương ứng. Các lệnh đó có thể được cấp từ bất kỳ phiên nào, không chỉ là lệnh thực hiện kèo bóng đá cúp c2 ban đầu.

Từ quan điểm của phiên phát hành,Chuẩn bị kèo bóng đá cúp c2không giống nhưrollbackLệnh: Sau khi thực hiện nó, không có kèo bóng đá cúp c2 hiện tại hoạt động và các tác động của kèo bóng đá cúp c2 đã chuẩn bị không còn hiển thị nữa. (Các hiệu ứng sẽ được hiển thị một lần nữa nếu kèo bóng đá cúp c2 được thực hiện.)

NếuChuẩn bị kèo bóng đá cúp c2Lệnh thất bại vì bất kỳ lý do gì, nó trở thànhrollback: kèo bóng đá cúp c2 hiện tại bị hủy.

tham số

Giao dịch_id

Một định danh tùy ý mà sau này xác định kèo bóng đá cúp c2 này chocam kết đã kèo bóng đá cúp c2 bịhoặckèo bóng đá cúp c2 bị rollback. Mã định danh phải được viết dưới dạng chuỗi theo nghĩa đen và phải dài hơn 200 byte.

Ghi chú

Chuẩn bị kèo bóng đá cúp c2không được sử dụng trong các ứng dụng hoặc phiên tương tác. Mục đích của nó là cho phép Trình quản lý kèo bóng đá cúp c2 bên ngoài thực hiện các kèo bóng đá cúp c2 toàn cầu nguyên tử trên nhiều cơ sở dữ liệu hoặc các tài nguyên kèo bóng đá cúp c2 khác.Chuẩn bị kèo bóng đá cúp c2.

Lệnh này phải được sử dụng bên trong một khối kèo bóng đá cúp c2. Sử dụngBắt đầuĐể bắt đầu một.

Hiện không được phépkèo bóng đá cúp c2 bịMột kèo bóng đá cúp c2 đã thực hiện bất kỳ hoạt động nào liên quan đến bảng tạm thời hoặc không gian tên tạm thời của phiên, đã tạo ra bất kỳ con trỏ nàovới giữhoặc được thực hiệnnghe, UnlistenhoặcThông báo. Những tính năng đó quá chặt chẽ với phiên hiện tại để hữu ích trong một kèo bóng đá cúp c2 được chuẩn bị.

Nếu kèo bóng đá cúp c2 đã sửa đổi bất kỳ tham số thời gian chạy nào vớiset(không cócục bộTùy chọn), những hiệu ứng đó vẫn tồn tại sauChuẩn bị kèo bóng đá cúp c2và sẽ không bị ảnh hưởng bởi bất kỳ sau nàyCam kết đã kèo bóng đá cúp c2 bịhoặckèo bóng đá cúp c2 bị rollback. Do đó, trong một khía cạnh nàyChuẩn bị kèo bóng đá cúp c2hoạt động giống nhưcam kếthơnrollback.

Tất cả các kèo bóng đá cúp c2 đã chuẩn bị hiện có được liệt kê trongpg_prepared_xactsChế độ xem hệ thống.

THẬN TRỌNG

Không khôn ngoan khi để các kèo bóng đá cúp c2 ở trạng thái đã chuẩn bị trong một thời gian dài. Điều này sẽ can thiệp vào khả năng củaNút hútĐể đòi lại lưu trữ và trong các trường hợp cực đoan có thể khiến cơ sở dữ liệu tắt để ngăn chặn sự bao bọc của ID kèo bóng đá cúp c2 (xemPhần 24.1.5). Hãy nhớ rằng kèo bóng đá cúp c2 tiếp tục giữ bất kỳ khóa nào mà nó giữ.

Nếu bạn chưa thiết lập Trình quản lý kèo bóng đá cúp c2 bên ngoài để theo dõi các kèo bóng đá cúp c2 đã chuẩn bị và đảm bảo họ sẽ bị đóng ngay lập tức, tốt nhất là giữ cho tính năng chuyển đổi được chuẩn bị bị vô hiệu hóa bằng cách cài đặtMAX_PREPARED_TRANSACTIONSđến 0. Điều này sẽ ngăn chặn việc tạo ra các kèo bóng đá cúp c2 đã chuẩn bị mà sau đó có thể bị lãng quên và cuối cùng gây ra vấn đề.

ví dụ

Chuẩn bị kèo bóng đá cúp c2 hiện tại cho cam kết hai pha, sử dụngFoobarLà định danh kèo bóng đá cúp c2:

Chuẩn bị kèo bóng đá cúp c2 'Foobar';

Tương thích

Chuẩn bị kèo bóng đá cúp c2là mộtPostgreSQLPhần mở rộng. Nó được sử dụng để sử dụng bởi các hệ thống quản lý kèo bóng đá cúp c2 bên ngoài, một số trong đó được bao phủ bởi các tiêu chuẩn (như X/Open XA), nhưng phía SQL của các hệ thống đó không được chuẩn hóa.