From: | Kristis Makris <kristis(dot)makris(at)datasoft(dot)com> |
---|---|
To: | Hiroshi Inoue <Inoue(at)tpf(dot)co(dot)jp> |
Cc: | pgsql-odbc(at)postgresql(dot)org |
Subject: | Re: Error messages not always reported through the ODBCdriver -STATEMENT ERROR missing |
Date: | 2001-08-27 16:18:16 |
Message-ID: | 200108271618.f7RGIMf48924@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
Hi Hiroshi,
> > ******************************************************************************************
> > wats=# begin;
> > BEGIN
> > wats=# select vendor_remove(1);
> > ERROR: <unnamed> referential integrity violation - key in vendor still
> > referenced from vendorforwellagreement
> > wats=# commit;
> > COMMIT
> > ******************************************************************************************
> >
> > psql reports the error when I issue the SELECT statement, not when I
> > issue the commit. Shouldn't I be able to capture an exception when I do
> > an ExecuteSQL() from VC++, instead of a CommitTrans() ?
>
> Could you show me a reproducible example ?
I'm attaching two .sql files. Using psql, load the file "tables.sql" in
a fresh database. Then try to execute the commands in the "data.sql"
file. You should get the following error message:
test=# \i data.sql
BEGIN
psql:data.sql:2: ERROR: <unnamed> referential integrity violation - key
in tableb still referenced from tablea
COMMIT
If you try to issue the commands included in the "data.sql" file through
ODBC using VC++ (instead of psql) you will run across the case where an
exception cannot be captured.
Thanks,
-Kristis
Attachment | Content-Type | Size |
---|---|---|
tables.sql | text/x-sql | 498 bytes |
data.sql | text/x-sql | 48 bytes |
From | Date | Subject | |
---|---|---|---|
Next Message | Ray Daigle | 2001-08-27 17:57:25 | A problem with the nextval('') function |
Previous Message | Cedar Cox | 2001-08-27 15:12:20 | RE: Access 2000 ODBC table links |