Phiên bản được hỗ trợ:hiện tại(17)16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không đượ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

33.11. kèo bóng đá cúp c2

Như mọi khi, có một số chức kèo bóng đá cúp c2 không 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, PQUNESCAPHERTEApqnotifyes. Điều đặc biệt quan trọng là chức kèo bóng đá cúp c2 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 đá cúp c2 cấu trúc dữ liệu được phân bổ bởiPQConnDefaultshoặcPQConnInfoparse.

11696_11751

Một đơn giảnPQFreememsẽ không làm điều này, vì mảng chứa kèo bóng đá cúp c2 tham chiếu đến chuỗi công ty con.

PQENCRYPTPASSWORDCONN

Chuẩn bị mẫu được mã hóa của APostgreSQLMật khẩu.

Char *pqencryptpasswordconn (pgconn *Conn, const char *passwd, const char *user

Hàm này được dự định sẽ được sử dụng bởi kèo bóng đá cúp c2 ứng dụng khách muốn gửi kèo bóng đá cúp c2 lệnh nhưthay đổi mật khẩu joe của người dùng 'PWD'. Thật tốt khi không 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.

ThepasswduserĐối số là mật khẩu Cleartext và tên SQL của người dùng.Thuật toánChỉ định thuật toán mã hóa để sử dụng để mã hóa mật khẩu. kèo bóng đá cúp c2 thuật toán hiện được hỗ trợ làMD5Scram-Sha-256(trênTẮTcũng được chấp nhận làm bí danh choMD5, để tương thích với kèo bóng đá cúp c2 phiên bản máy chủ cũ). Lưu ý rằng hỗ trợ choScram-Sha-256đã được giới thiệu trongPostgreSQLPhiên bản 10 và sẽ không hoạt động chính xác với kèo bóng đá cúp c2 phiên bản máy chủ cũ. Nếu nhưThuật toánnull, Hàm này sẽ truy vấn máy chủ cho giá trị hiện tại củapassword_encryptionCài đặt. Điều đó có thể chặn và sẽ thất bại nếu giao dịch hiện tại bị hủy bỏ hoặc nếu kết nối đang bận thực hiện một truy vấn khác.password_encryptionchính bạn trước khi gọipqencryptpasswordconn, và vượt qua giá trị đó làThuật toán.

Giá trị trả về là một chuỗi được phân bổ bởimalloc. Người gọi có thể giả sử chuỗi không 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ó. Trên lỗi, trả vềnull, và một thông báo phù hợp được lưu trữ trong đối tượng kết nối.

pqencryptpassword

Chuẩn bị mẫu được mã hóa MD5 của APostgreSQLMật khẩu.

char *pqencryptpassword (const char *passwd, const char *user);

pqencryptpasswordlà phiên bản cũ hơn, không dùng nữa củapqencryptpasswordconn. Sự khác biệt làpqencryptpasswordKhông yêu cầu đối tượng kết nối vàMD5luôn được sử dụng làm thuật toán mã hóa.

PQMakeMpTypgresult

Xây dựng trốngpgresultĐối tượng có trạng thái đã cho.

16178_16249

Đây làlibpqcủa chức kèo bóng đá cúp c2 nội bộ để phân bổ và khởi tạo trốngpgresultĐối tượng. Hàm này trả vềnullNếu bộ nhớ không thể được phân bổ. Nó được xuất vì một số ứng dụng thấy hữu ích để tạo kèo bóng đá cúp c2 đối tượng kết quả (đặc biệt là kèo bóng đá cúp c2 đối tượng có trạng thái lỗi).Connkhông 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ếuConnkhông 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ọ không nhận đượcPGEVT_RESULTCREATEcuộc gọi, nhưng xemPQFireresultCreateEvents.) Lưu ý rằngPQClearCuố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 33.13) cho mỗi quy trình sự kiện được đăng ký trongpgresultĐối tượng. Trả về không phải cho thành công, không, nếu có bất kỳ thủ tục sự kiện nào thất bại.

18144_18206

TheConnĐối số được chuyển qua kèo bóng đá cúp c2 thủ tục sự kiện nhưng không được sử dụng trực tiếp. Nó có thể lànullNếu quy trình sự kiện sẽ không sử dụng nó.

Quy trình sự kiện đã nhận đượcPGEVT_RESULTCREATEhoặcPGEVT_RESULTCOPYSự kiện cho đối tượng này không bị bắn nữa.

Lý do chính mà chức kèo bóng đá cúp c2 này tách biệt vớiPQMakeMpTypgresultCó phải là nó thường thích hợp để tạoPGRESULTvà điền vào dữ liệu trước khi gọi kèo bóng đá cúp c2 quy trình sự kiện.

PQCopyresult

Tạo một bản sao của ApgresultĐối tượng. Bản sao không được liên kết với kết quả nguồn theo bất kỳ cách nào vàPQClearphải được gọi khi bản sao không còn cần thiết. Nếu chức kèo bóng đá cúp c2 không thành công,nullđược trả về.

pgresult *pqcopyresult (const pgresult *src, int flags);

Điều này không 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à không 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 đá cúp c2 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 đá cúp c2 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 đá cúp c2 thuộc tính.)pg_copyres_noticehooksChỉ định sao chép kèo bóng đá cúp c2 móc thông báo của kết quả nguồn.pg_copyres_eventsChỉ định sao chép kèo bóng đá cúp c2 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 không được sao chép.)

PQSetResultattrs

Đặt kèo bóng đá cúp c2 thuộc tính của APGRESULTĐối tượng.

20837_20920

đượ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 kèo bóng đá cúp c2 thành công. Nếu nhưresĐã chứa kèo bóng đá cúp c2 thuộc tính, hàm sẽ bị lỗi. Nếu hàm 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.

21788_21872

Hàm 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à hàm 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ịnull, giá trị trường sẽ được đặt thành giá trị null SQL. Thegiá trịđược sao chép vào bộ lưu trữ riêng của kết quả, do đó không còn cần thiết sau khi chức kèo bóng đá cúp c2 trở lại. Nếu hàm 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 kèo bóng đá cúp c2 này sẽ được giải phóng khiresđược xóa. Nếu hàm 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.

PQResultMemorySize

Lấy số lượng byte được phân bổ cho apgresultĐối tượng.

size_t pqresultmemorysize (const pgresult *res);

Giá trị này là tổng của tất cảmallocYêu cầu được liên kết vớipgresultĐối tượng, nghĩa là, tất cả không gian sẽ được giải phóng bởiPQClear. Thông tin này có thể hữu ích để quản lý mức tiêu thụ bộ nhớ.

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 kèo bóng đá cúp c2 này có thể được sử dụng để xác định, tại thời điểm chạy, liệu chức kèo bóng đá cúp c2 cụ thể có sẵn trong phiên bản LIBPQ hiện đang được tải hay không. Chức kèo bóng đá cúp c2 có thể được sử dụng, ví dụ, để xác định tùy chọn kết nối nào có sẵn trongPQConnectDB.

Kết quả được hình thành bằng cách nhân số phiên bản chính của thư viện với 10000 và thêm số phiên bản nhỏ. Ví dụ: Phiên bản 10.1 sẽ được trả lại là 100001 và phiên bản 11.0 sẽ được trả lại là 110000.

Trước phiên bản chính 10,PostgreSQLđã sử dụng số phiên bản ba phần trong đó hai phần đầu tiên cùng nhau đại diện cho phiên bản chính. Cho kèo bóng đá cúp c2 phiên bản đó,PQLibVersionSử dụng hai chữ số cho mỗi phần; Ví dụ: Phiên bản 9.1.5 sẽ được trả lại là 90105 và phiên bản 9.2.0 sẽ được trả về là 90200.

Do đó, với mục đích xác định khả kèo bóng đá cúp c2 tương thích tính kèo bóng đá cúp c2, các ứng dụng nên chia kết quả củaPQLibVersionbởi 100 không 10000 để xác định số phiên bản chính logic. Trong tất cả kèo bóng đá cúp c2 chuỗi phát hành, chỉ có hai chữ số cuối cùng khác nhau giữa kèo bóng đá cúp c2 bản phát hành nhỏ (bản phát hành sửa lỗi).

Lưu ý

Hàm này xuất hiện trongPostgreSQLPhiên bản 9.1, do đó không thể được sử dụng để phát hiện chức kèo bóng đá cúp c2 cần thiết trong các phiên bản trước, vì gọi nó sẽ tạo ra một liên kết phụ thuộc vào phiên bản 9.1 trở lên.

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớpMẫu nàyĐể báo cáo vấn đề tài liệu.