[ psqlodbc-Bugs-1009575 ] MS QUERY fails for multi table query

From: <noreply(at)pgfoundry(dot)org>
To: noreply(at)pgfoundry(dot)org
Subject: [ psqlodbc-Bugs-1009575 ] MS QUERY fails for multi table query
Date: 2011-11-02 00:13:01
Message-ID: 20111102001301.28B16532E3C4@pgfoundry.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Bugs item #1009575, was opened at 2007-10-19 18:15
You can respond by visiting:
http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1009575&group_id=1000125

Category: None
Group: None
>Status: Closed
Resolution: None
Priority: 3
Submitted By: Jay Lundschen (datapoint)
Assigned to: Nobody (None)
Summary: MS QUERY fails for multi table query

Initial Comment:
MS QUERY (MSQRY32.exe) fails "ERROR: cross-database references are not implemented:"databasename.public.table"; Error while executing the query" when using psqlODBC 8.02.05, 8.02.04, 8.02.03. It works with 8.02.02. I am using the ANSI driver.

When looking at the source I noticed the following:

In info.c is

case SQL_DATABASE_NAME: /* Support for old ODBC 1.0 Apps */

/*
* Returning the database name causes problems in MS Query. It
* generates query like: "SELECT DISTINCT a FROM byronnbad3
* bad3"
*
* p = CC_get_database(conn);
*/
p = CurrCatString(conn);
break;

And in connection.c in version 8.02.02 is

const char *CurrCat(const ConnectionClass *conn)
{
/*
if (conn->schema_support)
return conn->connInfo.database;
else
*/
return NULL;
}

const char *CurrCatString(const ConnectionClass *conn)
{
const char *cat = CurrCat(conn);
if (!cat)
cat = NULL_STRING;
return cat;
}

And in connection.c in version 8.02.03 is

const char *CurrCat(const ConnectionClass *conn)
{
if (conn->schema_support)
return conn->connInfo.database;
else
return NULL;
}

const char *CurrCatString(const ConnectionClass *conn)
{
const char *cat = CurrCat(conn);

if (!cat)
cat = NULL_STRING;
return cat;
}

The change now allows the database name to be returned in version 08.02.03 and later versions if conn->schema_support is true.

Please let me know if you need more information.

----------------------------------------------------------------------

Comment By: Hiroshi Inoue (hinoue)
Date: 2007-10-22 23:38

Message:
Please try the attached driver ?

regards,
Hiroshi Inoue

----------------------------------------------------------------------

Comment By: Jay Lundschen (datapoint)
Date: 2007-10-22 14:51

Message:
Could you provide a UNICODE version?

Regards,
Jay

----------------------------------------------------------------------

Comment By: Jay Lundschen (datapoint)
Date: 2007-10-21 00:21

Message:
It works! Thanks.

Regards,
Jay

----------------------------------------------------------------------

Comment By: Hiroshi Inoue (hinoue)
Date: 2007-10-20 08:47

Message:
Could you try the attached driver ?

regards,
Hiroshi Inoue

----------------------------------------------------------------------

You can respond by visiting:
http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1009575&group_id=1000125

Browse pgsql-odbc by date

  From Date Subject
Next Message Zoltan Boszormenyi 2011-11-06 03:49:29 Locale problem with psqlODBC under Fedora 16
Previous Message noreply 2011-11-02 00:07:43 [ psqlodbc-Bugs-1010735 ] Error on method Fields using client side recordset