mảng_nulls
(Boolean
)Điều này kiểm soát xem trình phân tích cú pháp đầu vào mảng có nhận ra chưa được trích xuấtnull
như chỉ định một phần tử mảng null. Theo mặc định, đây làtrên
, cho phép các giá trị mảng chứa các giá trị null được nhập. Tuy nhiên,PostgreSQLcách đọc kèo bóng đá trước 8.2 không hỗ trợ các giá trị null trong các mảng và do đó sẽ xử lýnull
Khi chỉ định một phần tử mảng bình thường với giá trị chuỗiHồinull12151_12259TẮT
.
Lưu ý rằng có thể tạo các giá trị mảng chứa các giá trị null ngay cả khi biến này làTẮT
.
Backslash_quote
(enum
) Điều này kiểm soát xem có thể biểu diễn dấu hiệu báo giá bằng\ '
Trong một chuỗi theo nghĩa đen. Cách được ưu tiên, theo tiêu chuẩn SQL để biểu diễn một dấu trích là bằng cách nhân đôi nó (''
) NhưngPostgreSQLTrong lịch sử cũng đã chấp nhận\ '
. Tuy nhiên, sử dụng\ '
13129_13292\
. Nếu mã phía máy khách thoát ra không chính xác thì có thể tấn công tiêm SQL. Rủi ro này có thể được ngăn chặn bằng cách làm cho các truy vấn từ chối máy chủ trong đó một dấu trích dẫn dường như được thoát khỏi dấu gạch chéo ngược. Các giá trị được phép củaBackslash_quote
làtrên
(cho phép\ '
13673_13685TẮT
(từ chối luôn luôn) vàan toàn_encoding
(Chỉ cho phép nếu mã hóa máy khách không cho phép ASCII\
Trong một ký tự multibyte).an toàn_encoding
là cài đặt mặc định.
Lưu ý rằng trong một chuỗi hình thành tiêu chuẩn,\
chỉ có nghĩa là\
Dù sao. Tham số này chỉ ảnh hưởng đến việc xử lý các chữ viết không theo tiêu chuẩn, bao gồm cả cú pháp chuỗi thoát (E '...'
).
default_with_oids
(Boolean
)Điều này kiểm soát xemTạo bảng
vàTạo bảng dưới dạng
Bao gồm một cột OID trong các bảng mới được tạo, nếu khôngvới oids
Norkhông có oids
được chỉ định. Nó cũng xác định liệu OIDS sẽ được bao gồm trong các bảng được tạo bởiChọn vào
. Tham số làTẮT
Theo mặc định; TRONGPostgreSQL8.0 và sớm hơn, đó làtrên
Theo mặc định.
Việc sử dụng OID trong các bảng người dùng được coi là không dùng nữa, vì vậy hầu hết các cài đặt nên để lại biến này bị tắt. Các ứng dụng yêu cầu OID cho một bảng cụ thể nên chỉ địnhvới oids
Khi tạo bảng. Biến này có thể được bật để tương cách đọc kèo bóng đá với các ứng dụng cũ không tuân theo hành vi này.
ESTECT_STRING_WARNING
(Boolean
) Khi bật, cảnh báo được đưa ra nếu dấu gạch chéo ngược (\
) xuất hiện trong một chuỗi thông thường theo nghĩa đen ('...'
Cú pháp) vàStandard_Conforming_Strings
bị tắt. Mặc định làtrên
.
Các ứng dụng muốn sử dụng Backslash làm lối thoát nên được sửa đổi để sử dụng cú pháp chuỗi thoát (E '...'
), bởi vì hành vi mặc định của các chuỗi thông thường hiện là coi dấu gạch chéo ngược là một ký tự thông thường, theo tiêu chuẩn SQL. Biến này có thể được bật để giúp định vị mã cần thay đổi.
LO_COMPAT_PRIVILEGES
(Boolean
)inPostgreSQLPhát hành trước 9.0, các đối tượng lớn không có đặc quyền truy cập và do đó, luôn có thể đọc được và ghi bởi tất cả người dùng. Đặt biến này thànhtrên
Vô hiệu hóa các kiểm tra đặc quyền mới, để tương cách đọc kèo bóng đá với các bản phát hành trước. Mặc định làTẮT
. Chỉ các siêu người dùng mới có thể thay đổi cài đặt này.
Đặt biến này không vô hiệu hóa tất cả các kiểm tra bảo mật liên quan đến các đối tượng lớn - chỉ những đối tượng mà hành vi mặc định đã thay đổi trongPostgreSQL9.0. Ví dụ,lo_import ()
vàlo_export ()
Cần các đặc quyền của siêu người dùng bất kể cài đặt này.
17454_17483
(Boolean
)Khi bật, trình phân tích cú pháp sẽ phát ra cảnh báo cho bất kỳ cấu trúc nào có thể đã thay đổi ý nghĩa kể từPostgreSQL9.4 do kết quả của những thay đổi trong việc ưu tiên toán tử. Điều này rất hữu ích cho các ứng dụng kiểm toán để xem liệu thay đổi ưu tiên có bị hỏng gì không; Nhưng nó không có nghĩa là được bật trong sản xuất, vì nó sẽ cảnh báo về một số mã SQL hoàn toàn hợp lệ, tuân thủ tiêu chuẩn. Mặc định làTẮT
.
xemPhần 4.1.6Để biết thêm thông tin.
quote_all_identifiers
(Boolean
)Khi cơ sở dữ liệu tạo SQL, buộc tất cả các định danh được trích dẫn, ngay cả khi chúng không (hiện tại) từ khóa. Điều này sẽ ảnh hưởng đến đầu ra củaGiải cách đọc kèo bóng đá
cũng như kết quả của các chức năng nhưPG_GET_VIEWDEF
. Xem thêm--Quote-all-Identifiers
Tùy chọnpg_dumpvàpg_dumpall.
Standard_Conforming_Strings
(Boolean
) Điều này kiểm soát xem các chuỗi chuỗi thông thường ('...'
) Xử lý các dấu gạch chéo ngược theo nghĩa đen, như được chỉ định trong tiêu chuẩn SQL. Bắt đầu trongPostgreSQL9.1, mặc định làtrên
(Các bản phát hành trước được mặc định làTẮT
). Các ứng dụng có thể kiểm tra tham số này để xác định cách xử lý các chuỗi chuỗi. Sự hiện diện của tham số này cũng có thể được coi là một dấu hiệu cho thấy cú pháp chuỗi thoát (E '...'
) được hỗ trợ. Chuỗi thoát cú pháp (Phần 4.1.2.2) nên được sử dụng nếu một ứng dụng mong muốn các dấu gạch chéo ngược được coi là ký tự thoát.
synchronize_seqscans
(Boolean
)Điều này cho phép các lần quét tuần tự của các bảng lớn đồng bộ hóa với nhau, để các lần quét đồng thời đọc cùng một khối cùng một lúc và do đó chia sẻ khối lượng công việc I/O. Khi điều này được bật, quét có thể bắt đầu ở giữa bảng và sau đóHồibọc xung quanhKết thúc để che tất cả các hàng, để đồng bộ hóa với hoạt động của các lần quét đã được tiến hành. Điều này có thể dẫn đến những thay đổi không thể đoán trước trong đơn đặt hàng hàng được trả về bởi các truy vấn không cóĐặt hàng bởi
mệnh đề. Đặt tham số này thànhTẮT
Đảm bảo hành vi trước 8.3 trong đó quét tuần tự luôn bắt đầu từ đầu bảng. Mặc định làtrên
.
Transform_null_equals
(Boolean
) 21888_21923
(hoặcexpr
= NULLnull =
) được coi làexpr
, nghĩa là, họ trả về đúng nếuexpr
là nullexpr
Đánh giá giá trị null và sai. Hành vi tuân thủ SQL-spec chính xác của
22443_22519expr
= NULLTẮT
.
Tuy nhiên, các biểu mẫu được lọc trongMicrosoft AccessTạo các truy vấn xuất hiện để sử dụng
Để kiểm tra các giá trị null, vì vậy nếu bạn sử dụng giao diện đó để truy cập cơ sở dữ liệu, bạn có thể muốn bật tùy chọn này. Vì biểu thức của biểu mẫuexpr
= NULL
Luôn trả về giá trị null (sử dụng giải cách đọc kèo bóng đá tiêu chuẩn SQL), chúng không hữu ích lắm và không xuất hiện thường xuyên trong các ứng dụng thông thường nên tùy chọn này ít gây hại trong thực tế. Nhưng người dùng mới thường bị nhầm lẫn về ngữ nghĩa của các biểu thức liên quan đến các giá trị null, vì vậy tùy chọn này bị tắt theo mặc định.expr
= NULL
Lưu ý rằng tùy chọn này chỉ ảnh hưởng đến mẫu chính xác= NULL
, không phải các toán tử so sánh khác hoặc các biểu thức khác tương đương với một số biểu thức liên quan đến toán tử bằng (nhưin
). Do đó, tùy chọn này không phải là một bản sửa lỗi chung cho lập trình xấu.
Tham khảoPhần 9.2Để biết thông tin liên quan.