From 2f4275327e2b0e772bbc225ea0a174a15784d494 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Thu, 25 Sep 1997 16:35:52 +0000 Subject: [PATCH] Massive examples fix from Nicola Bernardelli --- src/include/utils/geo_decls.h | 3 +- src/test/examples/Makefile | 3 +- src/test/examples/testlibpq.c | 3 +- src/test/examples/testlibpq2.c | 13 +++++---- src/test/examples/testlibpq3.c | 25 ++++++++++------- src/test/examples/testlibpq4.c | 62 ++++++++++++++++++++++-------------------- src/test/examples/testlo.c | 13 +++++---- src/test/examples/testlo2.c | 15 ++++++---- 8 files changed, 78 insertions(+), 59 deletions(-) diff --git a/src/include/utils/geo_decls.h b/src/include/utils/geo_decls.h index d0b288e572..7904354a12 100644 --- a/src/include/utils/geo_decls.h +++ b/src/include/utils/geo_decls.h @@ -5,7 +5,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: geo_decls.h,v 1.13 1997/09/20 16:25:28 thomas Exp $ + * $Id: geo_decls.h,v 1.14 1997/09/25 16:35:36 momjian Exp $ * * NOTE * These routines do *not* use the float types from adt/. @@ -20,6 +20,7 @@ #define GEO_DECLS_H #include "access/attnum.h" +#include "postgres.h" /* float8 */ /*#ifndef FmgrIncluded -- seems like always included. (it's FMgrIncluded) AY */ diff --git a/src/test/examples/Makefile b/src/test/examples/Makefile index dd33f071f2..2329b3131f 100644 --- a/src/test/examples/Makefile +++ b/src/test/examples/Makefile @@ -17,7 +17,8 @@ LDFLAGS+= $(KRBLIBS) CFLAGS+= $(KRBFLAGS) endif -PROGS= testlibpq0 testlibpq1 testlibpq2 testlibpq3 testlibpq4 testlo +# PROGS= testlibpq0 testlibpq1 testlibpq2 testlibpq3 testlibpq4 testlo +PROGS = testlibpq testlibpq2 testlibpq3 testlibpq4 testlo testlo2 all: $(PROGS) diff --git a/src/test/examples/testlibpq.c b/src/test/examples/testlibpq.c index d3a0d67ea3..84973df807 100644 --- a/src/test/examples/testlibpq.c +++ b/src/test/examples/testlibpq.c @@ -7,13 +7,14 @@ #include #include "libpq-fe.h" -void +static void exit_nicely(PGconn *conn) { PQfinish(conn); exit(1); } +int main() { char *pghost, diff --git a/src/test/examples/testlibpq2.c b/src/test/examples/testlibpq2.c index c147170e7f..214a3cbc15 100644 --- a/src/test/examples/testlibpq2.c +++ b/src/test/examples/testlibpq2.c @@ -19,15 +19,17 @@ INSERT INTO TBL1 values (10); * */ #include +#include #include "libpq-fe.h" -void +static void exit_nicely(PGconn *conn) { PQfinish(conn); exit(1); } +int main() { char *pghost, @@ -35,9 +37,10 @@ main() *pgoptions, *pgtty; char *dbName; - int nFields; - int i, - j; + /* int nFields; + * int i, + * j; + */ PGconn *conn; PGresult *res; @@ -103,5 +106,5 @@ main() /* close the connection to the database and cleanup */ PQfinish(conn); - + return 0; /* Though PQfinish(conn1) has called exit(1) */ } diff --git a/src/test/examples/testlibpq3.c b/src/test/examples/testlibpq3.c index e11ad1a2f9..8051da58cf 100644 --- a/src/test/examples/testlibpq3.c +++ b/src/test/examples/testlibpq3.c @@ -27,16 +27,19 @@ tuple 1: got * */ #include +#include +#include "postgres.h" /* -> "c.h" -> int16, in access/attnum.h */ #include "libpq-fe.h" -#include "utils/geo-decls.h" /* for the POLYGON type */ +#include "utils/geo_decls.h" /* for the POLYGON type */ -void +static void exit_nicely(PGconn *conn) { PQfinish(conn); exit(1); } +int main() { char *pghost, @@ -44,9 +47,11 @@ main() *pgoptions, *pgtty; char *dbName; - int nFields; - int i, - j; + /* int nFields; + * int i, + * j; + */ + int i; int i_fnum, d_fnum, p_fnum; @@ -157,10 +162,10 @@ main() printf(" p = (%d bytes) %d points \tboundbox = (hi=%f/%f, lo = %f,%f)\n", PQgetlength(res, i, d_fnum), pval->npts, - pval->boundbox.xh, - pval->boundbox.yh, - pval->boundbox.xl, - pval->boundbox.yl); + pval->boundbox.high.x, + pval->boundbox.high.y, + pval->boundbox.low.x, + pval->boundbox.low.y); } PQclear(res); @@ -175,5 +180,5 @@ main() /* close the connection to the database and cleanup */ PQfinish(conn); - + return 0; /* Though PQfinish(conn1) has called exit(1) */ } diff --git a/src/test/examples/testlibpq4.c b/src/test/examples/testlibpq4.c index 831f765d4e..7f211dbe54 100644 --- a/src/test/examples/testlibpq4.c +++ b/src/test/examples/testlibpq4.c @@ -8,7 +8,7 @@ #include #include "libpq-fe.h" -void +static void exit_nicely(PGconn *conn1, PGconn *conn2) { if (conn1) @@ -18,8 +18,8 @@ exit_nicely(PGconn *conn1, PGconn *conn2) exit(1); } -void -check_conn(PGconn *conn) +static void +check_conn(PGconn *conn, const char* dbName) { /* check to see that the backend connection was successfully made */ if (PQstatus(conn) == CONNECTION_BAD) @@ -30,23 +30,26 @@ check_conn(PGconn *conn) } } -main() +int +main(int argc, char** argv) { char *pghost, *pgport, *pgoptions, *pgtty; char *dbName1, - dbName2; + *dbName2; char *tblName; int nFields; int i, j; PGconn *conn1, - conn2; - PGresult *res1, - res2; + *conn2; + /* PGresult *res1, + * *res2; + */ + PGresult *res1; if (argc != 4) { @@ -73,10 +76,10 @@ main() /* make a connection to the database */ conn1 = PQsetdb(pghost, pgport, pgoptions, pgtty, dbName1); - check_conn(conn1); + check_conn(conn1, dbName1); conn2 = PQsetdb(pghost, pgport, pgoptions, pgtty, dbName2); - check_conn(conn2); + check_conn(conn2, dbName2); /* start a transaction block */ res1 = PQexec(conn1, "BEGIN"); @@ -97,53 +100,54 @@ main() * fetch instances from the pg_database, the system catalog of * databases */ - res = PQexec(conn, "DECLARE myportal CURSOR FOR select * from pg_database"); - if (PQresultStatus(res) != PGRES_COMMAND_OK) + res1 = PQexec(conn1, "DECLARE myportal CURSOR FOR select * from pg_database"); + if (PQresultStatus(res1) != PGRES_COMMAND_OK) { fprintf(stderr, "DECLARE CURSOR command failed\n"); - PQclear(res); - exit_nicely(conn); + PQclear(res1); + exit_nicely(conn1,(PGconn*)NULL); } - PQclear(res); + PQclear(res1); - res = PQexec(conn, "FETCH ALL in myportal"); - if (PQresultStatus(res) != PGRES_TUPLES_OK) + res1 = PQexec(conn1, "FETCH ALL in myportal"); + if (PQresultStatus(res1) != PGRES_TUPLES_OK) { fprintf(stderr, "FETCH ALL command didn't return tuples properly\n"); - PQclear(res); - exit_nicely(conn); + PQclear(res1); + exit_nicely(conn1,(PGconn*)NULL); } /* first, print out the attribute names */ - nFields = PQnfields(res); + nFields = PQnfields(res1); for (i = 0; i < nFields; i++) { - printf("%-15s", PQfname(res, i)); + printf("%-15s", PQfname(res1, i)); } printf("\n\n"); /* next, print out the instances */ - for (i = 0; i < PQntuples(res); i++) + for (i = 0; i < PQntuples(res1); i++) { for (j = 0; j < nFields; j++) { - printf("%-15s", PQgetvalue(res, i, j)); + printf("%-15s", PQgetvalue(res1, i, j)); } printf("\n"); } - PQclear(res); + PQclear(res1); /* close the portal */ - res = PQexec(conn, "CLOSE myportal"); - PQclear(res); + res1 = PQexec(conn1, "CLOSE myportal"); + PQclear(res1); /* end the transaction */ - res = PQexec(conn, "END"); - PQclear(res); + res1 = PQexec(conn1, "END"); + PQclear(res1); /* close the connection to the database and cleanup */ - PQfinish(conn); + PQfinish(conn1); /* fclose(debug); */ + return 0; /* Though PQfinish(conn1) has called exit(1) */ } diff --git a/src/test/examples/testlo.c b/src/test/examples/testlo.c index d7268284eb..972894fdf9 100644 --- a/src/test/examples/testlo.c +++ b/src/test/examples/testlo.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/test/examples/testlo.c,v 1.6 1997/09/08 21:55:56 momjian Exp $ + * $Header: /cvsroot/pgsql/src/test/examples/testlo.c,v 1.7 1997/09/25 16:35:50 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -17,6 +17,7 @@ #include #include #include +#include #include "libpq-fe.h" #include "libpq/libpq-fs.h" @@ -28,7 +29,7 @@ * import file "in_filename" into database as large object "lobjOid" * */ -Oid +static Oid importFile(PGconn *conn, char *filename) { Oid lobjId; @@ -76,7 +77,7 @@ importFile(PGconn *conn, char *filename) return lobjId; } -void +static void pickout(PGconn *conn, Oid lobjId, int start, int len) { int lobj_fd; @@ -106,7 +107,7 @@ pickout(PGconn *conn, Oid lobjId, int start, int len) lo_close(conn, lobj_fd); } -void +static void overwrite(PGconn *conn, Oid lobjId, int start, int len) { int lobj_fd; @@ -145,7 +146,7 @@ overwrite(PGconn *conn, Oid lobjId, int start, int len) * export large object "lobjOid" to file "out_filename" * */ -void +static void exportFile(PGconn *conn, Oid lobjId, char *filename) { int lobj_fd; @@ -193,7 +194,7 @@ exportFile(PGconn *conn, Oid lobjId, char *filename) return; } -void +static void exit_nicely(PGconn *conn) { PQfinish(conn); diff --git a/src/test/examples/testlo2.c b/src/test/examples/testlo2.c index cb3baeb5d9..f23ded8458 100644 --- a/src/test/examples/testlo2.c +++ b/src/test/examples/testlo2.c @@ -7,11 +7,14 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/test/examples/Attic/testlo2.c,v 1.5 1997/09/08 21:55:57 momjian Exp $ + * $Header: /cvsroot/pgsql/src/test/examples/Attic/testlo2.c,v 1.6 1997/09/25 16:35:52 momjian Exp $ * *------------------------------------------------------------------------- */ +#include #include +#include +#include #include "libpq-fe.h" #include "libpq/libpq-fs.h" @@ -22,7 +25,7 @@ * import file "in_filename" into database as large object "lobjOid" * */ -Oid +static Oid importFile(PGconn *conn, char *filename) { Oid lobjId; @@ -70,7 +73,7 @@ importFile(PGconn *conn, char *filename) return lobjId; } -void +static void pickout(PGconn *conn, Oid lobjId, int start, int len) { int lobj_fd; @@ -100,7 +103,7 @@ pickout(PGconn *conn, Oid lobjId, int start, int len) lo_close(conn, lobj_fd); } -void +static void overwrite(PGconn *conn, Oid lobjId, int start, int len) { int lobj_fd; @@ -139,7 +142,7 @@ overwrite(PGconn *conn, Oid lobjId, int start, int len) * export large object "lobjOid" to file "out_filename" * */ -void +static void exportFile(PGconn *conn, Oid lobjId, char *filename) { int lobj_fd; @@ -187,7 +190,7 @@ exportFile(PGconn *conn, Oid lobjId, char *filename) return; } -void +static void exit_nicely(PGconn *conn) { PQfinish(conn); -- 2.11.0