Re: [INTERFACES] PostODBC 6.40.0007 to PostgreSQL 6.5.2 NEED HELP : Delphi-ODBC / Pygresql-Python
| От | Compte utilisateur Sultan-advl |
|---|---|
| Тема | Re: [INTERFACES] PostODBC 6.40.0007 to PostgreSQL 6.5.2 NEED HELP : Delphi-ODBC / Pygresql-Python |
| Дата | |
| Msg-id | 00011401413000.03959@sultan обсуждение исходный текст |
| Список | pgsql-interfaces |
Hi,
Thanks to Sergio for help about ODBC tuning & is good links to free source
code for Delphi ;-)
Maybe an interface problem with Delphi - ODBC - Postgresql, hope to not disturb
thislist.
Using this design database since Postgresql 6.3 with Pygresql & Python cgi
without any problem.Today records of this database still working with Python
& Pygresql.
===
DESCRIPTION :
Postgresql 6.5.2 & PostODBC 6.40.0007
Using postgresql table whith many text fields & big text in this fields < 8K
for a record Borland crash (IDAPI32.dll & KERNEL.dll error) when using the
DBNavigator with nbRefresh, nbLast, nbFirst Buttons.
NO odbc error in log.
===
A) TABLE PROPERTIES with text data type (works find with Pygresql & cgi Python
apli) :
Table = localisation
+----------------------------------+---------------------------------
| Field | Type | Length|
+----------------------------------+---------------------------------
| id_loc | int4 not null| 4 |
| voie_loc | text |
| codebat_loc | text |
| idplan_loc | int4 | 4 |
| xplan_loc | text |
| yplan_loc | text |
| acces_loc | text |
| accesen_loc | text |
| id_ville_loc | int4 | 4 |
+----------------------------------+---------------------------------
Indices: localisation_pkey localisationi1 localisationi2 localisationi3
===
B) TABLE PROPERTIES with char (2048) data type : SAME PROBLEM IN DELPHI - DON'T WORK WITH PYTHON OR PSQL
==========
( Pygresql can't insert data)==> 8K LIMIT ?
==========
Traceback (innermost last): File "./GOSultan.py", line 131, in ? FctSCAN (file) File "./GOSultan.py", line 103, in
FctSCAN INSERTDATA(pgcnx, f) File "./GOSultan.py", line 94, in INSERTDATA q = pgcnx.query(thequery)
pg.error: ERROR: Tuple is too big: size 12356
===========
( Psql can't insert data) ==> 8K LIMIT ?
===========
INSERT INTO localisation
(id_loc,voie_loc,codebat_loc,idplan_loc,xplan_loc,yplan_loc,acces_loc,accesen_loc,id_ville_loc)VALUES ('59','18, rue de
Cheverny','','6','','','','','7');
ERROR: Tuple is too big: size 12356
===
BACKEND MESSAGE WHEN DELPHI CRASH :
/usr/lib/pgsql/bin/postmaster: ServerLoop: handling reading 5
/usr/lib/pgsql/bin/postmaster: ServerLoop: handling reading 5
/usr/lib/pgsql/bin/postmaster: ServerLoop: handling writing 5
/usr/lib/pgsql/bin/postmaster child[2660]: starting with (/usr/lib/pgsql/bin/postgres -d2 -v131072 -p newkiwi )
/usr/lib/pgsql/bin/postmaster: BackendStartup: pid 2660 user postgres db newkiwi socket 5
FindExec: found "/usr/lib/pgsql/bin/postgres" using argv[0]
debug info:User = postgresRemoteHost = 192.168.0.26RemotePort = 1065DatabaseName = newkiwiVerbose =
2Noversion = ftimings = fdates = Normalbufsize = 64sortmem = 512query echo = f
InitPostgres
StartTransactionCommand
query: set DateStyle to 'ISO'
ProcessUtility: set DateStyle to 'ISO'
CommitTransactionCommand
StartTransactionCommand
query: set geqo to 'OFF'
ProcessUtility: set geqo to 'OFF'
CommitTransactionCommand
StartTransactionCommand
query: set ksqo to 'ON'
ProcessUtility: set ksqo to 'ON'
CommitTransactionCommand
StartTransactionCommand
query: select oid from pg_type where typname='lo'
ProcessQuery
CommitTransactionCommand
StartTransactionCommand
query: SELECT "id_loc" ,"voie_loc" ,"codebat_loc" ,"idplan_loc" ,"xplan_loc" ,"yplan_loc" ,"acces_loc" ,"accesen_loc"
,"id_ville_loc"FROM "localisation" ORDER BY "id_loc" DESC
ProcessQuery
CommitTransactionCommand
StartTransactionCommand
query: SELECT "id_loc" ,"voie_loc" ,"codebat_loc" ,"idplan_loc" ,"xplan_loc" ,"yplan_loc" ,"acces_loc" ,"accesen_loc"
,"id_ville_loc"FROM "localisation" WHERE "id_loc"=61
ProcessQuery
CommitTransactionCommand
pq_recvbuf: recv() failed: Connexion r�-initialis�e par le correspondant
proc_exit(0) [#0]
shmem_exit(0) [#0]
exit(0)
/usr/lib/pgsql/bin/postmaster: reaping dead processes...
/usr/lib/pgsql/bin/postmaster: CleanupProc: pid 2659 exited with status 0
pq_recvbuf: recv() failed: Connexion r�-initialis�e par le correspondant
proc_exit(0) [#0]
shmem_exit(0) [#0]
exit(0)
/usr/lib/pgsql/bin/postmaster: reaping dead processes...
/usr/lib/pgsql/bin/postmaster: CleanupProc: pid 2658 exited with status 0
pq_recvbuf: recv() failed: Connexion r�-initialis�e par le correspondant
proc_exit(0) [#0]
shmem_exit(0) [#0]
exit(0)
/usr/lib/pgsql/bin/postmaster: reaping dead processes...
/usr/lib/pgsql/bin/postmaster: CleanupProc: pid 2657 exited with status 0
pq_recvbuf: recv() failed: Connexion r�-initialis�e par le correspondant
proc_exit(0) [#0]
shmem_exit(0) [#0]
exit(0)
/usr/lib/pgsql/bin/postmaster: reaping dead processes...
/usr/lib/pgsql/bin/postmaster: CleanupProc: pid 2660 exited with status 0
pq_recvbuf: recv() failed: Connexion r�-initialis�e par le correspondant
proc_exit(0) [#0]
shmem_exit(0) [#0]
exit(0)
/usr/lib/pgsql/bin/postmaster: reaping dead processes...
/usr/lib/pgsql/bin/postmaster: CleanupProc: pid 2656 exited with status 0
pmdie 2
proc_exit(0) [#0]
shmem_exit(0) [#0]
exit(0)
================END OF BACKEND MSG=============================
Thanks for any help.
Emmanuel.
> >3) Using postgresql table whith many text fields & big text in this fields
> >Borland crash (IDAPI32.dll & KERNEL.dll error) when i use the DBNavigator
> with
> >nbRefresh, nbLast, nbFirst Buttons.
>
> the problem is the following postgresql doesn't support records
> more bigger than 16KB (or at least to updated in chunks of less
> than 16KB), if you need to store bigger fields you have to use the
> large objects interface.
> AFAIK, this will be fixed in 7.0, there will be no limitations in
> the size of tuples.
It works with Python & Pygresql ; Having make check & records (tuples) < 8Kb
> change the design or wait :)
>
> >- Change design of the database [ The type 'text' seems to be 'memo' in
> DBgrid
> >of Delphi] (I need long description of text in the fields)
>
Same problem with char (2048)
> >- Don't use DBNavigator with nbRefresh, nbLast, nbFirst Buttons (Not
> fixing
> >problem)
>
> I never use DBNavigator, it only tend to force you to make a bad
> interface with the user.
> What I do use is DBBitBtn at
> http://www.geocities.com/SiliconValley/Heights/7874/delphi.htm
>
>
> Sergio
Very nice link ; no problem to make install of DBBitBtn in Delphi 5 & good
documentation about DBBitBtn. Nice.
BUT SAME PROBLEM :((
В списке pgsql-interfaces по дате отправления: