PostgreSQL: kèo bóng đá hôm nay và ngày | |||
---|---|---|---|
prev | UP | Chương 32.libpq- C Thư viện | NEXT |
Như mọi khi, có một số chức năng kèo bóng đá pháp phù hợp ở bất cứ đâu.
PQFreemem
Bộ nhớ giải phóng được phân bổ bởilibpq.
void pqfreemem (void *ptr);
Bộ nhớ giải phóng được phân bổ bởilibpq, đặc biệtpqescapyteaconn
, pqescapytea
, PQUNESCAPHERTEA
vàpqnotifyes
. Điều đặc biệt quan trọng là chức năng này, thay vìfree ()
, được sử dụng trên Microsoft Windows. Điều này là do việc phân bổ bộ nhớ trong DLL và phát hành nó trong ứng dụng chỉ hoạt động nếu MultiThreaded/một luồng, giải phóng/gỡ lỗi và cờ tĩnh/động là giống nhau cho DLL và ứng dụng.free ()
.
PQConnInfofree
Giải phóng kèo bóng đá pháp cấu trúc dữ liệu được phân bổ bởiPQConnDefaults
hoặcPQConnInfoparse
.
10786_10839
Một đơn giảnpqfreemem
sẽ kèo bóng đá pháp làm điều này, vì mảng chứa các tham chiếu đến chuỗi công ty con.
pqencryptpassword
Chuẩn bị mẫu được mã hóa của APostgreSQLMật khẩu.
char *pqencryptpassword (const char *passwd, const char *user);
kèo bóng đá pháp này được dự định sẽ được sử dụng bởi các ứng dụng khách muốn gửi các lệnh nhưThay đổi mật khẩu joe của người dùng 'PWD'. Thật tốt khi kèo bóng đá pháp gửi mật khẩu ClearText ban đầu trong một lệnh như vậy, bởi vì nó có thể được hiển thị trong nhật ký lệnh, màn hình hoạt động, v.v.malloc
hoặcnullNếu ra khỏi bộ nhớ. Người gọi có thể giả sử chuỗi kèo bóng đá pháp chứa bất kỳ ký tự đặc biệt nào yêu cầu thoát.PQFREEMEM
Để giải phóng kết quả khi thực hiện với nó.
PQMakeMpTypgresult
Xây dựng trốngpgresultĐối tượng có trạng thái đã cho.
12355_12424
Đây làlibpqS chức năng nội bộ để phân bổ và khởi tạo trốngpgresultĐối tượng. kèo bóng đá pháp này trả vềnullNếu bộ nhớ kèo bóng đá pháp thể được phân bổ. Nó được xuất vì một số ứng dụng thấy hữu ích để tạo các đối tượng kết quả (đặc biệt là các đối tượng có trạng thái lỗi).Connkèo bóng đá pháp phải là null vàstatusCho biết lỗi, thông báo lỗi hiện tại của kết nối được chỉ định được sao chép vàopgresult. Ngoài ra, nếuConnkèo bóng đá pháp phải là NULL, bất kỳ quy trình sự kiện nào được đăng ký trong kết nối được sao chép vàopgresult. (Họ kèo bóng đá pháp nhận đượcPGEVT_RESULTCREATEcuộc gọi, nhưng xemPQFireresultCreateEvents
.) Lưu ý rằngPQClear
Cuối cùng nên được gọi trên đối tượng, giống như vớipgresultĐược trả về bởilibpqchính nó.
PQFireresultCreateEvents
Hỏa hoạn APGEVT_RESULTCREATESự kiện (xemPhần 32.13) cho mỗi quy trình sự kiện được đăng ký trongpgresultĐối tượng. Trả về kèo bóng đá pháp phải cho thành công, kèo bóng đá pháp, nếu có bất kỳ thủ tục sự kiện nào thất bại.
13966_14026
TheConnĐối số được chuyển qua các quy trình sự kiện nhưng kèo bóng đá pháp được sử dụng trực tiếp. Nó có thể lànullNếu quy trình sự kiện sẽ kèo bóng đá pháp sử dụng nó.
Quy trình sự kiện đã nhận đượcPGEVT_RESULTCREATEhoặcPGEVT_RESULTCOPYSự kiện cho đối tượng này kèo bóng đá pháp bị bắn nữa.
Lý do chính mà chức năng này tách biệt vớiPQMakeMpTypgresult
Có phải là kèo bóng đá pháp phù hợp để tạo Apgresultvà điền vào dữ liệu trước khi gọi kèo bóng đá pháp quy trình sự kiện.
PQCopyresult
Tạo một bản sao của ApgresultĐối tượng. Bản sao kèo bóng đá pháp được liên kết với kết quả nguồn theo bất kỳ cách nào vàPQClear
phải được gọi khi bản sao kèo bóng đá pháp còn cần thiết. Nếu chức năng kèo bóng đá pháp thành công,nullđược trả về.
Pgresult *PQCopyresult (const pgresult *src, int flags);
Điều này kèo bóng đá pháp nhằm tạo một bản sao chính xác. Kết quả trả về luôn được đặt vàoPGRES_TUDS_OKtrạng thái và kèo bóng đá pháp sao chép bất kỳ thông báo lỗi nào trong nguồn. (Tuy nhiên, nó sao chép chuỗi trạng thái lệnh.)CờĐối số xác định những gì khác được sao chép. Nó là một chút hoặc của một số cờ.pg_copyres_attrsChỉ định sao chép kèo bóng đá pháp thuộc tính của kết quả nguồn (định nghĩa cột).pg_copyres_tuplesChỉ định sao chép kèo bóng đá pháp bộ dữ liệu của kết quả nguồn. (Điều này cũng ngụ ý sao chép kèo bóng đá pháp thuộc tính.)PG_Copyres_NoticeHooksChỉ định sao chép kèo bóng đá pháp móc thông báo của kết quả nguồn.pg_copyres_eventsChỉ định sao chép các sự kiện của kết quả nguồn. (Nhưng bất kỳ dữ liệu thể hiện nào được liên kết với nguồn kèo bóng đá pháp được sao chép.)
PQSetResultattrs
Đặt kèo bóng đá pháp thuộc tính của APGRESULTĐối tượng.
16228_16309
được cung cấpAttdescsđược sao chép vào kết quả. NếuAttdescsCon trỏ lànullhoặcnumattributnhỏ hơn một, yêu cầu bị bỏ qua và chức năng thành công. Nếu nhưresĐã chứa các thuộc tính, kèo bóng đá pháp sẽ bị lỗi. Nếu kèo bóng đá pháp không thành công, giá trị trả về bằng không.
PQSetValue
Đặt giá trị trường Tuple của APGRESULTĐối tượng.
int pqsetValue (pgresult *res, int tup_num, int field_num, char *value, int len);
kèo bóng đá pháp sẽ tự động phát triển mảng Tuples nội bộ của kết quả khi cần thiết. Tuy nhiên,TUP_NUMĐối số phải nhỏ hơn hoặc bằngPQNTUMPLES
, có nghĩa là kèo bóng đá pháp này chỉ có thể phát triển mảng Tuples một tuple cùng một lúc. Nhưng bất kỳ trường nào của bất kỳ tuple hiện có có thể được sửa đổi theo bất kỳ thứ tự nào.field_numĐã tồn tại, nó sẽ bị ghi đè. Nếu nhưlenlà -1 hoặcgiá trịlànull, giá trị trường sẽ được đặt thành giá trị null SQL. Thegiá trịđược sao chép vào bộ nhớ riêng của kết quả, do đó không còn cần thiết sau khi chức năng trả về. Nếu kèo bóng đá pháp không thành công, giá trị trả về bằng không.
PQResultalloc
Phân bổ lưu trữ công ty con cho APGRESULTĐối tượng.
void *pqresultalloc (pgresult *res, size_t nbytes);
Bất kỳ bộ nhớ nào được phân bổ với chức năng này sẽ được giải phóng khiresđược xóa. Nếu kèo bóng đá pháp không thành công, giá trị trả về lànull. Kết quả được đảm bảo được căn chỉnh đầy đủ cho bất kỳ loại dữ liệu nào, giống như đối vớimalloc
.
pqlibversion
Trả lại phiên bảnlibpqĐiều đó đang được sử dụng.
int pqlibversion (void);
Kết quả của chức năng này có thể được sử dụng để xác định, tại thời điểm chạy, nếu có sẵn chức năng cụ thể trong phiên bản LIBPQ hiện đang được tải. Chức năng có thể được sử dụng, ví dụ, để xác định tùy chọn kết nối nào có sẵn choPQConnectDB
hoặc nếuHex byteaĐầu ra được thêm vào trong PostgreSql 9.0 được hỗ trợ.
Số được hình thành bằng cách chuyển đổi số chính, phụ và sửa đổi thành các số hai chữ số và nối chúng lại với nhau. Ví dụ: phiên bản 9.1 sẽ được trả về dưới dạng 90100 và phiên bản 9.1.2 sẽ được trả về vì 90102 (kèo bóng đá pháp được hiển thị 0).
Lưu ý:kèo bóng đá pháp này xuất hiện trongPostgreSQLPhiên bản 9.1, do đó kèo bóng đá pháp thể được sử dụng để phát hiện chức năng cần thiết trong các phiên bản trước, vì liên kết với nó sẽ tạo ra sự phụ thuộc liên kết vào phiên bản 9.1.