R – Delphi 6 -> Delphi 2006 dbexpress weirdness

dbexpressdelphidelphi-2006

I have an older application (written in Delphi 6) that has to be ported to Delphi 2006 (update 2). The application used to connect to an Interbase 6.x database using DBExpress, but the new version needs to connect to a Firebird 2.x Superserver.

Porting went OK, no real problems. But now, when I try to connect to the new Firebird server from the ported app, I get the following error:

Database error
Database Server Error: no current record for fetch operation

Running the same application compiled with Delphi 6, talking to the same Firebird server runs fine. The changes needed to compile the app in Delphi 2006 weren't related to the database code – all local library stuff. The application uses TSQLDataset en datasetproviders and clientdatasets.

Anybody has any idea how or why? Any changes to DBExpress that might cause this behaviour?
Thanks.

Best Answer

I don't think Delphi 2006 supports Firebird natively. Think you need to install FIBPlus

Heres a list of what is supported in Delphi 2006:

Old driver      New driver      Database and Version

dbexpinf.dll    dbxinf30.dll    Interbase 7.5
dbexpora.dll    dbxora30.dll    Oracle 10g
dbexpdb2.dll    dbxdb230.dll    db2 UDB 8.x
dbexpmss.dll    dbxmss30.dll    MSSQL 2000
dbexpmys.dll    dbxmys30.dll    MySQL 4.0.24
dbexpasa.dll    dbxasa30.dll    Adaptive Sybase Anywhere 9
dbexpase.dll    dbxase30.dll    Sybase 12.5
dbexpinf.dll    dbxinf30.dll    Informix 9.x

Extracted from Here

Related Topic