ZEOSDBO - New Application

Forum related to version 6.5.1 (alpha) and 6.6.x (beta) of ZeosLib's DBOs

Moderators: gto, cipto_kh, EgonHugeist

Post Reply
sandeep_c24
Expert Boarder
Expert Boarder
Posts: 158
Joined: 06.11.2005, 01:43

ZEOSDBO - New Application

Post by sandeep_c24 »

Hi All

I am planning to use ZeosDBO for my new project. The reason I want to use this is because I want to support multiple databases. Some of my clients want only commercial database like MSSQL or Oracle, some don't mind what database is used.

I would like some advice from people who have developed such applications.

I would also like to know about the future of ZeosDBO and maybe some kind of roadmap if possible. Is it ok to use ZeosDBO 6.5.1 alpha to start developing my application.

I am planning to use TClientDataset with ZeosDBO. Is it the right way to use ZeosDBO? I will not use any stored procedures. What would be the right way to handle auto inc fields in such case.

Any other advice/suggestion is welcome. Thanks in advance.

Regards

Sandeep
zippo
Silver Boarder
Silver Boarder
Posts: 322
Joined: 12.10.2005, 18:01
Location: Slovenia

Post by zippo »

I'm using Zeos 6.5.1 since it was alpha an it worked OK. Some users reported problems with BLOBs and floating point types, but I didn't had those problems.

I use an INI settings to store the DB driver I want to use (MsSQL,MySQL,Oracle,... etc.). I also developed some utilitys thet change the driver while running and worked OK, but be aware to nice close all the datasets and disconnect before doing this. Be aware, that some servers have slightly different SQL syntax than other - test it on every server you want to use!

Performance is OK, but not fully comparable to DB-specific components. It is a little bit slower, but unless you develop time-critical applications you won't notice the difference.

About the roadmap - I would like to see it, too.. :)

Never uset the TClientDataset, so I don't even know how to use it.. :):):) To use AutoINC, you just post with NULL values or in some cases use a 0 (zero), so the server will automatically change it to the next value.
sandeep_c24
Expert Boarder
Expert Boarder
Posts: 158
Joined: 06.11.2005, 01:43

Post by sandeep_c24 »

Hi Zippo

Thanks for the response.

>Performance is OK, but not fully comparable to DB-specific components. It is >a little bit slower, but unless you develop time-critical applications you won't >notice the difference.

How much slower compared to native stuff?

Regards

Sandeep
sandeep_c24
Expert Boarder
Expert Boarder
Posts: 158
Joined: 06.11.2005, 01:43

Post by sandeep_c24 »

Why is this forum so quiet? I haven't seen many replies to my posting, I was expecting a lot of replies for my posting. I haven't heard much from the admins. I was wondering if this is the right place to ask questions or is there any other forum I should join?

Regards

Sandeep
User avatar
mdaems
Zeos Project Manager
Zeos Project Manager
Posts: 2766
Joined: 20.09.2005, 15:28
Location: Brussels, Belgium
Contact:

Post by mdaems »

Hi Sandeep,

I think this kind of questions has already been answered some times. Unfortunately a lot of these answers has been lost the day the old forum was gone.

If I'm not mistaken the 'answer' was that you will have to make the trade off between a very quick 1 database implementation with the native interface dll 's or the slow implementation using a middleware like ADO or BDE that needs its own drivers configuration on the target computer. Zeoslib is the in between medium slow solution, that offers easy configuration and switching.

Concerning the 'native'-ness : don't forget you are using the native connection libraries of the databases you use. I don't think you can solve your problem with the different supported databases without zeoslike components unless you use some middleware like ADO or the BDE. Of course, you can write your own Zeos, but I doubt whether it would be much faster.

Some pitfalls writing database independent coding :
If you start writing sql yourself it will be difficult to keep the code database independent.
Also check your database design with the different databases you want to support. (eg. autoincrements, triggers, stored procedures,...) There's so much difference between databases that it's almost impossible to code that kind of stuff on all databases in such a way that your application doesn't see any difference.

Greetings,

Mark
Image
zippo
Silver Boarder
Silver Boarder
Posts: 322
Joined: 12.10.2005, 18:01
Location: Slovenia

Post by zippo »

I totally agree.

About quiet forum... it's a small community here, so there's not many "traffic" on the forum. Also the forum is quite fresh, so not all the developers joined it. And finally - I couldn't answer, because I was on a one-week vacation (yesssss.... :) )

Let's return to Delphi... It's true - Zeos is between generic engines (like BDE) and native, but it's more near to native than to BDE and similar. Give it a try, I recomend it. Well, to be honest, there's one drawback and it's the developing of the components. It has ben stopped for a long time and now it's developed by a new crew. I know they're doing their best to restart the project, but we don't know nothing about the projects, no roadmap, no plans,... This could be a disadvantage through time. If you're doing a small/medium application it's not a big problem, but if your applications has dozens of forma, hundreds of queries/tables,... then it could be a pain in the ass.

Also migration from 5.x to 6.x is not very easy - I experienced a lot of difficulties and some projects still run in 5.x, because of the size of the project and problems regarding the behaviour of the 6.x version (not wrong, just different in some cases).
Post Reply