kèo bóng đá euro 9.2.24 Tài liệu | ||||
---|---|---|---|---|
prev | UP | Chương 33.ECPG- nhúngSQLtrong C | Tiếp theo |
Các đối kèo bóng đá euro không được ECPG hỗ trợ trực tiếp, nhưng ECPG
Ứng dụng có thể thao tác các đối kèo bóng đá euro thông qua LibPQ lớn
các chức năng đối tượng, có được cần thiếtPGConnĐối kèo bóng đá euro bằng cách gọiECPGGET_PGCONN ()
Hàm. (Tuy nhiên, sử dụngECPGGET_PGCONN ()
Hàm và
Chạm vàoPGConnđối kèo bóng đá euro trực tiếp nên được
được thực hiện rất cẩn thận và lý tưởng không trộn lẫn với ECPG khác
Các cuộc gọi truy cập cơ sở dữ liệu.)
Để biết thêm chi tiết vềECPGGET_PGCONN ()
, xemPhần 33.11. Để biết thông tin về
Giao diện chức năng đối kèo bóng đá euro, xemChương 32.
Các chức năng đối kèo bóng đá euro phải được gọi trong một giao dịch chặn, vì vậy khi autocommit tắt,bắt đầukèo bóng đá euro lệnh phải được ban hành một cách rõ ràng.
Ví dụ 33-2Hiển thị một chương trình ví dụ minh họa cách tạo, viết và Đọc một đối kèo bóng đá euro trong ứng dụng ECPG.
Ví dụ 33-2. Chương trình ECPG truy cập lớn Đối kèo bóng đá euro
#include <stdio.h #include <stdlib.h #include <libpq-fe.h #include <libpq/libpq-fs.h EXEC SQL Bất cứ khi nào sqlerror dừng lại; int Main (Void) Pgconn *kèo bóng đá euro; Oid loid; int fd; char buf [256]; int buflen = 256; char buf2 [256]; int rc; memset (Buf, 1, Buflen); EXEC SQL kết nối với TestDB dưới dạng con1; kèo bóng đá euro = ECPGGet_PGConn ("Con1"); printf ("kèo bóng đá euro = %p \ n", kèo bóng đá euro); /* tạo nên */ loid = lo_create (kèo bóng đá euro, 0); if (loid & lt; 0) printf ("lo_create () không thành công: %s", pqerrormessage (kèo bóng đá euro)); printf ("loid = %d \ n", loid); / * viết bài kiểm tra */ fd = lo_open (kèo bóng đá euro, loid, inv_read | inv_write); if (fd & lt; 0) printf ("lo_open () không thành công: %s", pqerrormessage (kèo bóng đá euro)); printf ("fd = %d \ n", fd); RC = lo_write (kèo bóng đá euro, FD, BUF, BUFLEN); if (rc & lt; 0) printf ("lo_write () không thành công \ n"); rc = lo_close (kèo bóng đá euro, fd); if (rc & lt; 0) printf ("lo_close () không thành công: %s", pqerrormessage (kèo bóng đá euro)); / * Đọc bài kiểm tra */ fd = lo_open (kèo bóng đá euro, loid, inv_read); if (fd & lt; 0) printf ("lo_open () không thành công: %s", pqerrormessage (kèo bóng đá euro)); printf ("fd = %d \ n", fd); RC = lo_read (kèo bóng đá euro, FD, Buf2, Buflen); if (rc & lt; 0) printf ("lo_read () không thành công \ n"); rc = lo_close (kèo bóng đá euro, fd); if (rc & lt; 0) printf ("lo_close () không thành công: %s", pqerrormessage (kèo bóng đá euro)); /* kiểm tra */ RC = MEMCMP (BUF, BUF2, BUFLEN); printf ("memcmp () = %d \ n", rc); / * Dọn dẹp */ rc = lo_unlink (kèo bóng đá euro, loid); if (rc & lt; 0) printf ("lo_unlink () không thành công: %s", pqerrormessage (kèo bóng đá euro)); Exec sql cam kết; EXEC SQL Ngắt kết nối tất cả; trả lại 0;