aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2001-08-10 22:50:10 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2001-08-10 22:50:10 +0000
commit135dea6322ef925234c2fe9224536185b5cfcc46 (patch)
tree3a5aefe767c6879c60dcf193eb048e9d96d9cddc
parent633b5d5653d360bb6acbbc2f142f04a90372e32c (diff)
downloadpostgresql-135dea6322ef925234c2fe9224536185b5cfcc46.tar.gz
postgresql-135dea6322ef925234c2fe9224536185b5cfcc46.zip
Since PQoidStatus is deprecated, we should probably stop using it in
our own code ...
-rw-r--r--doc/src/sgml/libpq.sgml15
-rw-r--r--src/bin/pg_dump/pg_dump.c4
-rw-r--r--src/interfaces/ecpg/lib/execute.c6
-rw-r--r--src/interfaces/libpgtcl/pgtclCmds.c13
4 files changed, 22 insertions, 16 deletions
diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml
index 7e16dee59a1..edda51533fe 100644
--- a/doc/src/sgml/libpq.sgml
+++ b/doc/src/sgml/libpq.sgml
@@ -1,5 +1,5 @@
<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/libpq.sgml,v 1.65 2001/08/10 14:42:47 momjian Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/libpq.sgml,v 1.66 2001/08/10 22:50:09 tgl Exp $
-->
<chapter id="libpq">
@@ -1073,8 +1073,9 @@ char * PQcmdTuples(const PGresult *res);
<listitem>
<para>
<function>PQoidValue</function>
- Returns the object id of the tuple
- inserted, if the <acronym>SQL</acronym> command was an INSERT.
+ Returns the object id of the tuple inserted, if the
+ <acronym>SQL</acronym> command was an INSERT
+ that inserted exactly one row into a table that has OIDs.
Otherwise, returns <literal>InvalidOid</literal>.
<synopsis>
Oid PQoidValue(const PGresult *res);
@@ -1088,9 +1089,11 @@ Oid PQoidValue(const PGresult *res);
<listitem>
<para>
<function>PQoidStatus</function>
- Returns a string with the object id of the tuple
- inserted, if the <acronym>SQL</acronym> command was an INSERT.
- Otherwise, returns an empty string.
+ Returns a string with the object id of the tuple inserted, if the
+ <acronym>SQL</acronym> command was an INSERT.
+ (The string will be "0" if the INSERT did not insert exactly one
+ row, or if the target table does not have OIDs.) If the command
+ was not an INSERT, returns an empty string.
<synopsis>
char * PQoidStatus(const PGresult *res);
</synopsis>
diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c
index 82675bbf573..958ad329850 100644
--- a/src/bin/pg_dump/pg_dump.c
+++ b/src/bin/pg_dump/pg_dump.c
@@ -22,7 +22,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.219 2001/08/10 18:57:38 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.220 2001/08/10 22:50:09 tgl Exp $
*
* Modifications - 6/10/96 - dave@bensoft.com - version 1.13.dhb
*
@@ -4698,7 +4698,7 @@ setMaxOid(Archive *fout)
write_msg(NULL, "could not insert into pgdump_oid table: %s", PQerrorMessage(g_conn));
exit_nicely();
}
- max_oid = atooid(PQoidStatus(res));
+ max_oid = PQoidValue(res);
if (max_oid == 0)
{
write_msg(NULL, "inserted invalid oid\n");
diff --git a/src/interfaces/ecpg/lib/execute.c b/src/interfaces/ecpg/lib/execute.c
index 99177844717..a947e957a86 100644
--- a/src/interfaces/ecpg/lib/execute.c
+++ b/src/interfaces/ecpg/lib/execute.c
@@ -937,7 +937,7 @@ ECPGexecute(struct statement * stmt)
break;
case PGRES_COMMAND_OK:
status = true;
- sqlca.sqlerrd[1] = atol(PQoidStatus(results));
+ sqlca.sqlerrd[1] = PQoidValue(results);
sqlca.sqlerrd[2] = atol(PQcmdTuples(results));
ECPGlog("ECPGexecute line %d Ok: %s\n", stmt->lineno, PQcmdStatus(results));
if (!sqlca.sqlerrd[2] && (!strncmp(PQcmdStatus(results), "UPDATE", 6)
@@ -1032,7 +1032,7 @@ ECPGdo(int lineno, const char *connection_name, char *query,...)
*
* Copyright (c) 2000, Christof Petig <christof.petig@wtal.de>
*
- * $Header: /cvsroot/pgsql/src/interfaces/ecpg/lib/Attic/execute.c,v 1.19 2001/03/22 04:01:19 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/interfaces/ecpg/lib/Attic/execute.c,v 1.20 2001/08/10 22:50:10 tgl Exp $
*/
PGconn *ECPG_internal_get_connection(char *name);
@@ -1101,7 +1101,7 @@ execute_descriptor(int lineno, const char *query
break;
case PGRES_COMMAND_OK:
status = true;
- sqlca.sqlerrd[1] = atol(PQoidStatus(results));
+ sqlca.sqlerrd[1] = PQoidValue(results);
sqlca.sqlerrd[2] = atol(PQcmdTuples(results));
ECPGlog("ECPGexecute line %d Ok: %s\n", lineno, PQcmdStatus(results));
break;
diff --git a/src/interfaces/libpgtcl/pgtclCmds.c b/src/interfaces/libpgtcl/pgtclCmds.c
index bf9f56471f7..a87cb1842cb 100644
--- a/src/interfaces/libpgtcl/pgtclCmds.c
+++ b/src/interfaces/libpgtcl/pgtclCmds.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/pgtclCmds.c,v 1.55 2001/03/22 04:01:23 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/pgtclCmds.c,v 1.56 2001/08/10 22:50:10 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -574,7 +574,7 @@ Pg_result(ClientData cData, Tcl_Interp *interp, int argc, char *argv[])
return PgGetConnByResultId(interp, argv[1]);
else if (strcmp(opt, "-oid") == 0)
{
- Tcl_AppendResult(interp, PQoidStatus(result), 0);
+ sprintf(interp->result, "%u", PQoidValue(result));
return TCL_OK;
}
else if (strcmp(opt, "-clear") == 0)
@@ -900,12 +900,15 @@ Pg_execute(ClientData cData, Tcl_Interp *interp, int argc, char *argv[])
/*
* Set the oid variable to the returned oid of an INSERT statement if
- * requested (or an empty string if it wasn't an INSERT)
+ * requested (or 0 if it wasn't an INSERT)
*/
if (oid_varname != NULL)
{
- if (Tcl_SetVar(interp, oid_varname,
- PQoidStatus(result), TCL_LEAVE_ERR_MSG) != TCL_OK)
+ char oid_buf[32];
+
+ sprintf(oid_buf, "%u", PQoidValue(result));
+ if (Tcl_SetVar(interp, oid_varname, oid_buf,
+ TCL_LEAVE_ERR_MSG) != TCL_OK)
{
PQclear(result);
return TCL_ERROR;