Re: More Problems with ODBC and Access - Mailing list pgsql-odbc

From Greg Campbell
Subject Re: More Problems with ODBC and Access
Date
Msg-id 4216246B.2090605@us.michelin.com
Whole thread Raw
In response to More Problems with ODBC and Access  (Steve Backman <earlysteve@earthlink.net>)
List pgsql-odbc
On the BIG-INT IDs. I'm pretty sure Access has an Integer of 16-bit and
a Long Integer of 32-bit that it understands. In PG that's int2 and int4
respectively. I think int8 or 64-bit are problematic for Access because
the ODBC conversion must choose between string and decimal and float
single or double. I am really not sure if decimal or float(singles or
doubles) serve well as a primary keys, especially for an exact match
parent-child / primary key-foreign key relationship.

It seem a little limiting but I try to limit my non-string primary keys
to int4 and serial int4 (not big serial). If it works Access should not
complain about being unable to identify a primary key if you link a
table manually.I would check my ODBC driver settings on how it treats
int8 (datasource button - tab 2). Unfortunately, I haven't personally
done forms with subforms for parent-child relations using the PostgreSQL
ODBC served datasource. I've only done it with Access tables, but I do
wish you good luck.



Steve Backman wrote:

> Thanks to follks who posted ideas about resolving connection problems
> between Access and pgsql. SOme ideas may have helped; some now.
>
> I tried a couple different versions of the newer drivers. i updated
> the MDAC install. I set registry timeout to 0.
>
> On newer version of the ODBC drivers, including 7.02.0005 and
> 8.00.0004, things got worse, not better. WIth them, the Access forms
> did not show any sub-forms with parent child data. I could open all
> the tables individually, and I can view the sub-form on its own, but
> if I open the main form, I can an error and no child data. I have
> listed a snipped from the 8.00.0004 version log below.
>
> So, I put the version back to 7.03.2000 which is where I started with
> last summer. This version works better, except not stable (loses
> connection after a while, as I described before)
>
> Related: What makes big int id's in pg show up as decimals in Access?
> Could this be part of the problem? Does it matter whether the id's are
> big ints or just ints? Do any of the settings refer to this? The
> documentation of the settings leaves some room for improvement...
>
> I also have seen some random comments about the present of time stamp
> fields, booleans, memo/text fields. I'm not sure its worth
> restructuring the database and the web site around it in order to test
> these possibilities without more insight.
>
> Also, does anyone have a sense of whether links created in code are
> deficient in some ways compared to links created through Access IDE?
>
> here's sample problematic sql. In opening the form, first the log
> shows query for main table (individual...), which works. Then shows
> trying to get a child table, org affiliations for an individual, which
> failed on recent versions of the driver.
>
> conn=201676480, query='SELECT
> "public"."org_ind"."org_ind_id","public"."individual"."firstname"
> ,"public"."individual"."lastname"  FROM
> "public"."org_ind","public"."individual" WHERE (( 4129'
> ERROR from backend during send_query: 'ERROR:  syntax error at end of
> input at character 168'
> STATEMENT ERROR: func=SC_execute, desc='', errnum=7, errmsg='Error
> while executing the query'
>
> ------------------------------------------------------------
>                  hdbc=201676480, stmt=201912520, result=174373392
>                  manual_result=0, prepare=0, internal=0
>                  bindings=0, bindings_allocated=0
>                  parameters=174370736, parameters_allocated=1
>                  statement_type=0, statement='SELECT
> "public"."org_ind"."org_ind_id","public"."individual"."firstname"
> ,"public"."individual"."lastname"  FROM
> "public"."org_ind","public"."individual" WHERE (( ? =
> "public"."org_ind"."org_id" ) AND ("public"."org_ind"."ind_id" =
> "public"."individual"."individual_id" ) ) '
>                  stmt_with_params='SELECT
> "public"."org_ind"."org_ind_id","public"."individual"."firstname"
> ,"public"."individual"."lastname"  FROM
> "public"."org_ind","public"."individual" WHERE (( 4129'
>                  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_CUR0C08F0C8'
>                  ----------------QResult Info
> -------------------------------
>                  fields=174381160, manual_tuples=0, backend_tuples=0,
> tupleField=0, conn=0
>                  fetch_count=0, num_total_rows=0, num_fields=0,
> cursor='(NULL)'
>                  message='ERROR:  syntax error at end of input at
> character 168', command='(NULL)', notice='(NULL)'
>                  status=7, inTuples=0
> CONN ERROR: func=SC_execute, desc='', errnum=110, errmsg='ERROR:
> syntax error at end of input at character 168'
>             ------------------------------------------------------------
>             henv=174339688, conn=201676480, status=1, num_stmts=16
>             sock=201675736, stmts=174383240, lobj_type=-999
>             ---------------- Socket Info -------------------------------
>             socket=836, reverse=0, errornumber=0, errormsg='(NULL)'
>             buffer_in=174385016, buffer_out=201655216
>             buffer_filled_in=1, buffer_filled_out=0, buffer_read_in=1
>
> sorry for long post.
>
>
> Steven A Backman - Database Designs Associates, Inc.
> PO Box 715 - Jamaica Plain, MA 02130
> 617-889-0929  personal fax: 309-404-2252
> sbackman@dbdes.com  www.dbdes.com
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
>               http://archives.postgresql.org


Attachment

pgsql-odbc by date:

Previous
From: laurie.burrow@powerconv.alstom.com
Date:
Subject: Re: Cannot link to postgres 8.0.0 databases using ODBC from
Next
From: Eric E
Date:
Subject: Re: Cannot link to postgres 8.0.0 databases using ODBC from