Index: doc/src/sgml/libpq++.sgml
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/doc/src/sgml/libpq++.sgml,v
retrieving revision 1.25
diff -c -r1.25 libpq++.sgml
*** doc/src/sgml/libpq++.sgml 2001/04/30 04:26:01 1.25
--- doc/src/sgml/libpq++.sgml 2001/04/30 17:18:22
***************
*** 283,288 ****
--- 283,291 ----
Query Execution Functions
+
+
+ Main Routines
***************
*** 352,357 ****
--- 355,367 ----
+
+
+
+
+ Retrieving SELECT Result Information
+
+
Tuples
***************
*** 363,378 ****
- CmdTuples
- Returns the number of rows affected after an INSERT, UPDATE or DELETE.
- If the command was anything else, it returns -1.
-
- int PgDatabase::CmdTuples()
-
-
-
-
-
Fields
Returns the number of fields (attributes) in each tuple of the query result.
--- 373,378 ----
***************
*** 451,456 ****
--- 451,464 ----
variable size.
+
+
+
+
+
+ Retrieving SELECT Result Values
+
+
GetValue
***************
*** 541,567 ****
! GetLine
! int PgDatabase::GetLine(char* string, int length)
! PutLine
! void PgDatabase::PutLine(const char* string)
! OidStatus
! const char *PgDatabase::OidStatus()
--- 549,600 ----
+
+
+
+
+ Retrieving Non-SELECT Result Information
+
+
! CmdTuples
! Returns the number of rows affected after an INSERT, UPDATE or DELETE.
! If the command was anything else, it returns -1.
! int PgDatabase::CmdTuples()
+
! OidStatus
! const char *PgDatabase::OidStatus()
+
+
+
+
+ Handling COPY Queries
+
+
! GetLine
! int PgDatabase::GetLine(char* string, int length)
!
!
!
!
!
! PutLine
!
! void PgDatabase::PutLine(const char* string)
***************
*** 575,581 ****
!
Asynchronous Notification
--- 608,616 ----
!
!
!
Asynchronous Notification
Index: doc/src/sgml/libpq.sgml
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/doc/src/sgml/libpq.sgml,v
retrieving revision 1.59
diff -c -r1.59 libpq.sgml
*** doc/src/sgml/libpq.sgml 2001/03/21 19:09:03 1.59
--- doc/src/sgml/libpq.sgml 2001/04/30 17:18:33
***************
*** 696,701 ****
--- 696,703 ----
Once a connection to a database server has been successfully
established, the functions described here are used to perform
SQL queries and commands.
+
+ Main Routines
***************
*** 809,814 ****
--- 811,856 ----
+ PQclear
+ Frees the storage associated with the PGresult.
+ Every query result should be freed via PQclear when
+ it is no longer needed.
+
+ void PQclear(PQresult *res);
+
+ You can keep a PGresult object around for as long as you
+ need it; it does not go away when you issue a new query,
+ nor even if you close the connection. To get rid of it,
+ you must call PQclear. Failure to do this will
+ result in memory leaks in the frontend application.
+
+
+
+
+
+ PQmakeEmptyPGresult
+ Constructs an empty PGresult object with the given status.
+
+ PGresult* PQmakeEmptyPGresult(PGconn *conn, ExecStatusType status);
+
+ This is libpq's internal routine to allocate and initialize an empty
+ PGresult object. It is exported because some applications find it
+ useful to generate result objects (particularly objects with error
+ status) themselves. If conn is not NULL and status indicates an error,
+ the connection's current errorMessage is copied into the PGresult.
+ Note that PQclear should eventually be called on the object, just
+ as with a PGresult returned by libpq itself.
+
+
+
+
+
+
+ Retrieving SELECT Result Information
+
+
+
+
PQntuples
Returns the number of tuples (rows)
in the query result.
***************
*** 829,851 ****
-
-
- PQbinaryTuples
- Returns 1 if the PGresult contains binary tuple data,
- 0 if it contains ASCII data.
-
- int PQbinaryTuples(const PGresult *res);
-
- Currently, binary tuple data can only be returned by a query that
- extracts data from a BINARY cursor.
-
-
PQfname
! Returns the field (attribute) name associated with the given field index.
Field indices start at 0.
char *PQfname(const PGresult *res,
--- 871,881 ----
PQfname
! Returns the field (attribute) name associated with the given field index.
Field indices start at 0.
char *PQfname(const PGresult *res,
***************
*** 890,895 ****
--- 920,938 ----
+ PQfmod
+ Returns the type-specific modification data of the field
+ associated with the given field index.
+ Field indices start at 0.
+
+ int PQfmod(const PGresult *res,
+ int field_index);
+
+
+
+
+
+
PQfsize
Returns the size in bytes of the field
associated with the given field index.
***************
*** 902,922 ****
tuple, in other words the size of the server's binary representation
of the data type. -1 is returned if the field is variable size.
! PQfmod
! Returns the type-specific modification data of the field
! associated with the given field index.
! Field indices start at 0.
! int PQfmod(const PGresult *res,
! int field_index);
PQgetvalue
--- 945,972 ----
tuple, in other words the size of the server's binary representation
of the data type. -1 is returned if the field is variable size.
+
! PQbinaryTuples
! Returns 1 if the PGresult contains binary tuple data,
! 0 if it contains ASCII data.
! int PQbinaryTuples(const PGresult *res);
+ Currently, binary tuple data can only be returned by a query that
+ extracts data from a BINARY cursor.
+
+
+
+
+ Retrieving SELECT Result Values
+
PQgetvalue
***************
*** 947,954 ****
PQgetlength
! Returns the length of a field (attribute) in bytes.
Tuple and field indices start at 0.
int PQgetlength(const PGresult *res,
--- 997,1021 ----
+ PQgetisnull
+ Tests a field for a NULL entry.
+ Tuple and field indices start at 0.
+
+ int PQgetisnull(const PGresult *res,
+ int tup_num,
+ int field_num);
+
+ This function returns 1 if the field contains a NULL, 0 if
+ it contains a non-null value. (Note that PQgetvalue
+ will return an empty string, not a null pointer, for a NULL
+ field.)
+
+
+
+
+
PQgetlength
! Returns the length of a field (attribute) value in bytes.
Tuple and field indices start at 0.
int PQgetlength(const PGresult *res,
***************
*** 963,983 ****
! PQgetisnull
! Tests a field for a NULL entry.
! Tuple and field indices start at 0.
!
! int PQgetisnull(const PGresult *res,
! int tup_num,
! int field_num);
!
! This function returns 1 if the field contains a NULL, 0 if
! it contains a non-null value. (Note that PQgetvalue
! will return an empty string, not a null pointer, for a NULL
! field.)
PQcmdStatus
--- 1030,1068 ----
! PQprint
! Prints out all the tuples and, optionally, the
! attribute names to the specified output stream.
!
! void PQprint(FILE* fout, /* output stream */
! const PGresult *res,
! const PQprintOpt *po);
!
! struct {
! pqbool header; /* print output field headings and row count */
! pqbool align; /* fill align the fields */
! pqbool standard; /* old brain dead format */
! pqbool html3; /* output html tables */
! pqbool expanded; /* expand tables */
! pqbool pager; /* use pager for output if needed */
! char *fieldSep; /* field separator */
! char *tableOpt; /* insert to HTML table ... */
! char *caption; /* HTML caption */
! char **fieldName; /* null terminated array of replacement field names */
! } PQprintOpt;
!
! This function was formerly used by psql
! to print query results, but this is no longer the case and this
! function is no longer actively supported.
+
+
+
+ Retrieving Non-SELECT Result Information
+
+
PQcmdStatus
***************
*** 1032,1101 ****
-
-
- PQprint
- Prints out all the tuples and, optionally, the
- attribute names to the specified output stream.
-
- void PQprint(FILE* fout, /* output stream */
- const PGresult *res,
- const PQprintOpt *po);
-
- struct {
- pqbool header; /* print output field headings and row count */
- pqbool align; /* fill align the fields */
- pqbool standard; /* old brain dead format */
- pqbool html3; /* output html tables */
- pqbool expanded; /* expand tables */
- pqbool pager; /* use pager for output if needed */
- char *fieldSep; /* field separator */
- char *tableOpt; /* insert to HTML table ... */
- char *caption; /* HTML caption */
- char **fieldName; /* null terminated array of replacement field names */
- } PQprintOpt;
-
- This function was formerly used by psql
- to print query results, but this is no longer the case and this
- function is no longer actively supported.
-
-
-
-
-
- PQclear
- Frees the storage associated with the PGresult.
- Every query result should be freed via PQclear when
- it is no longer needed.
-
- void PQclear(PQresult *res);
-
- You can keep a PGresult object around for as long as you
- need it; it does not go away when you issue a new query,
- nor even if you close the connection. To get rid of it,
- you must call PQclear. Failure to do this will
- result in memory leaks in the frontend application.
-
-
-
-
-
- PQmakeEmptyPGresult
- Constructs an empty PGresult object with the given status.
-
- PGresult* PQmakeEmptyPGresult(PGconn *conn, ExecStatusType status);
-
- This is libpq's internal routine to allocate and initialize an empty
- PGresult object. It is exported because some applications find it
- useful to generate result objects (particularly objects with error
- status) themselves. If conn is not NULL and status indicates an error,
- the connection's current errorMessage is copied into the PGresult.
- Note that PQclear should eventually be called on the object, just
- as with a PGresult returned by libpq itself.
-
-
--- 1117,1125 ----
+