kèo bóng đá hom nay 9.1.24 Tài liệu | ||||
---|---|---|---|---|
prev | UP | Chương 31.libpq- C Thư viện | Tiếp theo |
Một khi kết nối với máy chủ cơ sở dữ kèo bóng đá hom nay đã thành công
Chuỗi lệnh có thể bao gồm nhiều lệnh SQLPQEXEC
cuộc gọi được xử lý trong ABắt đầu/cam kếtlệnhpgresultCấu trúc chỉ mô tả kết quảpgresultMô tả
PQExecparams
gửi lệnh lên máy chủ và chờ đợi
PGRESULT *PQEXECPARAMS (PGConn *Conn,
PQExecParams
giống nhưPQEXEC
, nhưng cung cấpPQExecparams
IS
Các đối số chức năng là:
Đối tượng kết nối để gửi lệnh
Chuỗi lệnh SQL được kèo bóng đá hom nay. Nếu như$ 1,$ 2, v.v.
Số lượng tham số được cung cấp; nó làparamtypes [],paramValues [],paramlengths []vàparamformats []. (MảngnullKhinparamsbằng kèo bóng đá hom nay.)
Chỉ định, bởi OID, các loại dữ kèo bóng đá hom nay sẽ được gánparamtypeslànullhoặc bất kỳ yếu tố cụ thể nào trong
Chỉ định các giá trị thực của các tham số. MỘT
Chỉ định độ dài dữ kèo bóng đá hom nay thực tế của
Chỉ định xem các tham số có phải là văn bản kèo bóng đá hom nay (đặt một
Giá trị được truyền ở định dạng nhị phân đòi hỏi kiến thứcSốGiá trị đòi hỏi kiến thức vềsrc/backend/utils/adt/numeric.c :: numeric_send ()vàsrc/backend/utils/adt/numeric.c :: numeric_recv ().
Chỉ định số 0 để có được kết quả ở định dạng văn bản,
Ưu điểm chính củaPQExecparams
OverPQEXEC
có thể là giá trị tham số
kèo bóng đá hom nay giống nhưPQEXEC
,PQExecparams
Cho phép nhiều nhất kèo bóng đá hom nay lệnh SQL
Tip:Chỉ định các loại tham số qua OIDS là
Chọn * từ MyTable WHERE X = $ 1 :: Bigint;Tham số lực lượng này$ 1Để đượcBigint, trong khi theo mặc địnhx. Buộc quyết định loại tham số,
PQPrepare
Đệ trình yêu cầu tạo câu lệnh đã chuẩn bị với
pgresult *pqprepare (pgconn *Conn,
PQPrepare
Tạo aPQEXECPREPARED
. Tính năng này cho phépPQPrepare
IS
Hàm tạo ra kèo bóng đá hom nay câu lệnh đã chuẩn bị có tênstmtnametừTruy vấnchuỗi, phải chứa kèo bóng đá hom naystmtnamecó thể""Để tạo ra kèo bóng đá hom nay$ 1,$ 2, v.v.nparamslà số lượng tham số choparamtypes []. (Con trỏ mảng có thể lànullKhinparamsbằng kèo bóng đá hom nay.)paramtypes []Chỉ định, bởi OID, dữ kèo bóng đá hom nayparamtypeslànullhoặc bất kỳ yếu tố cụ thể nào trongNPARAMS; Các loại dữ kèo bóng đá hom nay sẽ được suy ra choĐối với kèo bóng đá hom nay phương tiện để tìm
như vớiPQEXEC
, Thepgresultđối tượng có nội dung biểu thị thành công phía máy chủ hoặcpqerrormessage
Để biết thêm thông tin
Các câu lệnh được chuẩn bị để sử dụng vớiPQEXECPREPARED
cũng có thể được tạo bởiChuẩn bịCâu lệnh. Ngoài ra, mặc dù kèo bóng đá hom nay cólibpqChức năng xóa kèo bóng đá hom nay chế độ chuẩn bịDealLocateCâu lệnh có thể được sử dụng cho mục đích đó.
PQEXECPREPARED
Gửi yêu cầu thực hiện kèo bóng đá hom nay câu lệnh đã chuẩn bị với
PGRESULT *PQEXECPREPARED (PGConn *Conn,
PQEXECPREPARED
giống nhưPQExecParams
, nhưngPQEXECPREPARED
được hỗ trợ
Các tham số giống hệt vớiPQExecParams
, ngoại trừ tên của kèo bóng đá hom nayparamtypes []Tham số
Đệ trình yêu cầu lấy thông tin về
PGRESULT *
Cho phép kèo bóng đá hom nay ứng dụng có được thông tin về A
chỉ được hỗ trợ trong
stmtnamecó thể""hoặcnullđếnPGRESULTVới trạng tháiPGRES_COMMAND_OKđược trả về.pqnparams
vàPQParamType
có thể được áp dụngpgresultđể có đượcPQNFields
,pqfname
,PQFTYPE
, vv Cung cấp thông tin về
PQDescriptePortal
Đệ trình yêu cầu lấy thông tin về
27597_27666
PQDescriptePortal
cho phéplibpqkèo bóng đá hom nay cung cấp bất kỳ quyền truy cập trực tiếp nào vào cổng, nhưng bạnKhai báoLệnh SQL.)PQDescriptePortal
chỉ được hỗ trợ trong
PortalNamecó thể""hoặcnullĐể tham khảo cổng thông tin kèo bóng đá hom nay tên,PGRESULTvớiPGRES_COMMAND_OKISPQNFields
,PQFNAME
,PQFTYPE
, v.v.PGRESULTđể có được
ThepgresultCấu trúclibpqCác lập trình viên ứng dụng nên đượcpgresultTrừu tượng. Sử dụng các chức năng truy cập bên dưới để có đượcPGRESULT. Tránh xapgresultCấu trúc vì chúng là chủ thể
PQResultstatus
Trả về trạng thái kết quả của lệnh.
29847_29902
PQResultstatus
Có thể
Chuỗi được gửi đến máy chủ trống.
Hoàn thành thành công lệnh trả về kèo bóng đá hom nay
Hoàn thành thành công kèo bóng đá hom nay lệnh quay lạiChọnhoặcshow).
Sao chép (từ máy chủ) Truyền dữ kèo bóng đá hom nay
Sao chép (vào máy chủ) bắt đầu truyền dữ kèo bóng đá hom nay.
Phản hồi của máy chủ kèo bóng đá hom nay được hiểu.
Một lỗi kèo bóng đá hom nay sinh (thông báo hoặc cảnh báo)
xảy ra lỗi nghiêm trọng.
Sao chép vào/ra (đến và từ máy chủ) Truyền dữ kèo bóng đá hom nay
Nếu trạng thái kết quả làPGRES_TUDS_OK, sau đó các chức năngChọnLệnh xảy ra để truy xuất các hàng kèo bóng đá hom nay vẫn hiển thịPGRES_TUDS_OK.PGRES_COMMAND_OKlà cho các lệnh có thểChèn,Cập nhật, v.v.). kèo bóng đá hom nay phản hồi củaPGRES_EMPTY_Querycó thể chỉ ra
Kết quả của trạng tháiPGRES_NONFATAL_ERRORSẽ kèo bóng đá hom nay bao giờ được trả lạiPQEXEC
hoặc khácPhần 31.11).
pqresstatus
Chuyển đổi loại được liệt kê được trả về bởiPQResultstatus
thành hằng số chuỗi
34244_34289
pqresulterrormessage
Trả về thông báo lỗi được liên kết với lệnh,
char *pqresulterrormessage (const pgresult *res);
Nếu có lỗi, chuỗi được trả về sẽpgresultXử lý được chuyển choPQClear
.
ngay sau APQEXEC
hoặcPQGetResult
CALL,pqerrormessage
(trên kết nối) sẽpqresulterrormessage
(về kết quả).PGRESULTWillpqresulterrormessage
Khi bạn muốnPGRESULT; sử dụngpqerrormessage
Khi bạn muốn biết
pqresulterrorfield
Trả về kèo bóng đá hom nay trường riêng lẻ của báo cáo lỗi.
char *pqresulterrorfield (const pgresult *res, int fieldCode);
FieldCodelà trường lỗinullđược trả về nếupgresultkèo bóng đá hom nay phải là lỗi hoặc cảnh báopgresultXử lý được chuyển choPQClear
.
Mã trường sau đây có sẵn:
Mức độ nghiêm trọng; Nội dung trường làERROR,FatalhoặcPanic(trong kèo bóng đá hom nay thông báo lỗi) hoặccảnh báo,Thông báo,DEBUG,INFOhoặclog(trong kèo bóng đá hom nay thông báo thông báo) hoặc A
Mã SQLSTATE cho lỗi. SQLSTATEPhụ lục. Lĩnh vực này kèo bóng đá hom nay thể bản địa hóa, và luôn luôn
Thông báo lỗi có thể đọc được chính của con người
Chi tiết: Thông báo lỗi thứ cấp tùy chọn
Gợi ý: kèo bóng đá hom nay đề xuất tùy chọn phải làm gì
kèo bóng đá hom nay chuỗi chứa số nguyên thập phân cho biết
Điều này được xác định giống nhưpg_diag_statement_poseitionTrường, nhưngPG_DIAG_INTERNAL_QUERYTrường sẽ
Văn bản của kèo bóng đá hom nay lỗi được tạo ra trong nội bộ
kèo bóng đá hom nay dấu hiệu của bối cảnh trong đó lỗi
Tên tệp của vị trí mã nguồn nơi
Số dòng của vị trí mã nguồn
Tên của báo cáo chức năng mã nguồn
Khách hàng chịu trách nhiệm định dạng được hiển thị
lỗi được tạo bên tronglibpqsẽ có mức độ nghiêm trọng và chính
Lưu ý rằng các trường lỗi chỉ khả dụng từPGRESULTĐối tượng, kèo bóng đá hom nayPGConnĐối tượng; kèo bóng đá hom nay cópqerrorfield
chức năng.
PQClear
Giải phóng bộ lưu trữ được liên kết với APGRESULT. Mọi kết quả lệnh nênPQClear
Khi nào
VOID PQCLEAR (PGRESULT *RES);
Bạn có thể giữpgresultĐối tượng xung quanh miễn là bạn cần nó; nó kèo bóng đá hom nay điPQClear
. kèo bóng đá hom nay làm điều này
Các 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èo bóng đá hom nayPGRES_TUDS_OK). Họ cũng có thể
PQNTUMPLES
Trả về số lượng hàng (tổng) trong truy vấn
int pqntuples (const pgresult *res);
PQNFields
Trả về số lượng cột (trường) trong mỗi hàng của
int pqnfields (const pgresult *res);
PQFNAME
Trả về tên cột được liên kết với chữ cái đã choPGRESULTXử lý được chuyển choPQClear
.
char *pqfname (const pgresult *res,
nullđược trả về nếu cột
PQFNumber
Trả về số cột được liên kết với số tiền đã cho
int pqfnumber (const pgresult *res,
-1 được trả về nếu tên đã cho kèo bóng đá hom nay khớp với bất kỳ
Tên đã cho được đối xử như kèo bóng đá hom nay định danh trong SQL
Chọn 1 làm foo, 2 là "Bar";
Chúng tôi sẽ có kết quả:
pqfname (res, 0)foopqfname (res, 1)Barpqfnumber (res, "foo")0pqfnumber (res, "foo")0pqfnumber (res, "thanh")-1pqfnumber (res, "\" bar \ "")1
PQFTable
Trả về OID của bảng mà từ đó đã cho
oid pqftable (const pgresult *res,
kèo bóng đá hom nay hợp lệđược trả về nếupg_ classĐể xác định chính xác
Loạioidvà hằng sốkèo bóng đá hom nay hợp lệsẽ được xác định khilibpqTệp tiêu đề. Cả hai sẽ là kèo bóng đá hom nay loại số nguyên.
pqftablecol
Trả về số cột (trong bảng của nó) của
int pqftablecol (const pgresult *res,
số kèo bóng đá hom nay được trả về nếu số cột nằm ngoài phạm vi,
PQFFormat
Trả về mã định dạng biểu thị định dạng của
int pqfformat (const pgresult *res,
Mã định dạng Zero cho biết dữ kèo bóng đá hom nay văn bản
PQFTYPE
Trả về kiểu dữ kèo bóng đá hom nay được liên kết với cột đã cho
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ínhoidS của các loại dữ kèo bóng đá hom nay tích hợp làsrc/bao gồm/catalog/pg_type.hTrong
PQFMOD
Trả về bộ sửa đổi loại của cột được liên kết
int pqfmod (const pgresult *res,
Giải thích các giá trị sửa đổi là"kèo bóng đá hom nay có thông tin". Hầu hết dữ kèo bóng đá hom nay
pqfsize
Trả về kích thước theo byte của cột được liên kết
int pqfsize (const pgresult *res,
PQFSize
Trả về
PQBinaryTuples
Trả về 1 nếupgresultChứa dữ kèo bóng đá hom nay nhị phân và 0 nếu nó chứa dữ kèo bóng đá hom nay văn bản.
int pqbinarytuples (const pgresult *res);
Hàm này được kèo bóng đá hom nay dùng nữa (ngoại trừ việc sử dụng nó trongCopy), bởi vìPGRESULTĐể chứa dữ kèo bóng đá hom nay văn bản trong một sốPQFFormat
được ưu tiên.PQBinaryTuples
Chỉ trả lại 1 nếu tất cả
PQGetValue
Trả về kèo bóng đá hom nay giá trị trường duy nhất của kèo bóng đá hom nay hàng của APGRESULT. Hàng và cộtpgresultXử lý được chuyển choPQClear
.
Char *pqgetValue (const pgresult *res,
Đối với dữ kèo bóng đá hom nay ở định dạng văn bản, giá trị được trả về bởiPQGetValue
là aTYPSEND
vàTyPreceive
chức năng. (Giá trị là
kèo bóng đá hom nay chuỗi trống được trả về nếu giá trị trường làPQGetisNull
đến
Con trỏ được trả về bởiPQGetValue
Điểm để lưu trữ đó làPGRESULTCấu trúc. Người ta kèo bóng đá hom nay nên sửa đổi dữ liệu mà nó trỏ đến,pgresultCấu trúc chính.
PQGetisNull
Kiểm tra kèo bóng đá hom nay trường cho giá trị null. Các số hàng và cột
int pqgetisnull (const pgresult *res,
Hàm này trả về 1 nếu trường là null và 0 nếuPQGetValue
Sẽ trả về kèo bóng đá hom nay chuỗi trống,
PQGetLpm
Trả về độ dài thực tế của giá trị trường tính bằng byte.
int PQGetLpm (const pgresult *res,
Đây là độ dài dữ kèo bóng đá hom nay thực tế cho dữ kèo bóng đá hom nay cụ thểPQGetValue
. Cho dữ kèo bóng đá hom nay văn bảnstrlen ()
. Đối với định dạng nhị phân này làkèo bóng đá hom naydựa vàopqfsize
Để có được dữ kèo bóng đá hom nay thực tế
pqnparams
Trả về số lượng tham số của kèo bóng đá hom nay đã chuẩn bị
int pqnparams (const pgresult *res);
Hàm này chỉ hữu ích khi kiểm tra. Cho các loại khác của
PQParamType
Trả về kiểu dữ kèo bóng đá hom nay của câu lệnh được chỉ định
oid pqparamtype (const pgresult *res, int param_number);
Hàm này chỉ hữu ích khi kiểm tra. Cho các loại khác của
PQPrint
In ra tất cả các hàng và, tùy chọn, cột
VOID PQPRINT (FILE *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
Các 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 lệnh từ lệnh SQLpgresult.
char *pqcmdstatus (pgresult *res);
Thông thường đây chỉ là tên của lệnh, nhưng nópgresultXử lý được chuyển choPQClear
.
PQCMDTUMPLES
Trả về số lượng hàng bị ảnh hưởng bởi SQL
char *pqcmdtuples (pgresult *res);
Hàm này trả về kèo bóng đá hom nay chuỗi chứa sốSQLCâu lệnh đã tạoPGRESULT. Chức năng này có thểChọn,Tạo bảng,Chèn,Cập nhật,Xóa,Di chuyển,FetchhoặcCopycâu lệnh hoặc kèo bóng đá hom naykèo bóng đá hom naycủa aChèn,Cập nhật,,XóaTuyên bố. NếuPGRESULTlà bất cứ điều gì khác,PQCMDTUMPLES
Trả về anPGRESULTXử lý được chuyển choPQClear
.
PQOIDVALUE
Trả về OID của hàng được chèn, nếuSQLlệnh làChènđã chèn chính xác kèo bóng đá hom naykèo bóng đá hom naycủa kèo bóng đá hom nay truy vấn đã chuẩn bị có chứaChènTuyên bố.kèo bóng đá hom nay hợp lệ. Chức năng này cũng sẽ trở lạikèo bóng đá hom nay hợp lệNếu bảng bị ảnh hưởngChènCâu lệnh kèo bóng đá hom nay
oid pqoidValue (const pgresult *res);
PQOIDSTATUS
Hàm này kèo bóng đá hom nay được ủng hộPQOIDVALUE
và kèo bóng đá hom nay an toàn cho luồng. NóPQOIDVALUE
Trả về OID
char *pqoidstatus (const pgresult *res);
pqescapeliteral
64129_64201
pqescapeliteral
Escapespqescapeliteral
Thực hiện điều này
pqescapeliteral
Trả vềstrtham số trong bộ nhớ được phân bổ vớimalloc ()
. Ký ức này nên được giải phóngpqfreemem ()
Khilength. (Nếu một byte chấm dứt bằng kèo bóng đá hom naylengthbyte làpqescapeliteral
dừng ở số 0; Hành vi như vậy giống nhưstrncpy
.) Chuỗi trả vềkèo bóng đá hom nayTrình phân tích cú pháp theo nghĩa đen. MỘTkèo bóng đá hom nayChuỗi nghĩa đen là
ON Lỗi,pqescapeliteral
returnnullvà kèo bóng đá hom nay 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 làm"SQL tiêm"Tấn công
Lưu ý rằng kèo bóng đá hom nay cần thiết cũng kèo bóng đá hom nay đúngPQExecparams
hoặc các thói quen anh chị em của nó.
pqescapeidentifier
67033_67108
pqescapeidentifier
thoát khỏi chuỗi để sử dụng làm định danh SQL, chẳng hạn như A
pqescapentifier
Trả về phiên bản củastrtham số thoát ra như kèo bóng đá hom nay định danh SQL trong bộ nhớmalloc ()
.pqfreemem ()
Khi kết quả là kèo bóng đá hom naylength. (Nếu một byte chấm dứt bằng kèo bóng đá hom nayLEGNbyte làpqescapentifier
dừng ở số 0;strncpy
.) Chuỗi trả về có tất cả
ON Lỗi,pqescapeidentifier
returnnullVà kèo bóng đá hom nay thông điệp phù hợp được lưu trữ trongConnĐối tượng.
Tip:Như với các chuỗi chữ, để ngăn chặn
pqescapestringConn
size_t pqescapestringconn (pgconn *Conn,
pqescapestringConn
Escapes Chuỗi nghĩa đen, giống nhưpqescapeliteral
. kèo bóng đá hom nay giống nhưpqescapeliteral
, người gọi làpqescapestringConn
kèo bóng đá hom nay tạo rakèo bóng đá hom nayChuỗi chữ; họtừchỉ vào ký tự đầu tiên củalengththam số cung cấp số lượnglength. (Nếu một byte chấm dứt bằng kèo bóng đá hom nayLEGNByte làpqescapestringConn
dừng ở số 0;strncpy
.)đếnsẽ chỉ vào bộ đệm có thể giữ ít nhất kèo bóng đá hom naylength, nếu kèo bóng đá hom nay thì hành vi làđếnvàtừChuỗi chồng chéo.
NếuERRORtham số lànull, sau đó*Lỗiđược đặt thành kèo bóng đá hom nay thành công, kèo bóng đá hom nayConnĐối tượng, có hay kèo bóng đá hom nayERRORlànull.
pqescapestringConn
Trả về số byte được viết thànhđến, kèo bóng đá hom nay bao gồm số 0 chấm dứt
pqescapestring
pqescapestring
là kèo bóng đá hom naypqescapestringConn
.
size_t pqescapestring (char *to, const char *từ, size_t length);
Sự khác biệt duy nhất so vớipqescapestringConn
làpqescapestring
kèo bóng đá hom nay lấyPGConnhoặcERRORtham số. Vì điều này, nóNó có thể cung cấp. Ngoài ra, nó kèo bóng đá hom nay có cách nào để báo cáo lỗi
pqescapestring
có thểkèo bóng đá hom nayKết nối tại"Phía sau hậu trường"). TRONGpqescapestringConn
.
pqescapyteaconn
thoát dữ kèo bóng đá hom nay nhị phân để sử dụng trong lệnh SQL với lệnh SQL vớibytea. Như vớipqescapestringConn
, Đây là
Char kèo bóng đá hom nay 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 đá hom nay phầnbyteatheo nghĩa đen trong kèo bóng đá hom naySQLcâu lệnh.pqescapyteaconn
EscapesPhần 8.4cho
ThetừĐiểm tham sốfrom_lengthTham sốto_lengthĐiểm tham số
pqescapyteaconn
Trả về phiên bản thoát củatừChuỗi nhị phân tham số trong bộ nhớmalloc ()
.pqfreemem ()
Khi kết quả là kèo bóng đá hom naykèo bóng đá hom nayTrình phân tích cú pháp theo nghĩa đen,byteaHàm đầu vào. MỘTkèo bóng đá hom nayChuỗi chữ kèo bóng đá hom nay
Khi lỗi, kèo bóng đá hom nay con trỏ null được trả về và kèo bóng đá hom nayConnĐối tượng. Hiện tại, duy nhất
pqescapytea
pqescapytea
là kèo bóng đá hom naypqescapyteaconn
.
Char kèo bóng đá hom nay dấu *pqescapytea (const kèo bóng đá hom nay dấu char *từ,
Sự khác biệt duy nhất so vớipqescapyteaconn
làpqescapytea
kèo bóng đá hom nay lấyPGConntham số. Vìpqescapytea
Có thểkèo bóng đá hom nayKết nối tại"Phía sau hậu trường"). Nócó thể cho saiNếu được sử dụng trong các chương trình sử dụng nhiềupqescapyteaconn
Trong những trường hợp như vậy).
PQUNESCAPHERTEA
Chuyển đổi biểu diễn chuỗi của dữ kèo bóng đá hom nay nhị phân thànhpqescapytea
. Điều này là cần thiết khibyteaDữ kèo bóng đá hom nay trong văn bản
78364_78445
ThetừĐiểm tham sốPQGetValue
Khi được áp dụng cho Abyteacột.PQUNESCAPHERTEA
Chuyển đổi chuỗi nàymalloc ()
hoặcnulltrên lỗi và đặt kích thước củato_length. CácPQFREEMEM
Khi nó kèo bóng đá hom nay còn nữa
Chuyển đổi này kèo bóng đá hom nay chính xác là nghịch đảo củaPQESCAPHERTEA
, vì"Escaped"Khi nhận được từPQGetValue
. Đặc biệt điều này có nghĩa làPGConntham số.