[INTERFACES] MSAccess problem deleting rows

From: leif(at)danmos(dot)dk
To: pgsql-interfaces(at)postgreSQL(dot)org
Subject: [INTERFACES] MSAccess problem deleting rows
Date: 1999-07-23 02:00:28
Message-ID: 199907230200.EAA05624@crysberg.dk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces


Hi all,

I am having trouble using M$Access on a PostgreSQL database using PostODBC.

My setup:

Linux kernel: 2.0.36
Linux dist: RedHat 5.0
PostgreSQL: 6.4.2
PostODBC: -> 06.40.0006
M$Access: 97

My main problem is to make M$Access use the primary (unique) key of my table
when I am deleting a single row from M$Access. This is what I do:

1) Link the table 'ut32loen' into a new and freshly opened M$Access database.
2) Open the table in "raw" Access (simply clicking on the Open button in the
database window of Access).
3) Selecting the first row of the table (by clicking in the left-most column,
the one not being a table column, selecting the hole row).
4) Pressing the 'delete' key on the keyboard.

This results in two different responses from Access:

1) Access claims that somebody else has changed the data, that I am trying
to delete, though *noone* else is on the database.

2) I get an error from the backend.

Re 1: In this case I have *not* checked 'Row versioning' in the ODBC Manager
setup of the data set name that I am using. For some reason it looks
like Access cannot figure out to use the unique index that exists on
the table, and which it accepted when I linked the table. (It didn't
ask for a unique key, as it does if none exists.) In stead Acccess
generates this awfull where clause using *all* columns for qualifying
the row. I suspect, it is because of rounding errors that it can't find
the row resulting in this stupid message from Access telling me
somebody else has modified the data !!??
The main problem is, however, that M$Access does not use *only* the
unique key column in the where clause.
This situation is logged in the file psqlodbc_42941.... below.

Re 2: Here I have checked the 'Row versioning' option. The where clause looks
a lot better, but I get this error from the backend:
errmsg='ERROR: There is more than one possible operator '='
for types 'xid' and 'int4'
You will have to retype this query using an explicit cast'
I am afraid that I can't cast anything since this was generated by the
M$ JetEngine.
This situation is logged in the file psqlodbc_42942.... below.

I have included the output from a small psql session showing the table
ut32loen and its contents, the .sql that I used for generating the table,
and the two log-files that I refered to above.

I have tried the same thing without having the 'serial' (sequencer) on
the 'id' column, without any luck.

Plese forgive me for not compressing and attaching these files, this
old mailer is not capable of doing attachments :-(.

Please help,

___________________________________________________________________________
/
_/ _/_/ / Leif Jensen (leif(at)danmos(dot)dk)
_/ _/ _/ /
_/ _/_/ _/_/_/ /
_/ _/ _/ _/ _/ / Linux 2.0.36, gcc 2.7.2, wxWin 1.68c
_/ _/ _/_/ _/ _/ /
_/ _/ _/ _/ _/ /
_/_/_/_/ _/_/ _/_/ _/ / (and Windows 95 :-(
___________________________________________________________________________

---- psql.out: -------------------------------------------------------------------------------

>\d ut32loen

Table = ut32loen
+----------------------------------+----------------------------------+-------+
| Field | Type | Length|
+----------------------------------+----------------------------------+-------+
| id | int4 not null default nextval('u | 4 |
| beregnnr | int4 | 4 |
| stempling | int4 | 4 |
| stemplingstype | int4 | 4 |
| beregndato | date | 4 |
| startdato | date | 4 |
| enddato | date | 4 |
| medarbejder | varchar() | 50 |
| periodeskema | varchar() | 50 |
| kommettid | varchar() | 50 |
| gaaettid | varchar() | 50 |
| normtimer | float8 | 8 |
| pausetimer | float8 | 8 |
| tillaegtimer | float8 | 8 |
| flextimer | float8 | 8 |
| akkordtimer | float8 | 8 |
| fravaertimer | float8 | 8 |
| varseltimer | float8 | 8 |
| bonustimer | float8 | 8 |
| beskrivelse | varchar() | 50 |
| loensats | varchar() | 50 |
| flexkrpar | float8 | 8 |
| flextimerpar | float8 | 8 |
| funktionaerloen | float8 | 8 |
+----------------------------------+----------------------------------+-------+
Index: ut32loen_pkey

>select * from ut32loen;
id|beregnnr|stempling|stemplingstype|beregndato| startdato| enddato|medarbejder|periodeskema|kommettid|gaaettid| normtimer|pausetimer|tillaegtimer| flextimer|akkordtimer|fravaertimer|varseltimer|bonustimer|beskrivelse|loensats|flexkrpar|flextimerpar|funktionaerloen
--+--------+---------+--------------+----------+----------+----------+-----------+------------+---------+--------+----------------+----------+------------+------------------+-----------+------------+-----------+----------+-----------+--------+---------+------------+---------------
27| 19| 0| 0|05-07-1999|04-12-1999|04-12-1999| 87|No |00:00:00 |00:00:00| 0| 0| 0|-0.550000000046566| 0| 0| 0| 0|Flex |No | 0| 0| 0
28| 19| 3413| 1|05-07-1999|04-12-1999|04-12-1999| 87|No |09:07:11 |16:36:36|6.94999999995343| 0| 0| 0| 0| 0| 0| 0|Normtimer |Ln1 | 0| 0| 0
(2 rows)

>\q
----------------------------------------------------------------------------------------------

---- ut32loen.sql: ---------------------------------------------------------------------------

CREATE TABLE "ut32loen" (
"id" int4 DEFAULT nextval('ut32loen_id_seq') NOT NULL,
"beregnnr" int4,
"stempling" int4,
"stemplingstype" int4,
"beregndato" date,
"startdato" date,
"enddato" date,
"medarbejder" character varying(50),
"periodeskema" character varying(50),
"kommettid" character varying(50),
"gaaettid" character varying(50),
"normtimer" float8,
"pausetimer" float8,
"tillaegtimer" float8,
"flextimer" float8,
"akkordtimer" float8,
"fravaertimer" float8,
"varseltimer" float8,
"bonustimer" float8,
"beskrivelse" character varying(50),
"loensats" character varying(50),
"flexkrpar" float8,
"flextimerpar" float8,
"funktionaerloen" float8);
COPY "ut32loen" FROM stdin;
27 19 0 0 05-07-1999 04-12-1999 04-12-1999 87 No 00:00:00 00:00:00 0 0 0 -0.550000000046566 0 0 0 0 Flex No 0 0 0
28 19 3413 1 05-07-1999 04-12-1999 04-12-1999 87 No 09:07:11 16:36:36 6.94999999995343 0 0 0 0 0 0 0 Normtimer Ln1 0 0 0
\.
CREATE UNIQUE INDEX "ut32loen_pkey" on "ut32loen" using btree ( "id" "int4_ops" );
----------------------------------------------------------------------------------------------

---- psqlodbc_42941....: ----------------------------------------------------------

conn=80021628, SQLDriverConnect( in)='DSN=ut32_be_p;', fDriverCompletion=1
DSN info: DSN='ut32_be_p',server='ljserv',port='5432',dbase='ut32_be_i',user='cdsinfo',passwd='******'
readonly='0',protocol='6.4',showoid='1',fakeoidindex='0',showsystable='1'
conn_settings=''
translation_dll='',translation_option=''
Global Options: Version='06.40.0006', fetch=100, socket=4096, unknown_sizes=0, max_varchar_size=254, max_longvarchar_size=8190
disable_optimizer=1, ksqo=1, unique_index=1, use_declarefetch=1
text_as_longvarchar=1, unknowns_as_longvarchar=0, bools_as_char=1
extra_systable_prefixes='dd_;', conn_settings=''
conn=80021628, query=' '
conn=80021628, query='set DateStyle to 'ISO''
conn=80021628, query='set geqo to 'OFF''
conn=80021628, query='set ksqo to 'ON''
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C5413C cursor for select oid from pg_type where typname='lo''
conn=80021628, query='fetch 100 in SQL_CUR04C5413C'
[ fetched 0 rows ]
conn=80021628, query='close SQL_CUR04C5413C'
conn=80021628, query='END'
conn=80021628, SQLDriverConnect(out)='DSN=ut32_be_p;DATABASE=ut32_be_i;SERVER=ljserv;PORT=5432;UID=cdsinfo;PWD=******;READONLY=0;PROTOCOL=6.4;FAKEOIDINDEX=0;SHOWOIDCOLUMN=1;ROWVERSIONING=0;SHOWSYSTEMTABLES=1;CONNSETTINGS='
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C5413C cursor for SELECT Config, nValue FROM MSysConf'
ERROR from backend during send_query: 'ERROR: msysconf: Table does not exist.'
conn=80021628, query='ABORT'
STATEMENT ERROR: func=SC_execute, desc='', errnum=1, errmsg='Error while executing the query'
------------------------------------------------------------
hdbc=80021628, stmt=80036156, result=0
manual_result=0, prepare=0, internal=0
bindings=0, bindings_allocated=0
parameters=0, parameters_allocated=0
statement_type=0, statement='SELECT Config, nValue FROM MSysConf'
stmt_with_params='declare SQL_CUR04C5413C cursor for SELECT Config, nValue FROM MSysConf'
data_at_exec=-1, current_exec_param=-1, put_data=0
currTuple=-1, current_col=-1, lobj_fd=-1
maxRows=0, rowset_size=1, keyset_size=0, cursor_type=0, scroll_concurrency=1
cursor_name='SQL_CUR04C5413C'
----------------QResult Info -------------------------------
CONN ERROR: func=SC_execute, desc='', errnum=110, errmsg='ERROR: msysconf: Table does not exist.'
------------------------------------------------------------
henv=81068164, conn=80021628, status=1, num_stmts=16
sock=81068180, stmts=81068220, lobj_type=-999
---------------- Socket Info -------------------------------
socket=61, reverse=0, errornumber=0, errormsg='(null)'
buffer_in=80027956, buffer_out=80032056
buffer_filled_in=3, buffer_filled_out=0, buffer_read_in=2
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C64208 cursor for select relname, usename, relhasrules from pg_class, pg_user where relkind = 'r' and relname !~ '^xinv[0-9]+' and int4out(usesysid) = int4out(relowner)order by relname'
conn=80021628, query='fetch 100 in SQL_CUR04C64208'
[ fetched 100 rows ]
conn=80021628, query='fetch 100 in SQL_CUR04C64208'
[ fetched 21 rows ]
conn=80021628, query='close SQL_CUR04C64208'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C64208 cursor for select u.usename, c.relname, a.attname, a.atttypid,t.typname, a.attnum, a.attlen, a.atttypmod, a.attnotnull from pg_user u, pg_class c, pg_attribute a, pg_type t where int4out(u.usesysid) = int4out(c.relowner) and c.oid= a.attrelid and a.atttypid = t.oid and (a.attnum > 0) and c.relname like 'ut32loen' order by attnum'
conn=80021628, query='fetch 100 in SQL_CUR04C64208'
[ fetched 24 rows ]
conn=80021628, query='close SQL_CUR04C64208'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C7A444 cursor for select u.usename, c.relname, a.attname, a.atttypid,t.typname, a.attnum, a.attlen, a.atttypmod, a.attnotnull from pg_user u, pg_class c, pg_attribute a, pg_type t where int4out(u.usesysid) = int4out(c.relowner) and c.oid= a.attrelid and a.atttypid = t.oid and (a.attnum > 0) and c.relname like 'ut32loen' order by attnum'
conn=80021628, query='fetch 100 in SQL_CUR04C7A444'
[ fetched 24 rows ]
conn=80021628, query='close SQL_CUR04C7A444'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C64208 cursor for select c.relname, i.indkey, i.indisunique, i.indisclustered from pg_index i, pg_class c, pg_class d where c.oid = i.indexrelid and d.relname = 'ut32loen' and d.oid = i.indrelid'
conn=80021628, query='fetch 100 in SQL_CUR04C64208'
[ fetched 1 rows ]
conn=80021628, query='close SQL_CUR04C64208'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C7A444 cursor for SELECT "ut32loen"."id" FROM "ut32loen" '
conn=80021628, query='fetch 100 in SQL_CUR04C7A444'
[ fetched 2 rows ]
conn=80021628, query='close SQL_CUR04C7A444'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C7A444 cursor for SELECT "oid","id","beregnnr","stempling","stemplingstype","beregndato","startdato","enddato","medarbejder","periodeskema","kommettid","gaaettid","normtimer","pausetimer","tillaegtimer","flextimer","akkordtimer","fravaertimer","varseltimer","bonustimer","beskrivelse","loensats","flexkrpar","flextimerpar","funktionaerloen" FROM "ut32loen" WHERE "id" = 27 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28'
conn=80021628, query='fetch 100 in SQL_CUR04C7A444'
[ fetched 2 rows ]
conn=80021628, query='close SQL_CUR04C7A444'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C5413C cursor for SELECT "oid","id","beregnnr","stempling","stemplingstype","beregndato","startdato","enddato","medarbejder","periodeskema","kommettid","gaaettid","normtimer","pausetimer","tillaegtimer","flextimer","akkordtimer","fravaertimer","varseltimer","bonustimer","beskrivelse","loensats","flexkrpar","flextimerpar","funktionaerloen" FROM "ut32loen" WHERE "id" = 27'
conn=80021628, query='fetch 100 in SQL_CUR04C5413C'
[ fetched 1 rows ]
conn=80021628, query='close SQL_CUR04C5413C'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='DELETE FROM "ut32loen" WHERE "id" = 27 AND "oid" = 199520 AND "beregnnr" = 19 AND "stempling" = 0 AND "stemplingstype" = 0 AND "beregndato" = '1999-05-07' AND "startdato" = '1999-04-12' AND "enddato" = '1999-04-12' AND "medarbejder" = '87' AND "periodeskema" = 'No' AND "kommettid" = '00:00:00' AND "gaaettid" = '00:00:00' AND "normtimer" = 0.000000 AND "pausetimer" = 0.000000 AND "tillaegtimer" = 0.000000 AND "flextimer" = -0.550000 AND "akkordtimer" = 0.000000 AND "fravaertimer" = 0.000000 AND "varseltimer" = 0.000000 AND "bonustimer" = 0.000000 AND "beskrivelse" = 'Flex' AND "loensats" = 'No' AND "flexkrpar" = 0.000000 AND "flextimerpar" = 0.000000 AND "funktionaerloen" = 0.000000'
conn=80021628, query='COMMIT'
conn=80021628, SQLDisconnect
----------------------------------------------------------------------------------------------

---- psqlodbc_42942.....: --------------------------------------------------------------------

conn=80021628, SQLDriverConnect( in)='DSN=ut32_be_p;', fDriverCompletion=1
DSN info: DSN='ut32_be_p',server='ljserv',port='5432',dbase='ut32_be_i',user='cdsinfo',passwd='******'
readonly='0',protocol='6.4',showoid='1',fakeoidindex='0',showsystable='1'
conn_settings=''
translation_dll='',translation_option=''
Global Options: Version='06.40.0006', fetch=100, socket=4096, unknown_sizes=0, max_varchar_size=254, max_longvarchar_size=8190
disable_optimizer=1, ksqo=1, unique_index=1, use_declarefetch=1
text_as_longvarchar=1, unknowns_as_longvarchar=0, bools_as_char=1
extra_systable_prefixes='dd_;', conn_settings=''
conn=80021628, query=' '
conn=80021628, query='set DateStyle to 'ISO''
conn=80021628, query='set geqo to 'OFF''
conn=80021628, query='set ksqo to 'ON''
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C5413C cursor for select oid from pg_type where typname='lo''
conn=80021628, query='fetch 100 in SQL_CUR04C5413C'
[ fetched 0 rows ]
conn=80021628, query='close SQL_CUR04C5413C'
conn=80021628, query='END'
conn=80021628, SQLDriverConnect(out)='DSN=ut32_be_p;DATABASE=ut32_be_i;SERVER=ljserv;PORT=5432;UID=cdsinfo;PWD=******;READONLY=0;PROTOCOL=6.4;FAKEOIDINDEX=0;SHOWOIDCOLUMN=1;ROWVERSIONING=1;SHOWSYSTEMTABLES=1;CONNSETTINGS='
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C5413C cursor for SELECT Config, nValue FROM MSysConf'
ERROR from backend during send_query: 'ERROR: msysconf: Table does not exist.'
conn=80021628, query='ABORT'
STATEMENT ERROR: func=SC_execute, desc='', errnum=1, errmsg='Error while executing the query'
------------------------------------------------------------
hdbc=80021628, stmt=80036156, result=0
manual_result=0, prepare=0, internal=0
bindings=0, bindings_allocated=0
parameters=0, parameters_allocated=0
statement_type=0, statement='SELECT Config, nValue FROM MSysConf'
stmt_with_params='declare SQL_CUR04C5413C cursor for SELECT Config, nValue FROM MSysConf'
data_at_exec=-1, current_exec_param=-1, put_data=0
currTuple=-1, current_col=-1, lobj_fd=-1
maxRows=0, rowset_size=1, keyset_size=0, cursor_type=0, scroll_concurrency=1
cursor_name='SQL_CUR04C5413C'
----------------QResult Info -------------------------------
CONN ERROR: func=SC_execute, desc='', errnum=110, errmsg='ERROR: msysconf: Table does not exist.'
------------------------------------------------------------
henv=81068164, conn=80021628, status=1, num_stmts=16
sock=81068180, stmts=81068220, lobj_type=-999
---------------- Socket Info -------------------------------
socket=61, reverse=0, errornumber=0, errormsg='(null)'
buffer_in=80027956, buffer_out=80032056
buffer_filled_in=3, buffer_filled_out=0, buffer_read_in=2
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C64208 cursor for select relname, usename, relhasrules from pg_class, pg_user where relkind = 'r' and relname !~ '^xinv[0-9]+' and int4out(usesysid) = int4out(relowner)order by relname'
conn=80021628, query='fetch 100 in SQL_CUR04C64208'
[ fetched 100 rows ]
conn=80021628, query='fetch 100 in SQL_CUR04C64208'
[ fetched 21 rows ]
conn=80021628, query='close SQL_CUR04C64208'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C64208 cursor for select u.usename, c.relname, a.attname, a.atttypid,t.typname, a.attnum, a.attlen, a.atttypmod, a.attnotnull from pg_user u, pg_class c, pg_attribute a, pg_type t where int4out(u.usesysid) = int4out(c.relowner) and c.oid= a.attrelid and a.atttypid = t.oid and (a.attnum > 0) and c.relname like 'ut32loen' order by attnum'
conn=80021628, query='fetch 100 in SQL_CUR04C64208'
[ fetched 24 rows ]
conn=80021628, query='close SQL_CUR04C64208'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C7A5A0 cursor for select u.usename, c.relname, a.attname, a.atttypid,t.typname, a.attnum, a.attlen, a.atttypmod, a.attnotnull from pg_user u, pg_class c, pg_attribute a, pg_type t where int4out(u.usesysid) = int4out(c.relowner) and c.oid= a.attrelid and a.atttypid = t.oid and (a.attnum > 0) and c.relname like 'ut32loen' order by attnum'
conn=80021628, query='fetch 100 in SQL_CUR04C7A5A0'
[ fetched 24 rows ]
conn=80021628, query='close SQL_CUR04C7A5A0'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C64208 cursor for select c.relname, i.indkey, i.indisunique, i.indisclustered from pg_index i, pg_class c, pg_class d where c.oid = i.indexrelid and d.relname = 'ut32loen' and d.oid = i.indrelid'
conn=80021628, query='fetch 100 in SQL_CUR04C64208'
[ fetched 1 rows ]
conn=80021628, query='close SQL_CUR04C64208'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C7A5A0 cursor for SELECT "ut32loen"."id" FROM "ut32loen" '
conn=80021628, query='fetch 100 in SQL_CUR04C7A5A0'
[ fetched 2 rows ]
conn=80021628, query='close SQL_CUR04C7A5A0'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C7A5A0 cursor for SELECT "oid","id","beregnnr","stempling","stemplingstype","beregndato","startdato","enddato","medarbejder","periodeskema","kommettid","gaaettid","normtimer","pausetimer","tillaegtimer","flextimer","akkordtimer","fravaertimer","varseltimer","bonustimer","beskrivelse","loensats","flexkrpar","flextimerpar","funktionaerloen","xmin" FROM "ut32loen" WHERE "id" = 27 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28 OR "id" = 28'
conn=80021628, query='fetch 100 in SQL_CUR04C7A5A0'
[ fetched 2 rows ]
conn=80021628, query='close SQL_CUR04C7A5A0'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='declare SQL_CUR04C5413C cursor for SELECT "oid","id","beregnnr","stempling","stemplingstype","beregndato","startdato","enddato","medarbejder","periodeskema","kommettid","gaaettid","normtimer","pausetimer","tillaegtimer","flextimer","akkordtimer","fravaertimer","varseltimer","bonustimer","beskrivelse","loensats","flexkrpar","flextimerpar","funktionaerloen","xmin" FROM "ut32loen" WHERE "id" = 27'
conn=80021628, query='fetch 100 in SQL_CUR04C5413C'
[ fetched 1 rows ]
conn=80021628, query='close SQL_CUR04C5413C'
conn=80021628, query='END'
conn=80021628, query='BEGIN'
conn=80021628, query='DELETE FROM "ut32loen" WHERE "id" = 27 AND "xmin" = 115514'
ERROR from backend during send_query: 'ERROR: There is more than one possible operator '=' for types 'xid' and 'int4'
You will have to retype this query using an explicit cast'
conn=80021628, query='ABORT'
STATEMENT ERROR: func=SC_execute, desc='', errnum=1, errmsg='Error while executing the query'
------------------------------------------------------------
hdbc=80021628, stmt=80259088, result=0
manual_result=0, prepare=0, internal=0
bindings=0, bindings_allocated=0
parameters=80168644, parameters_allocated=2
statement_type=3, statement='DELETE FROM "ut32loen" WHERE "id" = ? AND "xmin" = ?'
stmt_with_params='DELETE FROM "ut32loen" WHERE "id" = 27 AND "xmin" = 115514'
data_at_exec=-1, current_exec_param=-1, put_data=0
currTuple=-1, current_col=-1, lobj_fd=-1
maxRows=0, rowset_size=1, keyset_size=0, cursor_type=0, scroll_concurrency=1
cursor_name='SQL_CUR04C8A810'
----------------QResult Info -------------------------------
CONN ERROR: func=SC_execute, desc='', errnum=110, errmsg='ERROR: There is more than one possible operator '=' for types 'xid' and 'int4'
You will have to retype this query using an explicit cast'
------------------------------------------------------------
henv=81068164, conn=80021628, status=1, num_stmts=16
sock=81068180, stmts=81068220, lobj_type=-999
---------------- Socket Info -------------------------------
socket=61, reverse=0, errornumber=0, errormsg='(null)'
buffer_in=80027956, buffer_out=80032056
buffer_filled_in=3, buffer_filled_out=0, buffer_read_in=2
conn=80021628, SQLDisconnect
----------------------------------------------------------------------------------------------

Browse pgsql-interfaces by date

  From Date Subject
Next Message Colin McCormack 1999-07-23 02:19:02 New asynchronous tcl postgresql interface
Previous Message Tom Lane 1999-07-23 00:54:05 Re: [INTERFACES] SPI_exec vs. CREATE/DROP RULE