pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Ken J. Wright <ken@ori-ind.com>
To: Byron Nikolaidis <byron.nikolaidis@home.com>
To: pgsql-interfaces@hub.org
Subject: Re: [INTERFACES] NEW ODBC DRIVER v06-40-0007
Date: Thu, 02 Sep 1999 21:24:47 -0700
Message-ID: <3.0.32.19990902212445.008df1e0@ren.cncware.com> (raw)

>BUG_FIXES:
>
>1.  Fix all info functions to check whether the table is a view.
>
>2.  Fix for Access 2000 (unconfirmed)
>
>3.  Change most statement errors to General Error S1000 instead of 08S01
>    (communication link failure).

Byron,

Number 3 is still causing trouble.

from statement.h
#define STMT_BAD_ERROR 27

from environ.c
case STMT_BAD_ERROR:
   strcpy(szSqlState, "08S01");
   // communication link failure

This is the SQLSTATE the driver is returning when there is a failure from
attempting to duplicate a unique index. It appears to be coming from
SC_execute() in statement.c. The following code is executed if there is not
a result set returned (like from a select). It looks like there needs to be
more checking for other types of non-result set type failures. Create is
the only action looked at here, otherwise it's lumped in with the comm link
failures (STMT_BAD_ERROR).

} else {		/* Bad Error -- The error message will be in the Connection */

	if (self->statement_type == STMT_TYPE_CREATE) {
		self->errornumber = STMT_CREATE_TABLE_ERROR;
		self->errormsg = "Error creating the table";
		/*	This would allow the table to already exists, thus appending
			rows to it.  BUT, if the table didn't have the same attributes,
			it would fail.
			return SQL_SUCCESS_WITH_INFO;
		*/
	}
	else {
		self->errornumber = STMT_BAD_ERROR;
		self->errormsg = "Error while executing the query";
	}

Ken




view thread (3+ messages)

Message-ID: <3.0.32.19990902212445.008df1e0@ren.cncware.com>
Permalink:  ../3.0.32.19990902212445.008df1e0@ren.cncware.com/
Also on:    postgresql.org/message-id/3.0.32.19990902212445.008df1e0@ren.cncware.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-interfaces@postgresql.org
  Cc: ken@ori-ind.com, byron.nikolaidis@home.com, pgsql-interfaces@hub.org
  Subject: Re: [INTERFACES] NEW ODBC DRIVER v06-40-0007
  In-Reply-To: <3.0.32.19990902212445.008df1e0@ren.cncware.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox