Phiên bản được hỗ trợ:hiện tại(17)16/15/14/13
Phiên bản phát triển:Devel
Phiên bản kèo bóng đá hôm nay và ngày mai đượ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/8.0/7.4/7.3/7.2/7.1
Tài liệu này dành cho phiên bản kèo bóng đá hôm nay và ngày mai được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng kèo bóng đá hôm nay và ngày mai trang chohiện tạiPhiên bản hoặc một trong kèo bóng đá hôm nay và ngày mai phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

32.3. Chức năng thực thi kèo bóng đá hôm nay và ngày mai

Sau khi kết nối với máy chủ cơ sở dữ liệu đã được thiết lập thành công, các chức năng được mô tả ở đây được sử dụng để thực hiện các truy vấn và kèo bóng đá hôm nay và ngày mai SQL.

32.3.1. Chức năng chính

PQEXEC

gửi kèo bóng đá hôm nay và ngày mai lên máy chủ và chờ kết quả.

PGRESULT *PQEXEC (PGCONN *Conn, Const Char *Command);

Trả về APGRESULTCon trỏ hoặc có thể là một con trỏ null. Một con trỏ không null thường sẽ được trả về ngoại trừ trong các điều kiện ngoài bộ nhớ hoặc các lỗi nghiêm trọng như không có khả năng gửi kèo bóng đá hôm nay và ngày mai đến máy chủ.PQResultstatusHàm nên được gọi để kiểm tra giá trị trả về cho bất kỳ lỗi nào (bao gồm giá trị của con trỏ null, trong trường hợp đó nó sẽ trả vềPGRES_FATAL_ERROR). Sử dụngpqerrormessageĐể biết thêm thông tin về kèo bóng đá hôm nay và ngày mai lỗi đó.

Chuỗi kèo bóng đá hôm nay và ngày mai có thể bao gồm nhiều kèo bóng đá hôm nay và ngày mai SQL (được phân tách bằng dấu chấm phẩy). Nhiều truy vấn được gửi trong mộtPQEXECcuộc gọi được xử lý trong kèo bóng đá hôm nay và ngày mai giao dịch, trừ khi có rõ ràngbắt đầu/cam kếtCác kèo bóng đá hôm nay và ngày mai được bao gồm trong chuỗi truy vấn để chia nó thành nhiều giao dịch. Tuy nhiên, lưu ý rằng đã trả vềpgresultCấu trúc chỉ mô tả kết quả của kèo bóng đá hôm nay và ngày mai cuối cùng được thực thi từ chuỗi. Nếu một trong các kèo bóng đá hôm nay và ngày mai không thành công, việc xử lý chuỗi dừng lại với nó và đã trả vềpgresultMô tả tình trạng lỗi.

PQExecParams

gửi kèo bóng đá hôm nay và ngày mai lên máy chủ và chờ kết quả, với khả năng truyền các tham số riêng biệt với văn bản kèo bóng đá hôm nay và ngày mai SQL.

PGRESULT *PQEXECPARAMS (PGConn *Conn,

PQExecParamsgiống nhưPQEXEC, nhưng cung cấp chức năng bổ sung: Các giá trị tham số có thể được chỉ định riêng biệt với chuỗi kèo bóng đá hôm nay và ngày mai thích hợp và kết quả truy vấn có thể được yêu cầu ở định dạng văn bản hoặc nhị phân.PQExecparams​​chỉ được hỗ trợ trong giao thức 3.0 và kèo bóng đá hôm nay và ngày mai kết nối sau đó; nó sẽ thất bại khi sử dụng giao thức 2.0.

kèo bóng đá hôm nay và ngày mai đối số chức năng là:

Conn

Đối tượng kết nối để gửi kèo bóng đá hôm nay và ngày mai qua.

kèo bóng đá hôm nay và ngày mai

Chuỗi kèo bóng đá hôm nay và ngày mai SQL được thực thi. Nếu các tham số được sử dụng, chúng được gọi trong chuỗi kèo bóng đá hôm nay và ngày mai là$ 1,$ 2, v.v.

nparams

Số lượng tham số được cung cấp; nó là độ dài của kèo bóng đá hôm nay và ngày mai mảngparamtypes [],paramValues ​​[],paramlength []paramformats []. (Con trỏ mảng có thể lànullKhinparamsbằng kèo bóng đá hôm nay và ngày mai.)

paramtypes []

Chỉ định, bởi OID, kèo bóng đá hôm nay và ngày mai loại dữ liệu được gán cho kèo bóng đá hôm nay và ngày mai ký hiệu tham số. Nếu nhưparamtypesnullhoặc bất kỳ phần tử cụ thể nào trong mảng bằng kèo bóng đá hôm nay và ngày mai, máy chủ in một kiểu dữ liệu cho ký hiệu tham số giống như cách nó sẽ làm cho một chuỗi chữ chưa được xác định.

paramValues ​​[]

Chỉ định kèo bóng đá hôm nay và ngày mai giá trị thực của kèo bóng đá hôm nay và ngày mai tham số. Một con trỏ null trong mảng này có nghĩa là tham số tương ứng là null;

paramlength []

Chỉ định độ dài dữ liệu thực tế của kèo bóng đá hôm nay và ngày mai tham số định dạng nhị phân. Nó bị bỏ qua cho kèo bóng đá hôm nay và ngày mai tham số null và kèo bóng đá hôm nay và ngày mai tham số định dạng văn bản.

paramformats []

Chỉ định xem các tham số có phải là văn bản hay kèo bóng đá hôm nay và ngày mai (đặt số 0 trong mục mảng cho tham số tương ứng) hoặc nhị phân (đặt một trong một mục nhập mảng cho tham số tương ứng). Nếu con trỏ mảng là null thì tất cả các tham số được coi là chuỗi văn bản.

Giá trị được truyền ở định dạng nhị phân đòi hỏi kiến ​​thức về biểu diễn nội bộ được dự kiến ​​bởi phần phụ trợ. Ví dụ, kèo bóng đá hôm nay và ngày mai số nguyên phải được thông qua theo thứ tự byte mạng.SốGiá trị yêu cầu kiến ​​thức về định dạng lưu trữ máy chủ, như được triển khai trongsrc/backend/utils/adt/numeric.c :: numeric_send ()src/backend/utils/adt/numeric.c :: numeric_recv ().

resultFormat

Chỉ định số 0 để có được kết quả ở định dạng văn bản hoặc một để có được kết quả ở định dạng nhị phân. (Hiện tại kèo bóng đá hôm nay và ngày mai có điều khoản nào để có được các cột kết quả khác nhau ở các định dạng khác nhau, mặc dù điều đó là có thể trong giao thức cơ bản.)

Ưu điểm chính củaPQExecParamsOverPQEXEC16506_16648

kèo bóng đá hôm nay và ngày mai giống nhưPQEXEC,PQExecParamsCho phép nhiều nhất một kèo bóng đá hôm nay và ngày mai SQL trong chuỗi đã cho. .

Tip:Chỉ định các loại tham số thông qua OID là tẻ nhạt, đặc biệt nếu bạn kèo bóng đá hôm nay và ngày mai thích các giá trị OID đặc biệt cứng vào chương trình của bạn. Tuy nhiên, bạn có thể tránh làm như vậy ngay cả trong trường hợp máy chủ tự nó kèo bóng đá hôm nay và ngày mai thể xác định loại tham số hoặc chọn một loại khác với bạn muốn.

Chọn * Từ MyTable WHERE X = $ 1 :: Bigint;

Tham số lực lượng này$ 1được coi làBigint, trong khi theo mặc định, nó sẽ được gán cùng loại vớiX. Buộc quyết định loại tham số, theo cách này hoặc bằng cách chỉ định loại OID số, ​​được khuyến nghị mạnh mẽ khi gửi các giá trị tham số ở định dạng nhị phân, bởi vì định dạng nhị phân có ít dự phòng hơn định dạng văn bản và do đó ít có khả năng máy chủ sẽ phát hiện ra lỗi kèo bóng đá hôm nay và ngày mai khớp loại cho bạn.

PQPrepare

Đệ trình yêu cầu tạo câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị với các tham số đã cho và chờ hoàn thành.

pgresult *pqprepare (pgconn *Conn,

PQPrepareTạo một câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị để thực hiện sau vớiPQEXECPREPARED. Tính năng này cho phép các kèo bóng đá hôm nay và ngày mai được thực thi nhiều lần mà không bị phân tích cú pháp và được lên kế hoạch mỗi lần;Chuẩn bịĐể biết chi tiết.PQPreparechỉ được hỗ trợ trong giao thức 3.0 trở lên kèo bóng đá hôm nay và ngày mai kết nối sau đó; nó sẽ thất bại khi sử dụng giao thức 2.0.

Hàm tạo ra một câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị có tênstmtnametừTruy vấnChuỗi, phải chứa một kèo bóng đá hôm nay và ngày mai SQL duy nhất.stmtnamecó thể""Để tạo ra một tuyên bố không tên, trong trường hợp đó, bất kỳ câu kèo bóng đá hôm nay và ngày mai chưa được đặt tên nào có sẵn được tự động thay thế; Nếu không thì đó là một lỗi nếu tên câu kèo bóng đá hôm nay và ngày mai đã được xác định trong phiên hiện tại.$ 1,$ 2, v.v.nparamslà số lượng tham số mà kèo bóng đá hôm nay và ngày mai loại được chỉ định trước trong mảngparamtypes []. (Con trỏ mảng có thể lànullkhinparamsbằng kèo bóng đá hôm nay và ngày mai.)paramtypes []Chỉ định, bởi OID, kèo bóng đá hôm nay và ngày mai loại dữ liệu được gán cho kèo bóng đá hôm nay và ngày mai ký hiệu tham số. Nếu nhưparamtypesnullhoặc bất kỳ phần tử cụ thể nào trong mảng bằng kèo bóng đá hôm nay và ngày mai, máy chủ gán một loại dữ liệu cho ký hiệu tham số theo cùng một cách nó sẽ làm cho một chuỗi theo nghĩa đen chưa được. Ngoài ra, truy vấn có thể sử dụng các ký hiệu tham số có số cao hơnnparams; kèo bóng đá hôm nay và ngày mai loại dữ liệu cũng sẽ được suy ra cho kèo bóng đá hôm nay và ngày mai biểu tượng này.Đối với kèo bóng đá hôm nay và ngày mai phương tiện để tìm hiểu loại dữ liệu nào đã được suy ra.)

như vớiPQEXEC, Kết quả thường làpgresultĐối tượng có nội dung biểu thị thành công hoặc thất bại phía máy chủ. Một kết quả null chỉ ra bộ nhớ ngoài hoặc không có khả năng gửi kèo bóng đá hôm nay và ngày mai.pqerrormessageĐể biết thêm thông tin về kèo bóng đá hôm nay và ngày mai lỗi đó.

Câu kèo bóng đá hôm nay và ngày mai được chuẩn bị để sử dụng vớiPQEXECPREPAREDcũng có thể được tạo bằng cách thực thi SQLChuẩn bịCâu kèo bóng đá hôm nay và ngày mai. Ngoài ra, mặc dù không cólibpqHàm xóa câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị, SQLDealLocateCâu kèo bóng đá hôm nay và ngày mai có thể được sử dụng cho mục đích đó.

PQEXECPREPARED

Gửi yêu cầu thực thi câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị với các tham số đã cho và chờ kết quả.

PGRESULT *PQEXECPREPARED (PGConn *Conn,

PQEXECPREPAREDgiống nhưPQExecParams, nhưng kèo bóng đá hôm nay và ngày mai sẽ được thực thi được chỉ định bằng cách đặt tên một câu kèo bóng đá hôm nay và ngày mai được chuẩn bị trước đó, thay vì đưa ra một chuỗi truy vấn. Tính năng này cho phép các kèo bóng đá hôm nay và ngày mai sẽ được sử dụng nhiều lần để được phân tích cú pháp và được lên kế hoạch chỉ một lần, thay vì mỗi lần chúng được thực thi.PQEXECPREPAREDchỉ được hỗ trợ trong giao thức 3.0 và kèo bóng đá hôm nay và ngày mai kết nối sau; nó sẽ thất bại khi sử dụng giao thức 2.0.

kèo bóng đá hôm nay và ngày mai tham số giống hệt vớiPQExecParams, ngoại trừ tên của câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị được đưa ra thay vì chuỗi truy vấn vàparamtypes []tham số không có mặt (không cần thiết vì các loại tham số của câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị được xác định khi nó được tạo).

Đệ trình yêu cầu lấy thông tin về câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị được chỉ định và chờ hoàn thành.

PGRESULT *

Cho phép một ứng dụng lấy thông tin về câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị trước đó.chỉ được hỗ trợ trong giao thức 3.0 trở lên kèo bóng đá hôm nay và ngày mai kết nối sau; nó sẽ thất bại khi sử dụng giao thức 2.0.

STMTNAMEcó thể""hoặcnullĐể tham khảo câu kèo bóng đá hôm nay và ngày mai không được đặt tên, nếu không nó phải là tên của một câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị hiện có. Về thành công, APGRESULTvới trạng tháiPGRES_COMMAND_OKđược trả về. kèo bóng đá hôm nay và ngày mai chức năngpqnparamsPQParamTypecó thể được áp dụng cho điều nàyPGRESULTĐể có được thông tin về các tham số của câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị và các hàmPQNFields,PQFNAME,PQFTYPE, v.v. cung cấp thông tin về các cột kết quả (nếu có) của câu kèo bóng đá hôm nay và ngày mai.

PQDescriptePortal

Đệ trình yêu cầu lấy thông tin về cổng thông tin được chỉ định và chờ hoàn thành.

24351_24418

PQDescriptePortalCho phép kèo bóng đá hôm nay và ngày mai ứng dụng lấy thông tin về cổng thông tin được tạo trước đó. (libpqkèo bóng đá hôm nay và ngày mai cung cấp bất kỳ quyền truy cập trực tiếp nào vào các cổng, nhưng bạn có thể sử dụng chức năng này để kiểm tra các thuộc tính của con trỏ được tạo bằngTuyên bố con trỏkèo bóng đá hôm nay và ngày mai SQL.)PQDescriptePortalchỉ được hỗ trợ trong giao thức 3.0 và kèo bóng đá hôm nay và ngày mai kết nối sau; nó sẽ thất bại khi sử dụng giao thức 2.0.

PortalNamecó thể""hoặcnullĐể tham khảo cổng thông tin kèo bóng đá hôm nay và ngày mai tên, nếu kèo bóng đá hôm nay và ngày mai nó phải là tên của một cổng thông tin hiện có. Về thành công, Apgresultvới trạng tháiPGRES_COMMAND_OKđược trả về. kèo bóng đá hôm nay và ngày mai chức năngPQNFields,pqfname,PQFTYPE, ETC có thể được áp dụng chopgresultĐể có được thông tin về kèo bóng đá hôm nay và ngày mai cột kết quả (nếu có) của cổng thông tin.

ThepgresultCấu trúc đóng gói kết quả được trả về bởi máy chủ.libpqLập trình viên ứng dụng nên cẩn thận để duy trìpgresultTrừu tượng. Sử dụng kèo bóng đá hôm nay và ngày mai chức năng của người phụ kiện bên dưới để có được nội dung củapgresult. Tránh trực tiếp tham chiếu kèo bóng đá hôm nay và ngày mai trường củaPGRESULTCấu trúc vì chúng có thể thay đổi trong tương lai.

PQResultstatus

Trả về trạng thái kết quả của kèo bóng đá hôm nay và ngày mai.

26239_26292

PQResultstatusCó thể trả về một trong kèo bóng đá hôm nay và ngày mai giá trị sau:

pgres_empty_query

Chuỗi được gửi đến máy chủ trống.

PGRES_COMMAND_OK

Hoàn thành thành công kèo bóng đá hôm nay và ngày mai trả về không có dữ liệu.

PGRES_TUDS_OK

Hoàn thành thành công dữ liệu trả về kèo bóng đá hôm nay và ngày mai (chẳng hạn như AChọnhoặcshow).

PGRES_COPY_OUT

Sao chép lại (từ máy chủ)

PGRES_COPY_IN

Sao chép trong (sang máy chủ) bắt đầu truyền dữ liệu.

pgres_bad_response

Phản hồi của máy chủ kèo bóng đá hôm nay và ngày mai được hiểu.

PGRES_NONFATAL_ERROR

Một lỗi kèo bóng đá hôm nay và ngày mai sinh (thông báo hoặc cảnh báo) đã xảy ra.

PGRES_FATAL_ERROR

Đã xảy ra lỗi nghiêm trọng.

PGRES_COPY_BOTH

Sao chép vào/ra (đến và từ máy chủ) Truyền dữ liệu. Tính năng này hiện chỉ được sử dụng để sao chép phát trực tuyến, vì vậy trạng thái này kèo bóng đá hôm nay và ngày mai nên xảy ra trong các ứng dụng thông thường.

pgres_single_tuple

Thepgresultchứa một kết quả duy nhất từ ​​kèo bóng đá hôm nay và ngày mai hiện tại. Trạng thái này chỉ xảy ra khi chế độ hàng đơn đã được chọn cho truy vấn (xemPhần 32.5).

Nếu trạng thái kết quả làPGRES_TUDS_OKhoặcpgres_single_tuple, sau đó kèo bóng đá hôm nay và ngày mai hàm được mô tả dưới đây có thể được sử dụng để truy xuất kèo bóng đá hôm nay và ngày mai hàng được trả về bởi truy vấn. Lưu ý rằng AChọnkèo bóng đá hôm nay và ngày mai xảy ra để truy xuất các hàng không vẫn hiển thịPGRES_TUDS_OK.PGRES_COMMAND_OKdành cho các kèo bóng đá hôm nay và ngày mai không bao giờ có thể trả lại hàng (ChènhoặcCập nhậtkèo bóng đá hôm nay và ngày mai cóTrở vềmệnh đề, v.v.). kèo bóng đá hôm nay và ngày mai phản hồi củapgres_empty_queryCó thể chỉ ra lỗi trong phần mềm máy khách.

Kết quả của trạng tháiPGRES_NONFATAL_ERRORSẽ kèo bóng đá hôm nay và ngày mai bao giờ được trả về trực tiếp bởiPQEXEChoặc kèo bóng đá hôm nay và ngày mai chức năng thực thi truy vấn khác; Kết quả của loại này thay vào đó được chuyển cho bộ xử lý thông báo (xemPhần 32.12).

pqresstatus

Chuyển đổi loại được liệt kê được trả về bởiPQResultstatusthành một hằng số chuỗi mô tả mã trạng thái. Người gọi kèo bóng đá hôm nay và ngày mai nên giải phóng kết quả.

29919_29962
pqresulterrormessage

Trả về thông báo lỗi được liên kết với kèo bóng đá hôm nay và ngày mai hoặc một chuỗi trống nếu không có lỗi.

char *pqresulterrormessage (const pgresult *res);

Nếu có lỗi, chuỗi được trả về sẽ bao gồm một dòng mới. Người gọi kèo bóng đá hôm nay và ngày mai nên giải phóng kết quả trực tiếp.PGRESULTXử lý được chuyển choPQClear.

ngay sau APQEXEChoặcPQGetResultCALL,pqerrormessage(trên kết nối) sẽ trả về cùng chuỗi vớipqresulterrormessage(về kết quả). Tuy nhiên, APGRESULTsẽ giữ lại thông báo lỗi cho đến khi bị phá hủy, trong khi thông báo lỗi của kết nối sẽ thay đổi khi kèo bóng đá hôm nay và ngày mai hoạt động tiếp theo được thực hiện. Sử dụngpqresulterrormessageKhi bạn muốn biết trạng thái được liên kết với kèo bóng đá hôm nay và ngày mai cụ thểPGRESULT; sử dụngpqerrormessageKhi bạn muốn biết trạng thái từ thao tác mới nhất trên kết nối.

pqresultverboseerrormessage

Trả về kèo bóng đá hôm nay và ngày mai phiên bản được định dạng lại của thông báo lỗi được liên kết với ApgresultĐối tượng.

Char *pqresultverboseerrormessage (const pgresult *res,

Trong kèo bóng đá hôm nay và ngày mai số tình huống, khách hàng có thể muốn có được phiên bản chi tiết hơn của lỗi được báo cáo trước đó.pqresultverboseerrormessageĐịa chỉ nhu cầu này bằng cách tính toán thông điệp sẽ được tạo bởipqresulterrormessageNếu kèo bóng đá hôm nay và ngày mai cài đặt độ âm được chỉ định có hiệu lực cho kết nối khi đã choPGRESULTđã được tạo. Nếupgresultkèo bóng đá hôm nay và ngày mai phải là kết quả lỗi,"PGResult kèo bóng đá hôm nay và ngày mai phải là kết quả lỗi"được báo cáo thay thế. Chuỗi được trả về bao gồm kèo bóng đá hôm nay và ngày mai dòng mới.

kèo bóng đá hôm nay và ngày mai giống như hầu hết các chức năng khác để trích xuất dữ liệu từ Apgresult, kết quả của hàm này là kèo bóng đá hôm nay và ngày mai chuỗi mới được phân bổ. Người gọi phải giải phóng nó bằng cách sử dụngpqfreemem ()Khi chuỗi kèo bóng đá hôm nay và ngày mai còn cần thiết.

Có thể trả lại null nếu kèo bóng đá hôm nay và ngày mai có đủ bộ nhớ.

pqresulterrorfield

Trả về kèo bóng đá hôm nay và ngày mai trường riêng lẻ của báo cáo lỗi.

char *pqresulterrorfield (const pgresult *res, int fieldCode);

FieldCodelà một định danh trường lỗi; Xem kèo bóng đá hôm nay và ngày mai biểu tượng được liệt kê bên dưới.nullđược trả về nếuPGRESULTkèo bóng đá hôm nay và ngày mai phải là lỗi hoặc kết quả cảnh báo hoặc kèo bóng đá hôm nay và ngày mai bao gồm trường được chỉ định. Giá trị trường thường sẽ kèo bóng đá hôm nay và ngày mai bao gồm một dòng mới.PGRESULTXử lý được chuyển choPQClear.

Mã trường sau đây có sẵn:

pg_diag_severity

Mức độ nghiêm trọng; Nội dung trường làERROR,FatalhoặcPanic(trong kèo bóng đá hôm nay và ngày mai thông báo lỗi) hoặcCảnh báo,Thông báo,DEBUG,INFOhoặclog(trong kèo bóng đá hôm nay và ngày mai thông báo thông báo) hoặc bản dịch cục bộ của kèo bóng đá hôm nay và ngày mai trong số này. Luôn luôn có mặt.

pg_diag_severity_nonlocalized

Mức độ nghiêm trọng; Nội dung trường làERROR,FatalhoặcPanic(trong kèo bóng đá hôm nay và ngày mai thông báo lỗi) hoặccảnh báo,Thông báo,DEBUG,INFOhoặclog(Trong kèo bóng đá hôm nay và ngày mai thông báo thông báo). Điều này giống hệt vớipg_diag_severityTrường ngoại trừ các nội dung kèo bóng đá hôm nay và ngày mai bao giờ được bản địa hóa. Điều này chỉ có trong các báo cáo được tạo bởiPostgreSQLPhiên bản 9.6 trở lên.

PG_DIAG_SQLSTATE

Mã SQLSTATE cho lỗi. Mã SQLSTATE xác định loại lỗi đã xảy ra;Phụ lục A. Trường này kèo bóng đá hôm nay và ngày mai thể bản địa hóa và luôn có mặt.

pg_diag_message_primary

Thông báo lỗi có thể đọc được chính của con người (thường là kèo bóng đá hôm nay và ngày mai dòng). Luôn luôn có mặt.

PG_DIAG_MESSAGE_DETAIL

Chi tiết: Thông báo lỗi thứ cấp tùy chọn mang thêm chi tiết về vấn đề. Có thể chạy đến nhiều dòng.

PG_DIAG_MESSAGE_HINT

Gợi ý: Một đề xuất tùy chọn phải làm gì về vấn đề. Điều này nhằm khác với chi tiết ở chỗ nó cung cấp lời khuyên (có khả năng kèo bóng đá hôm nay và ngày mai phù hợp) thay vì sự thật khó khăn.

pg_diag_statement_poseition

Một chuỗi chứa số nguyên thập phân cho biết vị trí con trỏ lỗi làm chỉ mục vào chuỗi câu kèo bóng đá hôm nay và ngày mai gốc. Ký tự đầu tiên có chỉ số 1 và các vị trí được đo bằng các ký tự không phải byte.

Điều này được xác định giống nhưpg_diag_statement_poseitionTrường, nhưng nó được sử dụng khi vị trí con trỏ đề cập đến một kèo bóng đá hôm nay và ngày mai được tạo bên trong thay vì kèo bóng đá hôm nay và ngày mai được gửi bởi máy khách. ThePG_DIAG_INTERNAL_QUERYTrường sẽ luôn xuất hiện khi trường này xuất hiện.

PG_DIAG_INTERNAL_QUERY

Văn bản của một kèo bóng đá hôm nay và ngày mai không thành công trong nội bộ. Ví dụ, đây có thể là một truy vấn SQL do chức năng PL/PGSQL phát hành.

PG_DIAG_CONTEXT

Một dấu hiệu của bối cảnh xảy ra lỗi. Hiện tại điều này bao gồm một dấu vết Call Stack của kèo bóng đá hôm nay và ngày mai chức năng ngôn ngữ thủ tục hoạt động và kèo bóng đá hôm nay và ngày mai truy vấn được tạo trong nội bộ.

pg_diag_schema_name

Nếu lỗi được liên kết với kèo bóng đá hôm nay và ngày mai đối tượng cơ sở dữ liệu cụ thể, tên của lược đồ chứa đối tượng đó, nếu có.

PG_DIAG_TABLE_NAME

Nếu lỗi được liên kết với kèo bóng đá hôm nay và ngày mai bảng cụ thể, tên của bảng. (Tham khảo trường Tên lược đồ cho tên của lược đồ bảng.)

PG_DIAG_COLUMN_NAME

Nếu lỗi được liên kết với một cột bảng cụ thể, tên của cột. (Tham khảo Lược đồ và kèo bóng đá hôm nay và ngày mai trường tên bảng để xác định bảng.)

pg_diag_datatype_name

Nếu lỗi được liên kết với kèo bóng đá hôm nay và ngày mai loại dữ liệu cụ thể, tên của kiểu dữ liệu. (Tham khảo trường Tên lược đồ cho tên của lược đồ loại dữ liệu.)

pg_diag_constraint_name

Nếu lỗi được liên kết với một ràng buộc cụ thể, tên của ràng buộc. Tham khảo kèo bóng đá hôm nay và ngày mai trường được liệt kê ở trên cho bảng hoặc miền liên quan.

PG_DIAG_SOURCE_FILE

Tên tệp của vị trí mã nguồn nơi báo cáo lỗi.

pg_diag_source_line

Số dòng của vị trí mã nguồn nơi báo cáo lỗi.

PG_DIAG_SOURCE_FUNCTION

Tên của chức năng mã nguồn Báo cáo lỗi.

Lưu ý:kèo bóng đá hôm nay và ngày mai trường cho tên lược đồ, tên bảng, tên cột, tên loại dữ liệu và tên ràng buộc chỉ được cung cấp cho một số loại lỗi hạn chế; nhìn thấyPhụ lục A. kèo bóng đá hôm nay và ngày mai cho rằng sự hiện diện của bất kỳ trường nào trong số này đảm bảo sự hiện diện của trường khác.

Khách hàng chịu trách nhiệm định dạng thông tin hiển thị để đáp ứng nhu cầu của nó; Đặc biệt nó nên phá vỡ kèo bóng đá hôm nay và ngày mai hàng dài khi cần thiết.

Lỗi được tạo bên tronglibpqsẽ có mức độ nghiêm trọng và thông điệp chính, nhưng thường kèo bóng đá hôm nay và ngày mai có trường nào khác. Lỗi được trả về bởi máy chủ Pre-3.0 Protocol sẽ bao gồm mức độ nghiêm trọng và tin nhắn chính và đôi khi là một thông báo chi tiết, nhưng kèo bóng đá hôm nay và ngày mai có trường nào khác.

Lưu ý rằng kèo bóng đá hôm nay và ngày mai trường lỗi chỉ khả dụng từpgresultĐối tượng, kèo bóng đá hôm nay và ngày maiPGConnĐối tượng; kèo bóng đá hôm nay và ngày mai cópqerrorfieldchức năng.

PQClear

Giải phóng bộ nhớ liên kết với Apgresult. Mọi kết quả kèo bóng đá hôm nay và ngày mai phải được giải phóng quaPQClearKhi nó kèo bóng đá hôm nay và ngày mai còn cần thiết nữa.

void pqclear (pgresult *res);

Bạn có thể giữpgresultĐối tượng xung quanh miễn là bạn cần nó; Nó không biến mất khi bạn đưa ra một kèo bóng đá hôm nay và ngày mai mới, cũng như ngay cả khi bạn đóng kết nối.PQClear. kèo bóng đá hôm nay và ngày mai làm điều này sẽ dẫn đến rò rỉ bộ nhớ trong ứng dụng của bạn.

32.3.2. Truy xuất thông tin kết quả truy vấn

kèo bóng đá hôm nay và ngày mai chức năng này được sử dụng để trích xuất thông tin từ ApgresultĐối tượng đại diện cho kết quả truy vấn thành công (nghĩa là, kèo bóng đá hôm nay và ngày mai đối tượng có trạng tháiPGRES_TUDS_OKhoặcpgres_single_tuple). Chúng cũng có thể được sử dụng để trích xuất thông tin từ một hoạt động mô tả thành công: Kết quả của một mô tả có tất cả thông tin cột giống nhau mà việc thực hiện truy vấn thực tế sẽ cung cấp, nhưng nó kèo bóng đá hôm nay và ngày mai có hàng.

PQNTUMPLES

Trả về số lượng hàng (bộ dữ liệu) trong kết quả truy vấn. (Lưu ý rằngPGRESULTĐối tượng bị giới hạn kèo bóng đá hôm nay và ngày mai quáint_maxhàng, vì vậyintKết quả là đủ.)

int pqntuples (const pgresult *res);
PQNFields

Trả về số lượng cột (trường) trong mỗi hàng của kết quả truy vấn.

int pqnfields (const pgresult *res);
pqfname

Trả về tên cột được liên kết với số cột đã cho. Số cột bắt đầu ở 0. Người gọi kèo bóng đá hôm nay và ngày mai được giải phóng trực tiếp kết quả.PGRESULTXử lý được chuyển choPQClear.

char *pqfname (const pgresult *res,

nullđược trả về nếu số cột nằm ngoài phạm vi.

PQFNumber

Trả về số cột được liên kết với tên cột đã cho.

int pqfnumber (const pgresult *res,

-1 được trả về nếu tên đã cho kèo bóng đá hôm nay và ngày mai khớp với bất kỳ cột nào.

Tên đã cho được đối xử như một định danh trong kèo bóng đá hôm nay và ngày mai SQL, nghĩa là nó bị hạ thấp trừ khi được trích dẫn kép. Ví dụ: đưa ra kết quả truy vấn được tạo từ kèo bóng đá hôm nay và ngày mai SQL:

Chọn 1 làm foo, 2 là "thanh";

Chúng tôi sẽ có kết quả:

pqfname (res, 0)foopqfname (res, 1)Barpqfnumber (res, "foo")0pqfnumber (res, "foo")0pqfnumber (res, "bar")-1pqfnumber (res, "\" bar \ "")1
PQFTable

Trả về OID của bảng mà từ đó cột đã cho được lấy. Số cột bắt đầu ở 0.

oid pqftable (const pgresult *res,

kèo bóng đá hôm nay và ngày mai hợp lệđược trả về nếu số cột nằm ngoài phạm vi hoặc nếu cột được chỉ định kèo bóng đá hôm nay và ngày mai phải là tham chiếu đơn giản đến cột bảng hoặc khi sử dụng giao thức Pre-3.0. Bạn có thể truy vấn bảng hệ thốngPG_ClassĐể xác định chính xác bảng nào được tham chiếu.

Loạioidvà hằng sốkèo bóng đá hôm nay và ngày mai hợp lệsẽ được xác định khi bạn bao gồmlibpqTệp tiêu đề. Cả hai sẽ là kèo bóng đá hôm nay và ngày mai loại số nguyên.

pqftablecol

Trả về số cột (trong bảng của nó) của cột tạo thành cột Kết quả truy vấn được chỉ định. Số cột truy vấn-result bắt đầu ở 0, nhưng kèo bóng đá hôm nay và ngày mai cột bảng có số khác.

int pqftablecol (const pgresult *res,

Zero được trả về nếu số cột nằm ngoài phạm vi hoặc nếu cột được chỉ định kèo bóng đá hôm nay và ngày mai phải là tham chiếu đơn giản đến cột bảng hoặc khi sử dụng giao thức Pre-3.0.

PQFFormat

Trả về mã định dạng biểu thị định dạng của cột đã cho. Số cột bắt đầu ở 0.

int pqfformat (const pgresult *res,

Mã định dạng Zero biểu thị biểu diễn dữ liệu văn bản, trong khi mã định dạng một biểu thị nhị phân. (kèo bóng đá hôm nay và ngày mai mã khác được dành cho định nghĩa trong tương lai.)

PQFTYPE

Trả về kiểu dữ liệu được liên kết với số cột đã cho. Số nguyên được trả về là số OID nội bộ của loại.

oid pqfttype (const pgresult *res,

Bạn có thể truy vấn bảng hệ thốngPG_TYPEĐể có được tên và thuộc tính của kèo bóng đá hôm nay và ngày mai loại dữ liệu khác nhau. TheoidS của kèo bóng đá hôm nay và ngày mai loại dữ liệu tích hợp được xác định trong tệpBao gồm/máy chủ/catalog/pg_type.hTrong thư mục cài đặt.

PQFMOD

Trả về bộ sửa đổi loại của cột được liên kết với số cột đã cho. Số cột bắt đầu ở 0.

int pqfmod (const pgresult *res,

Giải thích kèo bóng đá hôm nay và ngày mai giá trị sửa đổi là cụ thể về loại; Chúng thường chỉ ra giới hạn độ chính xác hoặc kích thước."kèo bóng đá hôm nay và ngày mai có thông tin". Hầu hết các loại dữ liệu kèo bóng đá hôm nay và ngày mai sử dụng bộ sửa đổi, trong trường hợp đó, giá trị luôn luôn -1.

PQFSize

Trả về kích thước theo byte của cột được liên kết với số cột đã cho. Số cột bắt đầu ở 0.

int pqfsize (const pgresult *res,

pqfsizeTrả về kèo bóng đá hôm nay và ngày mai gian được phân bổ cho cột này trong một hàng cơ sở dữ liệu, nói cách khác là kích thước của biểu diễn bên trong của máy chủ của kiểu dữ liệu. (Theo đó, nó kèo bóng đá hôm nay và ngày mai thực sự hữu ích cho khách hàng.) Một giá trị âm cho biết loại dữ liệu có độ dài thay đổi.

PQBinaryTuples

Trả về 1 nếupgresultChứa dữ liệu nhị phân và 0 nếu nó chứa dữ liệu văn bản.

int pqbinarytuples (const pgresult *res);

Hàm này kèo bóng đá hôm nay và ngày mai được dùng nữa (ngoại trừ việc sử dụng nó liên quan đếnCopy), bởi vì nó có thể cho kèo bóng đá hôm nay và ngày maiPGRESULTĐể chứa dữ liệu văn bản trong một số cột và dữ liệu nhị phân trong kèo bóng đá hôm nay và ngày mai cột khác.pqfformatđược ưu tiên.PQBinaryTupleschỉ trả về 1 nếu tất cả kèo bóng đá hôm nay và ngày mai cột của kết quả là nhị phân (định dạng 1).

PQGetValue

Trả về kèo bóng đá hôm nay và ngày mai giá trị trường duy nhất của kèo bóng đá hôm nay và ngày mai hàng của APGRESULT. Các số hàng và cột bắt đầu ở 0. Người gọi kèo bóng đá hôm nay và ngày mai được giải phóng trực tiếp kết quả.pgresultTay cầm được chuyển choPQClear.

Char *PQGetValue (const pgresult *res,

Đối với dữ liệu ở định dạng văn bản, giá trị được trả về bởiPQGetValuelà biểu diễn chuỗi ký tự kết thúc của giá trị trường. Đối với dữ liệu ở định dạng nhị phân, giá trị nằm trong biểu diễn nhị phân được xác định bởi kiểu dữ liệuTYPSENDTyPreceivechức năng. .

kèo bóng đá hôm nay và ngày mai chuỗi trống được trả về nếu giá trị trường là null. Nhìn thấyPQGetisNullĐể phân biệt kèo bóng đá hôm nay và ngày mai giá trị null với kèo bóng đá hôm nay và ngày mai giá trị chuỗi trống.

Con trỏ được trả về bởiPQGetValueĐiểm để lưu trữ là kèo bóng đá hôm nay và ngày mai phần củapgresultCấu trúc. Người ta kèo bóng đá hôm nay và ngày mai nên sửa đổi dữ liệu mà nó trỏ đến và người ta phải sao chép rõ ràng dữ liệu vào bộ lưu trữ khác nếu nó được sử dụng qua vòng đời củapgresultCấu trúc chính nó.

PQGetIsNull

Kiểm tra một trường cho giá trị null. kèo bóng đá hôm nay và ngày mai số hàng và cột bắt đầu ở 0.

int pqgetisnull (const pgresult *res,

Hàm này trả về 1 nếu trường là null và 0 nếu nó chứa giá trị kèo bóng đá hôm nay và ngày mai null. (Lưu ý rằngPQGetValueSẽ trả về một chuỗi trống, kèo bóng đá hôm nay và ngày mai phải là một con trỏ null, cho một trường null.)

PQGetLpm

Trả về độ dài thực tế của giá trị trường tính bằng byte. kèo bóng đá hôm nay và ngày mai số hàng và cột bắt đầu ở 0.

int PQGetLpm (const pgresult *res,

Đây là độ dài dữ liệu thực tế cho giá trị dữ liệu cụ thể, nghĩa là kích thước của đối tượng được chỉ ra bởiPQGetValue. Đối với định dạng dữ liệu văn bản, điều này giống nhưstrlen (). Đối với định dạng nhị phân, đây là thông tin cần thiết.kèo bóng đá hôm nay và ngày maidựa vàopqfsizeĐể có được độ dài dữ liệu thực tế.

pqnparams

Trả về số lượng tham số của câu kèo bóng đá hôm nay và ngày mai đã chuẩn bị.

int pqnparams (const pgresult *res);

Hàm này chỉ hữu ích khi kiểm tra kết quả của. Đối với kèo bóng đá hôm nay và ngày mai loại truy vấn khác, nó sẽ trả về 0.

PQParamType

Trả về kiểu dữ liệu của tham số câu kèo bóng đá hôm nay và ngày mai được chỉ định. Số tham số bắt đầu ở 0.

oid pqparamtype (const pgresult *res, int param_number);

Hàm này chỉ hữu ích khi kiểm tra kết quả của. Đối với kèo bóng đá hôm nay và ngày mai loại truy vấn khác, nó sẽ trả về 0.

PQPrint

In ra tất cả kèo bóng đá hôm nay và ngày mai hàng và, tùy chọn, tên cột vào luồng đầu ra được chỉ định.

void pqprint (tệp *fout, / *luồng đầu ra * /

Hàm này trước đây được sử dụng bởiPSQLĐể in kết quả truy vấn, nhưng điều này kèo bóng đá hôm nay và ngày mai còn xảy ra. Lưu ý rằng nó giả sử tất cả dữ liệu ở định dạng văn bản.

32.3.3. Lấy thông tin kết quả khác

kèo bóng đá hôm nay và ngày mai chức năng này được sử dụng để trích xuất thông tin khác từPGRESULTĐối tượng.

PQCMDSTATUS

Trả về thẻ trạng thái kèo bóng đá hôm nay và ngày mai từ kèo bóng đá hôm nay và ngày mai SQL đã tạopgresult.

char *pqcmdstatus (pgresult *res);

Thông thường đây chỉ là tên của kèo bóng đá hôm nay và ngày mai, nhưng nó có thể bao gồm dữ liệu bổ sung như số lượng hàng được xử lý. Người gọi không nên giải phóng kết quả trực tiếp.PGRESULTXử lý được chuyển choPQClear.

PQCMDTUMPLES

Trả về số lượng hàng bị ảnh hưởng bởi kèo bóng đá hôm nay và ngày mai SQL.

char *pqcmdtuples (pgresult *res);

Hàm này trả về kèo bóng đá hôm nay và ngày mai chuỗi chứa số lượng hàng bị ảnh hưởng bởiSQLCâu kèo bóng đá hôm nay và ngày mai đã tạopgresult. Chức năng này chỉ có thể được sử dụng sau khi thực hiệnChọn,Tạo bảng dưới dạng,Chèn,Cập nhật,Xóa,Di chuyển,FetchhoặcCopycâu kèo bóng đá hôm nay và ngày mai hoặc mộtthực thicủa kèo bóng đá hôm nay và ngày mai truy vấn đã chuẩn bị có chứaChèn,Cập nhậthoặcXóaTuyên bố. Nếu kèo bóng đá hôm nay và ngày mai đã tạopgresultlà bất cứ điều gì khác,PQCMDTUMPLESTrả về một chuỗi trống. Người gọi kèo bóng đá hôm nay và ngày mai nên giải phóng giá trị trả về trực tiếp.PGRESULTXử lý được chuyển choPQClear.

PQOIDVALUE

Trả về OID của hàng được chèn, nếuSQLkèo bóng đá hôm nay và ngày mai làChènChèn chính xác kèo bóng đá hôm nay và ngày mai hàng vào kèo bóng đá hôm nay và ngày mai bảng có OIDS hoặc Athực thicủa kèo bóng đá hôm nay và ngày mai truy vấn đã chuẩn bị có chứa phù hợpChènTuyên bố. Nếu kèo bóng đá hôm nay và ngày mai, chức năng này trả vềkèo bóng đá hôm nay và ngày mai hợp lệ. Chức năng này cũng sẽ trở lạikèo bóng đá hôm nay và ngày mai hợp lệNếu bảng bị ảnh hưởng bởiChènCâu kèo bóng đá hôm nay và ngày mai không chứa OIDS.

oid pqoidValue (const pgresult *res);
PQOIDSTATUS

Hàm này kèo bóng đá hôm nay và ngày mai được ủng hộPQOIDVALUEvà kèo bóng đá hôm nay và ngày mai an toàn cho luồng. Nó trả về một chuỗi với oid của hàng được chèn, trong khiPQOIDVALUETrả về giá trị OID.

Char *pqoidstatus (const pgresult *res);

32.3.4. Thoát khỏi chuỗi để đưa vào các kèo bóng đá hôm nay và ngày mai SQL

pqescapeliteral
char *pqescapeliteral (pgconn *Conn, const char *str, size_t length);

pqescapeliteralthoát một chuỗi để sử dụng trong kèo bóng đá hôm nay và ngày mai SQL. Điều này rất hữu ích khi chèn các giá trị dữ liệu dưới dạng hằng số theo nghĩa đen trong các kèo bóng đá hôm nay và ngày mai SQL.pqescapeliteralThực hiện thao tác này.

pqescapeliteralTrả về phiên bản thoát củastrtham số trong bộ nhớ được phân bổ vớimalloc (). Bộ nhớ này nên được giải phóng bằng cách sử dụngpqfreemem ()Khi kết quả kèo bóng đá hôm nay và ngày mai còn cần thiết. kèo bóng đá hôm nay và ngày mai cần phải tính một byte bằng 0 và kèo bóng đá hôm nay và ngày mai nên được tính vàolength. (Nếu tìm thấy một byte chấm dứt bằng kèo bóng đá hôm nay và ngày mai trướcLEGNbyte được xử lý,pqescapeliteraldừng ở số 0; Hành vi như vậy giống nhưstrncpy.) Chuỗi trả về có tất cả kèo bóng đá hôm nay và ngày mai ký tự đặc biệt được thay thế để chúng có thể được xử lý đúng cách bởiPOSTGRESQLTrình phân tích cú pháp theo nghĩa đen. kèo bóng đá hôm nay và ngày mai byte chấm dứt cũng được thêm vào.PostgreSQLChuỗi chữ được bao gồm trong chuỗi kết quả.

ON LRI,pqescapeliteralreturnnullvà kèo bóng đá hôm nay và ngày mai thông điệp phù hợp được lưu trữ trongConnĐối tượng.

Tip:Điều đặc biệt quan trọng là phải trốn thoát thích hợp khi xử lý các chuỗi nhận được từ một nguồn kèo bóng đá hôm nay và ngày mai đáng tin cậy. Nếu kèo bóng đá hôm nay và ngày mai thì có rủi ro bảo mật: Bạn dễ bị tổn thương với"SQL tiêm"Các cuộc tấn công trong đó các kèo bóng đá hôm nay và ngày mai SQL không mong muốn được đưa vào cơ sở dữ liệu của bạn.

Lưu ý rằng kèo bóng đá hôm nay và ngày mai cần thiết cũng kèo bóng đá hôm nay và ngày mai chính xác để thoát khi giá trị dữ liệu được truyền dưới dạng tham số riêng biệt trongPQExecParamshoặc kèo bóng đá hôm nay và ngày mai thói quen anh chị em của nó.

pqescapeidentifier
60587_60660

pqescapeidentifierthoát một chuỗi để sử dụng làm định danh SQL, chẳng hạn như bảng, cột hoặc tên chức năng. Điều này rất hữu ích khi mã định danh do người dùng cung cấp có thể chứa các ký tự đặc biệt mà nếu kèo bóng đá hôm nay và ngày mai sẽ kèo bóng đá hôm nay và ngày mai được giải thích là một phần của định danh bởi trình phân tích cú pháp SQL hoặc khi định danh có thể chứa các ký tự trường hợp trên có trường hợp nên được bảo quản.

pqescapeidentifierTrả về kèo bóng đá hôm nay và ngày mai phiên bản củastrtham số thoát ra như kèo bóng đá hôm nay và ngày mai định danh SQL trong bộ nhớ được phân bổ vớimalloc (). Bộ nhớ này phải được giải phóng bằng cách sử dụngpqfreemem ()Khi kết quả kèo bóng đá hôm nay và ngày mai còn cần thiết. kèo bóng đá hôm nay và ngày mai cần phải tính một byte bằng 0 và kèo bóng đá hôm nay và ngày mai nên được tính vàoLEGN. (Nếu tìm thấy một byte chấm dứt bằng kèo bóng đá hôm nay và ngày mai trướclengthbyte được xử lý,pqescapeidentifierdừng ở số kèo bóng đá hôm nay và ngày mai; Hành vi như vậy giống nhưstrncpy.) Chuỗi trả về có tất cả kèo bóng đá hôm nay và ngày mai ký tự đặc biệt được thay thế để nó được xử lý đúng như một định danh SQL. Một byte chấm dứt cũng được thêm vào.

ON Lỗi,pqescapeidentifierreturnnullvà kèo bóng đá hôm nay và ngày mai thông báo phù hợp được lưu trữ trongConnĐối tượng.

Tip:62192_62338

pqescapestringConn
size_t pqescapestringconn (pgconn *Conn,

pqescapestringConnthoát khỏi chuỗi chữ, giống nhưpqescapeliteral. kèo bóng đá hôm nay và ngày mai giống nhưpqescapeliteral, Người gọi có trách nhiệm cung cấp bộ đệm có kích thước phù hợp. Hơn nữa,pqescapestringConnkèo bóng đá hôm nay và ngày mai tạo ra các trích dẫn đơn lẻ phải bao quanhPOSTGRESQLChuỗi chữ; Chúng nên được cung cấp trong kèo bóng đá hôm nay và ngày mai SQL rằng kết quả được chèn vào.từchỉ vào ký tự đầu tiên của chuỗi được thoát ra vàLEGNTham số cung cấp số lượng byte trong chuỗi này. kèo bóng đá hôm nay và ngày mai cần phải tính một byte bằng 0 và kèo bóng đá hôm nay và ngày mai nên được tính vàoLEGN. (Nếu tìm thấy một byte chấm dứt bằng kèo bóng đá hôm nay và ngày mai trướcLEGNbyte được xử lý,pqescapestringConndừng ở số 0; Hành vi như vậy giống nhưstrncpy.)đếnsẽ chỉ vào bộ đệm có thể giữ ít nhất kèo bóng đá hôm nay và ngày mai byte nữa so với giá trị củaLEGN, nếu kèo bóng đá hôm nay và ngày mai thì hành vi kèo bóng đá hôm nay và ngày mai được xác định. Hành vi cũng kèo bóng đá hôm nay và ngày mai được xác định nếuđếntừChuỗi chồng chéo.

NếuERRORtham số kèo bóng đá hôm nay và ngày mai phảinull, sau đó*Lỗiđược đặt thành 0 khi thành công, kèo bóng đá hôm nay và ngày mai có lỗi. Hiện tại các điều kiện lỗi duy nhất có thể liên quan đến mã hóa đa kèo bóng đá hôm nay và ngày mai hợp lệ trong chuỗi nguồn.ConnĐối tượng, có hay kèo bóng đá hôm nay và ngày maiERRORnull.

pqescapestringConn64672_64714đến, kèo bóng đá hôm nay và ngày mai bao gồm việc chấm dứt byte bằng kèo bóng đá hôm nay và ngày mai.

pqescapestring

pqescapestringlà phiên bản cũ hơn, kèo bóng đá hôm nay và ngày mai dùng nữa củapqescapestringConn.

size_t pqescapestring (char *to, const char *từ, size_t length);

Sự khác biệt duy nhất so vớipqescapestringConnpqescapestringkèo bóng đá hôm nay và ngày mai lấyPGConnhoặcERRORtham số. Bởi vì điều này, nó kèo bóng đá hôm nay và ngày mai thể điều chỉnh hành vi của nó tùy thuộc vào các thuộc tính kết nối (chẳng hạn như mã hóa ký tự) và do đóNó có thể cho kết quả sai. Ngoài ra, nó kèo bóng đá hôm nay và ngày mai có cách nào để báo cáo các điều kiện lỗi.

pqescapestringCó thể được sử dụng một cách an toàn trong kèo bóng đá hôm nay và ngày mai chương trình máy khách chỉ hoạt động chỉ với mộtPOSTGRESQLKết nối tại kèo bóng đá hôm nay và ngày mai thời điểm (trong trường hợp này nó có thể tìm ra những gì nó cần biết"Phía sau hậu trường"). Trong kèo bóng đá hôm nay và ngày mai bối cảnh khác, đó là một mối nguy hiểm bảo mật và nên tránh có lợi chopqescapestringConn.

pqescapyteaconn

thoát dữ liệu nhị phân để sử dụng trong kèo bóng đá hôm nay và ngày mai SQL với loạibytea. Như vớipqescapestringConn, Điều này chỉ được sử dụng khi chèn dữ liệu trực tiếp vào chuỗi kèo bóng đá hôm nay và ngày mai SQL.

Char kèo bóng đá hôm nay và ngày mai dấu *pqescapyteaconn (PGConn *Conn,

Giá trị byte nhất định phải được thoát khi được sử dụng như kèo bóng đá hôm nay và ngày mai phần của Abyteatheo nghĩa đen trong kèo bóng đá hôm nay và ngày maiSQLcâu kèo bóng đá hôm nay và ngày mai.pqescapyteaconnEscapes byte bằng cách sử dụng mã hóa hex hoặc thoát khỏi sự ngược. Nhìn thấyPhần 8.4Để biết thêm thông tin.

ThetừTham số chỉ vào byte đầu tiên của chuỗi sẽ được thoát ra vàfrom_lengthTham số cung cấp số lượng byte trong chuỗi nhị phân này. (Một byte kết thúc bằng kèo bóng đá hôm nay và ngày mai là kèo bóng đá hôm nay và ngày mai cần thiết cũng như kèo bóng đá hôm nay và ngày mai được tính.)to_lengthTham số trỏ đến kèo bóng đá hôm nay và ngày mai biến sẽ giữ độ dài chuỗi thoát ra kết quả. Độ dài chuỗi kết quả này bao gồm kết thúc bằng 0 byte của kết quả.

pqescapyteaconnTrả về phiên bản thoát củatừChuỗi nhị phân tham số trong bộ nhớ được phân bổ vớimalloc (). Bộ nhớ này nên được giải phóng bằng cách sử dụngpqfreemem ()Khi kết quả kèo bóng đá hôm nay và ngày mai còn cần thiết. Chuỗi trả về có tất cả các ký tự đặc biệt được thay thế để chúng có thể được xử lý đúng cách bởiPOSTGRESQLTrình phân tích cú pháp theo nghĩa đen vàbyteaHàm đầu vào. kèo bóng đá hôm nay và ngày mai byte chấm dứt cũng được thêm vào.PostgreSQLChuỗi chữ kèo bóng đá hôm nay và ngày mai phải là một phần của chuỗi kết quả.

Khi lỗi, kèo bóng đá hôm nay và ngày mai con trỏ null được trả về và thông báo lỗi phù hợp được lưu trữ trongConnĐối tượng. Hiện tại, lỗi duy nhất có thể là kèo bóng đá hôm nay và ngày mai đủ bộ nhớ cho chuỗi kết quả.

pqescapytea

pqescapytealà phiên bản cũ hơn, kèo bóng đá hôm nay và ngày mai dùng nữa củapqescapyteaconn.

Char kèo bóng đá hôm nay và ngày mai dấu *pqescapytea (const kèo bóng đá hôm nay và ngày mai dấu char *từ,

Sự khác biệt duy nhất so vớipqescapyteaconnpqescapyteakèo bóng đá hôm nay và ngày mai lấyPGConnTham số. Vì điều này,pqescapyteaChỉ có thể được sử dụng một cách an toàn trong kèo bóng đá hôm nay và ngày mai chương trình khách hàng sử dụng mộtPOSTGRESQLKết nối tại kèo bóng đá hôm nay và ngày mai thời điểm (trong trường hợp này nó có thể tìm ra những gì nó cần biết"Phía sau hậu trường"). Nócó thể cho kết quả saiNếu được sử dụng trong kèo bóng đá hôm nay và ngày mai chương trình sử dụng nhiều kết nối cơ sở dữ liệu (sử dụngpqescapyteaconnTrong những trường hợp như vậy).

PQUNESCAPHERTEA

Chuyển đổi biểu diễn chuỗi của dữ liệu nhị phân thành dữ liệu nhị phân - ngược lạipqescapytea. Điều này là cần thiết khi lấy lạibyteaDữ liệu ở định dạng văn bản, nhưng kèo bóng đá hôm nay và ngày mai phải khi truy xuất nó ở định dạng nhị phân.

69926_70005

Thetừtham số trỏ đến kèo bóng đá hôm nay và ngày mai chuỗi như có thể được trả về bởiPQGetValueKhi áp dụng cho Abyteacột.PQUNESCAPHYTEAChuyển đổi biểu diễn chuỗi này thành biểu diễn nhị phân của nó. Nó trả về kèo bóng đá hôm nay và ngày mai con trỏ cho bộ đệm được phân bổ vớimalloc ()hoặcnulltrên lỗi và đặt kích thước của bộ đệm vàoto_length. Kết quả phải được giải phóng bằng cách sử dụngpqfreememKhi nó kèo bóng đá hôm nay và ngày mai còn cần thiết nữa.

Chuyển đổi này kèo bóng đá hôm nay và ngày mai chính xác là nghịch đảo củapqescapytea, vì chuỗi kèo bóng đá hôm nay và ngày mai được mong đợi là"Escaped"Khi nhận được từPQGetValue. Cụ thể, điều này có nghĩa là kèo bóng đá hôm nay và ngày mai cần xem xét trích dẫn chuỗi, và vì vậy kèo bóng đá hôm nay và ngày mai cần phảiPGConntham số.