Đặt soi kèo bóng đá truoctranGiao dịch_mode[, ...]
Đặt ảnh chụp nhanh soi kèo bóng đá truoctransnapshot_idĐặt các đặc điểm phiên làm soi kèo bóng đá truoctranGiao dịch_mode[, ...]WHEREGiao dịch_modelà một trong:Cấp độ cô lập serializable | Đọc lặp lại | Đọc cam kết | Đọc không được cam kết
Đọc viết | Chỉ đọc
[Không] có thể bảo vệ
TheĐặt soi kèo bóng đá truoctranLệnh đặt các đặc điểm của soi kèo bóng đá truoctran hiện tại. Nó không có tác dụng đối với bất kỳ soi kèo bóng đá truoctran tiếp theo nào.Đặt đặc điểm phiênĐặt các đặc điểm soi kèo bóng đá truoctran mặc định cho các soi kèo bóng đá truoctran tiếp theo của phiên. Các mặc định này có thể được ghi đè bởiĐặt soi kèo bóng đá truoctranĐối với một soi kèo bóng đá truoctran riêng lẻ.
11947_12215
Mức cách cô lập của một soi kèo bóng đá truoctran xác định dữ liệu nào soi kèo bóng đá truoctran có thể thấy khi các soi kèo bóng đá truoctran khác đang chạy đồng thời:
Một câu lệnh chỉ có thể thấy các hàng được thực hiện trước khi nó bắt đầu. Đây là mặc định.
Tất cả các báo cáo của soi kèo bóng đá truoctran hiện tại chỉ có thể thấy các hàng được thực hiện trước khi câu lệnh truy vấn hoặc sửa đổi dữ liệu đầu tiên được thực hiện trong soi kèo bóng đá truoctran này.
Tất cả các báo cáo của soi kèo bóng đá truoctran hiện tại chỉ có thể thấy các hàng được thực hiện trước khi câu lệnh truy vấn hoặc sửa đổi dữ liệu đầu tiên được thực hiện trong soi kèo bóng đá truoctran này. Nếu một mô hình đọc và ghi giữa các soi kèo bóng đá truoctran có thể nối tiếp đồng thời sẽ tạo ra một tình huống không thể xảy ra đối với bất kỳ hoạt động nối tiếp (một lần) của các soi kèo bóng đá truoctran đó, một trong số chúng sẽ được quay lại bằng mộtserialization_failureLỗi.
Tiêu chuẩn SQL xác định một cấp độ bổ sung,Đọc không được cam kết. TRONGPostgreSQL Đọc không được cam kếtđược coi làĐọc cam kết.
Không thể thay đổi mức độ cô lập soi kèo bóng đá truoctran sau câu lệnh truy vấn hoặc sửa đổi dữ liệu đầu tiên (Chọn, Chèn, Xóa, Cập nhật, FetchhoặcCopy) của một soi kèo bóng đá truoctran đã được thực thi. Nhìn thấyChương 13Để biết thêm thông tin về việc cô lập soi kèo bóng đá truoctran và kiểm soát đồng thời.
Chế độ truy cập soi kèo bóng đá truoctran xác định xem soi kèo bóng đá truoctran được đọc/ghi hay chỉ đọc. Đọc/Viết là mặc định. Khi một soi kèo bóng đá truoctran chỉ đọc, các lệnh SQL sau đây không được phép:Chèn, Cập nhật, XóavàSao chép từNếu bảng họ sẽ viết cho không phải là một bảng tạm thời; tất cảTạo, Altervàthảlệnh;bình luận, Grant, thu hồi, cắt ngắn; VàGiải thích Phân tíchvàthực thiNếu lệnh họ sẽ thực thi nằm trong số những người được liệt kê. Đây là một khái niệm cấp cao về chỉ đọc không ngăn chặn tất cả các ghi vào đĩa.
The14877_14889Thuộc tính soi kèo bóng đá truoctran không có hiệu lực trừ khi soi kèo bóng đá truoctran cũng làserializablevàChỉ đọc15035_15230serializablesoi kèo bóng đá truoctran và không có bất kỳ rủi ro nào đóng góp hoặc bị hủy do lỗi tuần tự hóa. Chế độ này rất phù hợp cho các báo cáo hoặc bản sao lưu dài.
TheĐặt ảnh chụp nhanh soi kèo bóng đá truoctranLệnh cho phép một soi kèo bóng đá truoctran mới chạy với cùng mộtSnapshotnhư một soi kèo bóng đá truoctran hiện có. soi kèo bóng đá truoctran đã tồn tại phải xuất khẩu ảnh chụp nhanh vớipg_export_snapshotHàm (xemPhần 9.26.5). Chức năng đó trả về một định danh ảnh chụp nhanh, phải được trao choĐặt ảnh chụp soi kèo bóng đá truoctran15935_16063'000003A1-1'. Đặt ảnh chụp nhanh soi kèo bóng đá truoctranChỉ có thể được thực thi khi bắt đầu soi kèo bóng đá truoctran, trước câu lệnh truy vấn hoặc sửa đổi dữ liệu đầu tiên (Chọn, Chèn, Xóa, Cập nhật, FetchhoặcCopy) của soi kèo bóng đá truoctran. Hơn nữa, soi kèo bóng đá truoctran phải được đặt thànhserializablehoặcĐọc lặp lạiCấp độ cô lập (nếu không, ảnh chụp nhanh sẽ bị loại bỏ ngay lập tức, vìĐọc cam kếtChế độ có một ảnh chụp nhanh mới cho mỗi lệnh). Nếu soi kèo bóng đá truoctran nhập sử dụngserializableMức cách ly, sau đó soi kèo bóng đá truoctran xuất khẩu ảnh chụp cũng phải sử dụng mức cách cô lập đó. Ngoài ra, một soi kèo bóng đá truoctran không thể đọc không chỉ đọc không thể nhập ảnh chụp nhanh từ soi kèo bóng đá truoctran chỉ đọc.
nếuĐặt soi kèo bóng đá truoctranđược thực thi mà không có trướcBắt đầu soi kèo bóng đá truoctranhoặcbắt đầu, nó phát ra cảnh báo và nếu không thì không có hiệu lực.
Có thể phân phối vớiĐặt soi kèo bóng đá truoctranThay vào đó, chỉ cần chỉ định mong muốnGiao dịch_modesinbắt đầuhoặcBắt đầu soi kèo bóng đá truoctran. Nhưng tùy chọn đó không có sẵn choĐặt ảnh chụp nhanh soi kèo bóng đá truoctran.
Các chế độ soi kèo bóng đá truoctran mặc định phiên cũng có thể được đặt bằng cách đặt tham số cấu hìnhdefault_transaction_isolation, default_transaction_read_onlyvàdefault_transaction_deferrable. (Trong thực tếĐặt đặc điểm phiênchỉ là một dòng tương đương để đặt các biến này vớiset.) Điều này có nghĩa là mặc định có thể được đặt trong tệp cấu hình, thông quathay đổi cơ sở dữ liệu, v.v. Tham khảoChương 18Để biết thêm thông tin.
Để bắt đầu một soi kèo bóng đá truoctran mới với ảnh chụp nhanh như một soi kèo bóng đá truoctran đã có, trước tiên xuất khẩu ảnh chụp nhanh từ soi kèo bóng đá truoctran hiện có. Điều đó sẽ trả về định danh ảnh chụp nhanh, ví dụ:
Bắt đầu phân lập soi kèo bóng đá truoctran lần đọc lặp lại; Chọn pg_export_snapshot (); pg_export_snapshot -------------------- 000003A1-1 (1 hàng)
Sau đó đưa ra định danh ảnh chụp nhanh trong AĐặt ảnh chụp nhanh soi kèo bóng đá truoctranLệnh ở đầu soi kèo bóng đá truoctran mới được mở:
Bắt đầu mức độ cô lập mức độ lặp lại; Đặt Snapshot soi kèo bóng đá truoctran '000003A1-1';
Các lệnh này được xác định trongSQLtiêu chuẩn, ngoại trừcó thể hoãn lạiChế độ soi kèo bóng đá truoctran vàĐặt ảnh chụp soi kèo bóng đá truoctranMẫu, đó làPostgreSQLPhần mở rộng.
serializablelà mức cách ly soi kèo bóng đá truoctran mặc định trong tiêu chuẩn. TRONGPostgreSQLMặc định thường làĐọc cam kết, nhưng bạn có thể thay đổi nó như đã đề cập ở trên.
19855_20077PostgreSQLMáy chủ.
Tiêu chuẩn SQL yêu cầu dấu phẩy giữa liên tiếpGiao dịch_Modes, nhưng vì lý do lịch sửPostgreSQLCho phép dấu phẩy bị bỏ qua.