Board index » delphi » Upgrading IB5.6 to Firebird

Upgrading IB5.6 to Firebird


2006-04-19 06:10:29 AM
delphi236
Hi,
I have a D2 app using IB5.6 and the BDE. Can anyone tell me how hard it
would be to move this to a Firebird database?
Thanks & Regards,
Matthew
 
 

Re:Upgrading IB5.6 to Firebird

Matthew Pascoe writes:
Quote
Hi,

I have a D2 app using IB5.6 and the BDE. Can anyone tell me how hard
it would be to move this to a Firebird database?

Thanks & Regards,
Matthew
The best place to ask is on the Firebird support list but it will not
be trivial. You will need to replace the BDE with another data access
layer since the BDE SQL Links drivers have been deprecated and there
never was a driver for Firebird. Beyond that it depends on which set of
data access components you decide to use and how closely they resemble
the BDE components in properties, methods, events and behavior.
--
Bill Todd (TeamB)
 

Re:Upgrading IB5.6 to Firebird

Hi Bill,
Thanks once again for your assistance. I was hoping it might have been a
backup and restore job.
Matthew
"Bill Todd" <XXXX@XXXXX.COM>writes
Quote
Matthew Pascoe writes:

>Hi,
>
>I have a D2 app using IB5.6 and the BDE. Can anyone tell me how hard
>it would be to move this to a Firebird database?
>
>Thanks & Regards,
>Matthew

The best place to ask is on the Firebird support list but it will not
be trivial. You will need to replace the BDE with another data access
layer since the BDE SQL Links drivers have been deprecated and there
never was a driver for Firebird. Beyond that it depends on which set of
data access components you decide to use and how closely they resemble
the BDE components in properties, methods, events and behavior.

--
Bill Todd (TeamB)
 

Re:Upgrading IB5.6 to Firebird

You _might_ get away with that moving to Firebird 1.x or 1.5x as a
temporary solution but I'd bet against it until you find someone
who has done it. IAC it would be a very short term solution.
--
Bill Todd (TeamB)
 

Re:Upgrading IB5.6 to Firebird

Matthew Pascoe writes:
Quote
Hi Bill,

Thanks once again for your assistance. I was hoping it might have been a
backup and restore job.
This will (probably!) take care of converting the database. However,
there have been changes (e.g. Date/TimeStamp). Take a look at the
conversion guide for moving from 5.x to 6.x. After that, see the
Release Notes for Firebird 1.0 and 1.5 (both of them).
Converting the application(s) will probably be more complicated. Coming
from the BDE you might find IBO to be more "familiar" than other
candidates (like FIBplus). Check out
www.ibobjects.com/ibowhatis.html and the bit about "Converting an
Existing BDE Application".
Visit the IBO newsgroups and the Firebird newsgroups - they are mirrored
on news.atkin.com. You can find a list of newsgroups here:
www.ibphoenix.com/main.nfs
--
Aage J.
Quote

Matthew

"Bill Todd" <XXXX@XXXXX.COM>writes
news:XXXX@XXXXX.COM...
>Matthew Pascoe writes:
>
>>Hi,
>>
>>I have a D2 app using IB5.6 and the BDE. Can anyone tell me how hard
>>it would be to move this to a Firebird database?
>>
>>Thanks & Regards,
>>Matthew
>The best place to ask is on the Firebird support list but it will not
>be trivial. You will need to replace the BDE with another data access
>layer since the BDE SQL Links drivers have been deprecated and there
>never was a driver for Firebird. Beyond that it depends on which set of
>data access components you decide to use and how closely they resemble
>the BDE components in properties, methods, events and behavior.
>
>--
>Bill Todd (TeamB)


 

Re:Upgrading IB5.6 to Firebird

Quote
I have a D2 app using IB5.6 and the BDE. Can anyone tell me how hard it
would be to move this to a Firebird database?
I have a D2 app using IB5.6 and the BDE. Can anyone tell me how hard it
would be to move this to a Firebird database?
I guess my experience has been different than others. Last year a customer wanted to deploy one of my applications on their own site, and this application has some age on it and is running against Interbase 5.6. I thought it would be easy... just buy an Interbase 5.6 server license and go, but Borland refused to sell a 5.6 license to this customer. Surprised, I went though tons of postings and picked out a few where people said "call so and so at Borland and he'll sell you an Interbase 7 license but give you Interbase 5.6 keys" but the process didn't work out. We would have even settled for a note on Borland letterhead giving us permission to reuse our existing keys on the new server after purchasing an Interbase 7 license but no-go.
beaten, I ended up installing Firebird on a development machine with my app and initially ran into a few problems. Reserved words had changed, and some of them collided with field names in my database and I thought the effort would take some rewriting of querries and renaming of DB fields, which was not a good solution because I wanted to maintain the same codebase, DB structure, etc.
After some more experimenting I found that my application would run great and _unmodified_ if I ran the Firebird server on its own machine. My legacy app, using BDE and the Interbase 5.6 client, ran fine when communicating with a Firebird database on its own server. It turns out Firebird (and I guess Interbase 6+) have a built in language versioning capabilities that eliminated the new reserved word problem when older clients communicate with it.
As for the database files themselves, I can not remember if I did a backup/restore from Firebird or from the 5.6 server manager. I may have simply shut down the 5.6 server and copied the files over to the Firebird server.
I have no experience with the date/time field issues because this app was written in 1998 and I stored all date fields as floats due to Y2K fears.
I wish we could have given Borland the money for the licenses but they refused it, but it turned out to work fine with Firebird in our case.
 

Re:Upgrading IB5.6 to Firebird

Peter Gens writes:
Quote
>I have a D2 app using IB5.6 and the BDE. Can anyone tell me how hard it
>would be to move this to a Firebird database?

...
After some more experimenting I found that my application would run great and _unmodified_ if I ran the Firebird server on its own machine. My legacy app, using BDE and the Interbase 5.6 client, ran fine when communicating with a Firebird database on its own server. It turns out Firebird (and I guess Interbase 6+) have a built in language versioning capabilities that eliminated the new reserved word problem when older clients communicate with it.
Using "DIALECT 1" should keep Firebird close to IB/5.6.
However, if you continue with later versions of Fb you should consider
moving your database and application to "DIALECT 3" and move your
application form BDE to some other middleware.
Quote
As for the database files themselves, I can not remember if I did a backup/restore from Firebird or from the 5.6 server manager. I may have simply shut down the 5.6 server and copied the files over to the Firebird server.
Backup with old (here: IB/5.6) and restore with new (here: Fb) is the
way to go.
Quote
...
--
Aage J.