Phiên bản kèo bóng đá c1 được hỗ trợ:6.3
Tài kèo bóng đá c1 này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong kèo bóng đá c1 phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.
kèo bóng đá c1
prev kèo bóng đá c1 44. libpq NEXT

Mẫu Chương kèo bóng đá c1

Mẫu Chương kèo bóng đá c1 1

/*
          * testlibpq.c
          * Kiểm tra phiên bản C của libpq, thư viện Frontgres Frontend.
          *
          *
          */
         #include <stdio.h
         #include "libpq-fe.h"

         Vô hiệu
         exit_nicely (pgconn* Conn)

           Pqfinish (Conn);
           Thoát (1);

         chủ yếu()

           char *pghost, *pgport, *pgOptions, *pgtty;
           char* dbname;
           int nfields;
           int i, j;

         / * Tập tin * gỡ lỗi; */

           Pgconn* Conn;
           Pgresult* kèo bóng đá c1;

           /* Bắt đầu, bằng cách đặt các tham số cho kết nối phụ trợ
              Nếu các tham số là NULL, thì hệ thống sẽ cố gắng sử dụng
              Mặc định hợp lý bằng cách tìm kiếm các biến môi trường
              Hoặc, không thành công, sử dụng các hằng số cứng */
           pghost = null;  / * tên máy chủ của máy chủ phụ trợ */
           pgport = null;  / * cổng của máy chủ phụ trợ */
           pgOptions = null; / * Các tùy chọn đặc biệt để khởi động máy chủ phụ trợ */
           pgtty = null;     / * gỡ lỗi tty cho máy chủ phụ trợ *//
           dbname = "template1";

           / * Tạo kết nối với cơ sở dữ liệu */
           Conn = pqsetDB (pghost, pgport, pgOptions, pgtty, dbname);

           / * Kiểm tra xem kết nối phụ trợ đã được thực hiện thành công */
           if (pqstatus (Conn) == Connection_bad) 
             fprintf (stderr, "kết nối với cơ sở dữ liệu '%s' không thành công.0, dbname);
             fprintf (stderr, "%s", pqerrormessage (Conn));
             exit_nicely (Conn);

         /* gỡ lỗi = fopen ("/tmp/trace.out", "w");  */
         /* Pqtrace (Conn, gỡ lỗi);  */

           / * Bắt đầu một khối giao dịch */

           kèo bóng đá c1 = pqExec (Conn, "bắt đầu");
           if (pqresultstatus (kèo bóng đá c1)! = pgres_command_ok) 
             fprintf (stderr, "lệnh bắt đầu không thành công0);
             PQCLEAR (kèo bóng đá c1);
             exit_nicely (Conn);

           /* PQClear pgresult nên không còn cần thiết để tránh
              rò rỉ bộ nhớ */
           PQCLEAR (kèo bóng đá c1);

           /* Tìm nạp các phiên bản từ PG_DATABASE, Danh mục hệ thống của cơ sở dữ liệu*//
           kèo bóng đá c1 = pqExec (Conn, "khai báo con trỏ myportal cho chọn * từ pg_database");
           if (pqresultstatus (kèo bóng đá c1)! = pgres_command_ok) 
             fprintf (stderr, "tuyên bố lệnh con trỏ không thành công);
             PQCLEAR (kèo bóng đá c1);
             exit_nicely (Conn);

           PQCLEAR (kèo bóng đá c1);

           kèo bóng đá c1 = pqExec (Conn, "tìm nạp tất cả trong myportal");
           if (pqresultstatus (kèo bóng đá c1)! = pgres_tuples_ok) 
             fprintf (stderr, "tìm nạp tất cả các lệnh không trả về các bộ dữ liệu chính xác0);
             PQCLEAR (kèo bóng đá c1);
             exit_nicely (Conn);

           / * Đầu tiên, in ra tên thuộc tính */
           nfields = pqnfields (kèo bóng đá c1);
           for (i = 0; i <nfields; i ++) 
             printf ("%-15s", pqfname (kèo bóng đá c1, i));

           printf ("0);

           / * Tiếp theo, in ra các trường hợp */
           for (i = 0; i <pqntuples (kèo bóng đá c1); i ++) 
             for (j = 0; j <nfields; j ++) 
               printf ("%-15s", pqgetValue (kèo bóng đá c1, i, j));

             printf ("0);

           PQCLEAR (kèo bóng đá c1);

           / * Đóng cổng */
           kèo bóng đá c1 = pqExec (Conn, "Đóng myportal");
           PQCLEAR (kèo bóng đá c1);

           / * kết thúc giao dịch */
           kèo bóng đá c1 = pqExec (Conn, "end");
           PQCLEAR (kèo bóng đá c1);

           / * Đóng kết nối với cơ sở dữ liệu và dọn dẹp */
           Pqfinish (Conn);

         /* fclose (gỡ lỗi); */

Mẫu Chương kèo bóng đá c1 2

/*
          * testlibpq2.c
          * Kiểm tra giao diện thông báo không đồng bộ
          *
            Tập hợp một cơ sở dữ liệu với các mục sau:

         Tạo bảng tbl1 (i int4);

         Tạo bảng tbl2 (i int4);

         Tạo quy tắc R1 như khi chèn vào tbl1 do [chèn vào các giá trị tbl2 (new.i); Thông báo cho TBL2];

          * Sau đó bắt đầu chương trình này
          * Sau khi chương trình đã bắt đầu, làm

         Chèn vào các giá trị TBL1 (10);

          *
          *
          */
         #include <stdio.h
         #include "libpq-fe.h"

         void exit_nicely (pgconn* Conn)

           Pqfinish (Conn);
           Thoát (1);

         chủ yếu()

           char *pghost, *pgport, *pgOptions, *pgtty;
           char* dbname;
           int nfields;
           int i, j;

           Pgconn* Conn;
           Pgresult* kèo bóng đá c1;
           Pgnotify* thông báo;

           /* Bắt đầu, bằng cách đặt các tham số cho kết nối phụ trợ
              Nếu các tham số là NULL, thì hệ thống sẽ cố gắng sử dụng
              Mặc định hợp lý bằng cách tìm kiếm các biến môi trường
              Hoặc, không thành công, sử dụng các hằng số cứng */
           pghost = null;  / * tên máy chủ của máy chủ phụ trợ */
           pgport = null;  / * cổng của máy chủ phụ trợ */
           pgOptions = null; / * Các tùy chọn đặc biệt để khởi động máy chủ phụ trợ */
           pgtty = null;     / * gỡ lỗi tty cho máy chủ phụ trợ *//
           dbname = getenv ("người dùng"); /* Thay đổi cái này thành tên của cơ sở dữ liệu kiểm tra của bạn*//

           / * Tạo kết nối với cơ sở dữ liệu */
           Conn = pqsetDB (pghost, pgport, pgOptions, pgtty, dbname);

           / * Kiểm tra xem kết nối phụ trợ đã được thực hiện thành công */
           if (pqstatus (Conn) == Connection_bad) 
             fprintf (stderr, "kết nối với cơ sở dữ liệu '%s' không thành công.0, dbname);
             fprintf (stderr, "%s", pqerrormessage (Conn));
             exit_nicely (Conn);

           kèo bóng đá c1 = pQExec (Conn, "Nghe TBL2");
           if (pqresultstatus (kèo bóng đá c1)! = pgres_command_ok) 
             fprintf (stderr, "lệnh nghe không thành công0);
             PQCLEAR (kèo bóng đá c1);
             exit_nicely (Conn);

           /* PQClear pgresult nên không còn cần thiết để tránh
              rò rỉ bộ nhớ */
           PQCLEAR (kèo bóng đá c1);

           while (1) 
               /* Thông báo Async chỉ quay lại do truy vấn*//
               / * Chúng tôi có thể gửi các truy vấn trống */
               kèo bóng đá c1 = pqExec (Conn, "");
         / * printf ("kèo bóng đá c1- status = %s0, pressTatus [pqresultstatus (kèo bóng đá c1)]); *//
               / * Kiểm tra lợi nhuận không đồng bộ *//
               thông báo = pqnotifyes (Conn);
               if (thông báo) 
                fprintf (stderr,
                     "Async thông báo về '%s' từ phụ trợ pid '%d' nhận được0,
                     thông báo- relname, thông báo- be_pid);
                miễn phí (thông báo);
                phá vỡ;

               PQCLEAR (kèo bóng đá c1);

           / * Đóng kết nối với cơ sở dữ liệu và dọn dẹp */
           Pqfinish (Conn);

Mẫu Chương kèo bóng đá c1 3

/*
          * Testlibpq3.c
          * Kiểm tra phiên bản C của libpq, thư viện Frontgres Frontend.
          * Kiểm tra giao diện con trỏ nhị phân
          *
          *
          *
          Tập hợp một cơ sở dữ liệu bằng cách thực hiện như sau:

         Tạo bảng Test1 (I Int4, D Float4, P Polygon);

         Chèn vào các giá trị Test1 (1, 3.567, '(3.0, 4.0, 1.0, 2.0)' :: polygon);

         Chèn vào các giá trị Test1 (2, 89,05, '(4.0, 3.0, 2.0, 1.0)' :: polygon);

          Đầu ra dự kiến ​​là:

         Tuple 0: Có
          i = (4 byte) 1,
          d = (4 byte) 3.567000,
          p = (4 byte) 2 điểm giới hạn hộp số = (HI = 3.000000/4.000000, LO = 1.000000,2.00000000)
         Tuple 1: Có
          i = (4 byte) 2,
          d = (4 byte) 89.050003,
          P = (4 byte) 2 điểm giới hạn hộp = (HI = 4.000000/3.000000, LO = 2.000000,1.00000000)

          *
          */
         #include <stdio.h
         #include "libpq-fe.h"
         #include "Utils/Geo-decls.h"/ * cho loại đa giác */

         void exit_nicely (pgconn* Conn)

           Pqfinish (Conn);
           Thoát (1);

         chủ yếu()

           char *pghost, *pgport, *pgOptions, *pgtty;
           char* dbname;
           int nfields;
           int i, j;
           int i_fnum, d_fnum, p_fnum;

           Pgconn* Conn;
           Pgresult* kèo bóng đá c1;

           /* Bắt đầu, bằng cách đặt các tham số cho kết nối phụ trợ
              Nếu các tham số là NULL, thì hệ thống sẽ cố gắng sử dụng
              Mặc định hợp lý bằng cách tìm kiếm các biến môi trường
              Hoặc, không thành công, sử dụng các hằng số cứng */
           pghost = null;  / * tên máy chủ của máy chủ phụ trợ */
           pgport = null;  / * cổng của máy chủ phụ trợ */
           pgOptions = null; / * Các tùy chọn đặc biệt để khởi động máy chủ phụ trợ */
           pgtty = null;     / * gỡ lỗi tty cho máy chủ phụ trợ *//

           dbname = getenv ("người dùng");  /* Thay đổi cái này thành tên của cơ sở dữ liệu kiểm tra của bạn*//

           / * Tạo kết nối với cơ sở dữ liệu */
           Conn = pqsetDB (pghost, pgport, pgOptions, pgtty, dbname);

           / * Kiểm tra xem kết nối phụ trợ đã được thực hiện thành công */
           if (pqstatus (Conn) == Connection_bad) 
             fprintf (stderr, "kết nối với cơ sở dữ liệu '%s' không thành công.0, dbname);
             fprintf (stderr, "%s", pqerrormessage (Conn));
             exit_nicely (Conn);

           / * Bắt đầu một khối giao dịch */
           kèo bóng đá c1 = pqExec (Conn, "bắt đầu");
           if (pqresultstatus (kèo bóng đá c1)! = pgres_command_ok) 
             fprintf (stderr, "lệnh bắt đầu không thành công0);
             PQCLEAR (kèo bóng đá c1);
             exit_nicely (Conn);

           /* PQClear pgresult nên không còn cần thiết để tránh
              rò rỉ bộ nhớ */
           PQCLEAR (kèo bóng đá c1);

           /* Tìm nạp các phiên bản từ PG_DATABASE, Danh mục hệ thống của cơ sở dữ liệu*//
           kèo bóng đá c1 = pqExec (Conn, "khai báo con trỏ nhị phân Mycursor cho Chọn * từ Test1");
           if (pqresultstatus (kèo bóng đá c1)! = pgres_command_ok) 
             fprintf (stderr, "tuyên bố lệnh con trỏ không thành công);
             PQCLEAR (kèo bóng đá c1);
             exit_nicely (Conn);

           PQCLEAR (kèo bóng đá c1);

           kèo bóng đá c1 = pqExec (Conn, "tìm nạp tất cả trong mycursor");
           if (pqresultstatus (kèo bóng đá c1)! = pgres_tuples_ok) 
             fprintf (stderr, "tìm nạp tất cả các lệnh không trả về các bộ dữ liệu chính xác0);
             PQCLEAR (kèo bóng đá c1);
             exit_nicely (Conn);

           i_fnum = pqfnumber (kèo bóng đá c1, "i");
           d_fnum = pqfnumber (kèo bóng đá c1, "d");
           p_fnum = pqfnumber (kèo bóng đá c1, "p");

           for (i = 0; i <3; i ++) 
               printf ("Loại [ %d] = %d, kích thước [ %d] = %d0,
                   i, pqfttype (kèo bóng đá c1, i),
                   i, pqfsize (kèo bóng đá c1, i));

           for (i = 0; i <pqntuples (kèo bóng đá c1); i ++) 
             int *ival;
             float *dval;
             int plen;
             Đa giác* pval;
             /*/
             Ival = (int*) pqgetValue (kèo bóng đá c1, i, i_fnum);
             dval = (float*) pqgetValue (kèo bóng đá c1, i, d_fnum);
             plen = pQGetLpm (kèo bóng đá c1, i, p_fnum);

             /* plen không bao gồm trường Độ dài, vì vậy cần phải tăng theo VarHDSZ*/
             pval = (polygon*) malloc (plen + varhdrsz);
             pval- size = plen;
             memmove ((char*) & pval- npts, pqgetValue (kèo bóng đá c1, i, p_fnum), plen);
             printf ("tuple %d: got0, i);
             printf ("i = ( %d byte) %d, 0,
                 PQGetLpm (kèo bóng đá c1, i, i_fnum), *ival);
             printf ("d = ( %d byte) %f, 0,
                 PQGetLpm (kèo bóng đá c1, i, d_fnum), *dval);
             printf ("p = (%d byte)%d điểm giới hạn = (hi =%f/%f, lo =%f,%f) 0,
                 PQGetLpm (kèo bóng đá c1, i, d_fnum),
                 pval- npts,
                 pval- boundbox.xh,
                 pval- boundbox.yh,
                 pval- boundbox.xl,
                 pval- boundbox.yl);

           PQCLEAR (kèo bóng đá c1);

           / * Đóng cổng */
           kèo bóng đá c1 = pQExec (Conn, "Đóng Mycursor");
           PQCLEAR (kèo bóng đá c1);

           / * kết thúc giao dịch */
           kèo bóng đá c1 = pqExec (Conn, "end");
           PQCLEAR (kèo bóng đá c1);

           / * Đóng kết nối với cơ sở dữ liệu và dọn dẹp */
           Pqfinish (Conn);

prev Trang chủ Tiếp theo
BUGS UP PGTCL