Robert Hicks wrote:

Alexander Foken wrote:

You need to pass the quotes to the SQL engine. And by the way, you should either use parameters or the quote function for values:

my $sth=$dbh->prepare('select * from taskhours_per_date where "employee name"=?');
$sth->execute('NAME HERE');

Maybe MS Acesss has other ways to do this, especially old Access versions have some very strange behaviours.

Alexander


Could it be that DBD::ODBC just cannot handle it? I tried it that way, I tried it with brackets, backticks, double quotes, etc. and no go.

I think the main problem here is MS Access. I've worked a lot with DBD::ODBC, and except with Unicode data, I never had problems. You did not tell us wich version of Access you are using, there are a lot of differences between the various versions, older versions (like 2.0 or 95) are just plain pain, newer versions (like 2000) slowly evolved to something comparable to an SQL database. Don't get me wrong, Access is a nice frontend for a database, but its own "database" is nothing I would use for more than 100 records in one or two tables.


I was hoping just to slap a small web frontend to it but I guess I will go the heavier route and move it over into Oracle using my own schema.

You can use Oracle and Access, just install the Oracle ODBC drivers onto each client and use Access just for the forms. DON'T let Access handle the business logic, this is something you definitly want to do on the (Oracle) server. If you don't have an Oracle License, you could also use the free (as in beer) MSDE, or the free (as in beer and speech) PostgreSQL.

You could slowly migrate your system, a first step would be to make sure all table and column names match /^[A-Za-z][A-Za-z0-9_]+$/. Next, move the tables and the business logic to a "real" database. Then finally, get rid of ODBC drivers and Access on the clients and switch to a web frontend using a native driver like DBD::Oracle or DBD::Pg.

Alexander

--
Alexander Foken
mailto:[EMAIL PROTECTED]  http://www.foken.de/alexander/

Reply via email to