Hello,
I've some problems with the PostgreSQL-ODBC-driver and Centura Team
Developer 1.5.1. The connection is ok and a lot of thinks work well. There
are two datatypes which make some trouble.
1. Date/Time Values: If I set a bindvariable to a value like = 2001-02-02
Postgres take the current Date.??
2. If I set a long-value Postgres don't recognize it. Ex. : Set MyValue =
'.... String with length 1000 .....', in the OCBD-Log file I see only some
bytes (and the database too)
For testing I create a table "test_int" with some int's, floats and some
char,varchar and text() fields.
I'll send you some logfiles :
a.) Part of the source from Centura :
Set hugo = 11
Set hugo2 = 33 'Rem some numeric values (Work fine, defined
as number)
Set hs = SalStrRepeatX("--- --- ---+ ",100) 'Rem this will set hs to a
string with a length of 1000 chars.
Set dt1 = 2001-04-06 'Rem This is my value
Set s1 = " INSERT INTO test_int ( t1,t2,t3, t4, tdate,tt,tvarchar )
VALUES (50 , :hugo2, :hugo, :hugo, :dt1 , :dt1, :hs ) "
Set s2 = ' UPDATE TEST_INT SET t2 = :hugo2, tdate = :dt1, tvarchar = :hs,
tchar = :hs , tlong = :hs WHERE t1 = 49 '
b.) File psql*.log :
conn=31800680, SQLDriverConnect(
in)='DSN=POPO;UID=postgres;PWD=asdf12;DATABASE=clearly;SERVER=donald;PORT=54
32;READONLY=0;PROTOCOL=6.4;FAKEOIDINDEX=0;SHOWOIDCOLUMN=0;ROWVERSIONING=0;SH
OWSYSTEMTABLES=1;CONNSETTINGS=;', fDriverCompletion=0
DSN info:
DSN='POPO',server='donald',port='5432',dbase='clearly',user='postgres',passw
d='asdf12'
onlyread='0',protocol='6.4',showoid='0',fakeoidindex='0',showsystable='1'
conn_settings=''
translation_dll='',translation_option=''
Global Options: Version='07.01.0005', fetch=100, socket=4096,
unknown_sizes=0, max_varchar_size=4000, max_longvarchar_size=8190
disable_optimizer=1, ksqo=1, unique_index=0,
use_declarefetch=0
text_as_longvarchar=1, unknowns_as_longvarchar=0,
bools_as_char=1
extra_systable_prefixes='dd_;', conn_settings=''
conn=31800680, query=' '
conn=31800680, query='set DateStyle to 'ISO''
conn=31800680, query='set geqo to 'OFF''
conn=31800680, query='set ksqo to 'ON''
conn=31800680, query='select oid from pg_type where typname='lo''
[ fetched 0 rows ]
conn=31800680, query='select version()'
[ fetched 1 rows ]
[ PostgreSQL version string = 'PostgreSQL 7.1.2 on i586-pc-linux-gnu,
compiled by GCC 2.95.2' ]
[ PostgreSQL version number = '7.1' ]
conn=31800680, SQLDriverConnect(out)='(null)'
conn=31800680, query=' Set DATESTYLE = SQL'
conn=31800680, query=' Set DATESTYLE = ISO'
conn=31800680, query=' UPDATE TEST_INT SET t2 = '33'::float8 , tdate =
'2001-08-06 00:00:00' , tt= '2001-08-06 00:00:00' , tchar =
'--- --- ---+ --- ---' , tvarchar = '--- --- ---+ --- ---' , tlong =
'--- --- ---+ --- ---' WHERE t1 = 49 '
conn=31800680, SQLDisconnect
You can see, DateTime is now 2001-08-06, my current date!
c.) sqllog.log from the ODCB-Admintool (a part of it) as zipfile :
Is it possible to help me??
Regards
J. Mischke / Germany