Page 1 of 1

Coding with IBDAC with a view to UNIDAC compatability

Posted: Sat 23 Aug 2008 08:46
by hughespa
Hi,
I'm considering using IBDAC for a new project using FB 2.x. instead of DBExpress. I read somewhere that IBDAC is UNIDAC compatible.

What does this mean exactly?

What do I need to consider for example if in the future I might want to switch to UNIDAC and run against MS SQL server.

Would there be a lot of work in converting an application using 30..40 tables from FB/IBDAC to MSSQL/UNIDAC.

I'm using RAD Studio 2007 Ent.

Thanks for any pointers.

Regards, Paul.

Posted: Tue 26 Aug 2008 11:03
by Plash
Compatibility means that you can install IBDAC and UniDAC in the IDE simultaneously.

UniDAC has the Migration Wizard that can automatically replace IBDAC components with UniDAC components on your forms. You can use this wizard but you'll have to change some code manually.

Posted: Tue 26 Aug 2008 13:14
by hughespa
Hi Plash, thanks for your reply.

It was the specifics of what I might need to change that I was interested in. Or, alternatively, what I might need to avoid doing under IBDAC to make that future migration as simple as possible.

Is UniDAC going to run as fast as IBDAC or cause any other loss of functionality, etc?

I'm thinking it must be slower with the extra layer involved and would perhaps maintain 2 specific versions of the app if thats the case, one for FB and another for MSSQL for example.

Regards, Paul.

Posted: Wed 27 Aug 2008 08:58
by Plash
UniDAC and IBDAC have the same number of layers and the same performance. UniDAC has the most features of IBDAC but some InterBase/Firebird specific features are not supported:

1. TIBCAlerter component has no analog in UniDAC.
2. Custom parameters for connection and transacion (Params property of TIBCConnection and TIBCTransaction) are not supported in UniDAC.
3. ARRAY data types of InterBase are not supported in UniDAC.

You should not use these features if you want to migrate to UniDAC.

Posted: Wed 27 Aug 2008 14:22
by hughespa
Thanks Plash,

That's clear now.

Regards, Paul.