Using MS Access front-end with PG

Started by Paul Lambertabout 19 years ago6 messagesgeneral
Jump to latest
#1Paul Lambert
paul.lambert@autoledgers.com.au

I've got an MS Access front end reporting system that has previously
used MS SQL server which I am moving to Postgres.

The front end has several hundred if not thousand inbuilt/hard-coded
queries, most of which aren't working for the following reasons:
1.) Access uses double quotes ("") as text qualifiers, PG uses single
quotes. ('')
2.) The Like function in SQL Server is case insensitive, PG it is case
sensitive. The ilike function is not recognised by Access and it tries
to turn that into a string, making my test (like "ilike 'blah'")

Has anyone had any experience with moving an access program from SQL
server to PG?

Is there any way to change the text qualifier in PG or the case sensitivity?

TIA,
P.

--
Paul Lambert
Database Administrator
AutoLedgers

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Paul Lambert (#1)
Re: Using MS Access front-end with PG

Paul Lambert <paul.lambert@autoledgers.com.au> writes:

Is there any way to change the text qualifier in PG

No. I suppose you could hack the Postgres lexer but you'd break
pretty much absolutely everything other than your Access code.

or the case sensitivity?

That could be attacked in a few ways, depending on whether you want
all text comparisons to be case-insensitive or only some (and if so
which "some"). But it sounds like MS SQL's backward standards for
strings vs identifiers has got you nicely locked in, as intended :-(
so there may be no point in discussing further.

regards, tom lane

#3Joshua D. Drake
jd@commandprompt.com
In reply to: Paul Lambert (#1)
Re: Using MS Access front-end with PG

Paul Lambert wrote:

I've got an MS Access front end reporting system that has previously
used MS SQL server which I am moving to Postgres.

The front end has several hundred if not thousand inbuilt/hard-coded
queries, most of which aren't working for the following reasons:
1.) Access uses double quotes ("") as text qualifiers, PG uses single
quotes. ('')
2.) The Like function in SQL Server is case insensitive, PG it is case
sensitive. The ilike function is not recognised by Access and it tries
to turn that into a string, making my test (like "ilike 'blah'")

Has anyone had any experience with moving an access program from SQL
server to PG?

Is there any way to change the text qualifier in PG or the case
sensitivity?

I would suggest pushing things like this to a pass through query.

Joshua D. Drake

TIA,
P.

--

=== The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive PostgreSQL solutions since 1997
http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
PostgreSQL Replication: http://www.commandprompt.com/products/

#4Edward Macnaghten
eddy@edlsystems.com
In reply to: Paul Lambert (#1)
Re: Using MS Access front-end with PG

Paul Lambert wrote:

I've got an MS Access front end reporting system that has previously
used MS SQL server which I am moving to Postgres.

Are you using "PassThrough" queries? It is not clear....

The front end has several hundred if not thousand inbuilt/hard-coded
queries, most of which aren't working for the following reasons:
1.) Access uses double quotes ("") as text qualifiers, PG uses single
quotes. ('')

What Access uses should not make any difference. In pass through
queries I as MS-SQL uses single quotes same as PostGres, and "attached
table" queries all this gets transalated at the Access to ODBC layer.

2.) The Like function in SQL Server is case insensitive, PG it is case
sensitive. The ilike function is not recognised by Access and it tries
to turn that into a string, making my test (like "ilike 'blah'")

The only way the "ilike" can be passed from ACCESS to Postgres is
through pass through queries. This is probably not what you want
though. I do not actually know how MS-Access translates the "Like"
operator at the ACCESS-> ODBC layer (probably just converts the search
string to use % and _ from * and ?). I do not know if it is possible to
switch off case sensitivity in Postgres though

Has anyone had any experience with moving an access program from SQL
server to PG?

Yes, but some time ago. I did not have the case sensitivity problem as
I knew that was a non-standard feature and did not rely on it while
developing the MS-SQL solution though (just call me smartypants :-)). I
still had to change a few things though (I cannot remember what, sorry).

Eddy

#5Paul Lambert
paul.lambert@autoledgers.com.au
In reply to: Paul Lambert (#1)
Re: Using MS Access front-end with PG

Paul Lambert wrote:

I've got an MS Access front end reporting system that has previously
used MS SQL server which I am moving to Postgres.

The front end has several hundred if not thousand inbuilt/hard-coded
queries, most of which aren't working for the following reasons:
1.) Access uses double quotes ("") as text qualifiers, PG uses single
quotes. ('')

Ignore point one in my op, it wasn't the double quotes causing the
problem and was a quick and easy fix.

Thanks,
P.

--
Paul Lambert
Database Administrator
AutoLedgers

#6Richard Broersma Jr
rabroersma@yahoo.com
In reply to: Paul Lambert (#1)
Re: Using MS Access front-end with PG

2.) The Like function in SQL Server is case insensitive, PG it is case
sensitive. The ilike function is not recognised by Access and it tries
to turn that into a string, making my test (like "ilike 'blah'")

Has anyone had any experience with moving an access program from SQL
server to PG?

Is there any way to change the text qualifier in PG or the case sensitivity?

I wonder if this would be a good feature to request from the ODBC developers by adding a parameter
to the drivers to use ilike instead of like.

Regards,
Richard Broersma Jr.