RAD Studio 2010 Review #10: – Database Jewels

Data ExplorerFinally we reached to the database part. Even if we’re talking about a a prerelease beta and anything can change till release, I do think that you’ll see the features described bellow. 🙂 Also, let us not forget to give a thank to the Embarcadero guys for giving us the permission to talk about this.

Perhaps after such a long wait, you will expect to say many things about the Firebird support in Delphi 2010. But I’ll say… just two words: just works. Ok, perhaps you’ll find a way to crash it, but at least for me it was stable enough. And it seemed that for other folks around there. (Yep, there was more than one field tester… 🙂 ). To be clear, Firebird is supported only in the latest and greatest database access technology from Embarcadero, Database Express (DBX for short). It supports, of course, the latest version of Firebird (2.1.2 at the time of writing) as well as older ones, is full Unicode and it ships with the full source code.

In fact, all the  DBX drivers ships with the source code. In fact there are 90 (ninety) source files which are new in Delphi 2010, compared with Delphi 2009! (Yes, I made a synchronization report between the Source directories of the two distributions). We have enough material to discuss and learn, eh? All the DirectX interface (OpenGL was already present in Delphi 2009 – did you knew this?), Windows Media Format 9 API (I mention this because someone asked about improvements in video editing), utility units like Diagnostics.pas etc.  Chris Bensen was right. There are new units in Delphi 2010.

Returning to our flock, in {$BDS}\source\db\midas you have all the source code of Midas.dll (in C++ of course). Also, be aware that all the speed enhancements and fixes wrote by Andreas Hausladen are included now in the product. Also, if you are aware about the Alexandre Machado’s hints as well as the Log problem, then you’ll have a pretty neat database access layer. For the ones who don’t know, you can “get rid” of Midas.dll and further enhance the performance of you application by adding at your uses clause the MidasLib unit, which ’embeds’ the .dll right in your executable.

In RAD Studio 2010 the following databases sources of data are supported in DBX (in alphabetical order):

Note that DataSnap isn’t a database in itself, it is a n-tier communication technology which got enough and important enhancements in Delphi 2010. Also, to make the things very clear, even if DBX can use DataSnap as a data source, DataSnap isn’t tied in any way with DBX or any other database technology. So you can freely use DataSnap in your applications to do any kind of distributed computed you like. But about these things, and how can you use this technology to make your own n-tier applications, calling remote methods, serializing objects as well as how you can exchange data with Java and .NET applications in another post. And all these of course ships with the full source code. It seems that the team really gets some things, isn’t?

Till then, can you take the following short survey and share your thoughts?


Most probably we’ll comment some of the above results in a next post. Thank you!

26 thoughts on “RAD Studio 2010 Review #10: – Database Jewels

  1. Nice to see they added source code at last… if they did much before many of the bugs that marred dbExpress and Midas since their first releases would have been fixed long ago.
    The “open-source-means-software-for-free-so-I-can-earn-more-exploting-it” Firebird users will be happy to see the driver they avoided to write and donate to the open source community in the past years .
    Waiting to see if Datasnap starts to offer something in the authentication/authorization/integrity/privacy depts. Nowadays exchangig data is easy. The hard part is to protect them from unauthorized people.

  2. Pingback: Firebird News » RAD Studio 2010 Review : Database Jewels

  3. Postgres is open source too. People needing a driver should gather, write an open source one and donate it to the community – that’s the open source spirit, not the “hey that’s free” one .

  4. Pingback: Личная записная

  5. Pingback: RAD Studio 2010: Community pulse: The day after. (Part 1) « Wings of Wind Software

  6. Pingback: Firebird News » Firebird is #1 with Delphi

  7. Common Embarcadero, where is the PostgreSQL support?
    It is after all the most advanced open source database 🙂

    Seriously, the latest versions (8.3 and 8.4) totally rock and blow MySQL out of the water. With PostgreSQL, you can write stored procedures in Pl-pgsql, or Python, or Perl or PHP and mix them as needed, for example, say you need to use python for hashing passwords, no problem, you can write the function in Python and call that function from pl-pgsql. Can you do that with MySQL or Firebird?

  8. We can only hope…. The thing is they have a postgresql driver from Kylix which I am pretty sure would speed the development of a newer driver.

    • Really now… Postgresql support is a must.
      We all know, probably the best choice for a serious database related application is PostgreSQL.
      I don’t understand why it is not included with Delphi 2010.
      It’s one of the reasons I would buy the 2010 version.
      So far Delphi 7 rocks, none of the above versions motivated me to buy a new license.
      I was really hoping to be motivated by this 2010 version, but it seems I was wrong.
      Too bad Embarcadero, this is how you lose clients.
      It’s not too late I hope… maybe you change your mind and include the suport after all… You would make my day.

      • “Really now… Postgresql support is a must.”
        Most probably it will be in the next version. But I don’t know, of course. It makes a lot of sense a cross-platform Delphi to support PostgresSQL.

        “We all know, probably the best choice for a serious database related application is PostgreSQL.”
        Oh, oh, oh! 🙂 From where did you drew this conclusion? There are much more fans of other database systems which would contradict you. Even if PostgreSQL is free, it didn’t conquer the world. This should give you some food for thought, isn’t it?

        I don’t understand why it is not included with Delphi 2010.
        I’m not an Embarcadero decision maker. But I can see some reasons: PostgreSQL is a ‘baby’ on Windows. In the market perception it was close to MySQL (remember, we speak about times before Oracle’s acquisition) and MySQL was much more popular. So, it made little sense to have also this driver. Please note that I spoke about market perception – I didn’t made a technical comparison between the two. (IOW, don’t flame me on this 🙂 ). But you can always buy DBX PostgreSQL from 3rd party vendors – there are enough solutions for this. (eg. DevArt comes in mind). Also, if you want free PostgreSQL access in Delphi you can use Zeos.

        I was really hoping to be motivated by this 2010 version, but it seems I was wrong.
        D2010 has much more value included, especially when is compared with D7. (language enhancements, VCL enhancements, productivity etc.) – isn’t just a DBX driver which makes the difference. But if you want to stay with D7 so far so good.

        It’s not too late I hope… maybe you change your mind and include the suport after all…
        As I said, most probably the next version will have a PostgreSQL DBX driver out of the box. In your place, if your application is tied to Windows, I’ll upgrade from D7 to D2010 for half price (the offer ends at the end of this year) and I give to DevArt ~ 130$ (or to a similar vendor – I think that also RemObjects has an offer – there are some of them) and next year to use the one which will be shipped with Delphi.

        • – You are talking about crossplatform improvements for Delphi 2010… and “Postgresql is a baby in Windows world”… I do not get it… what did say wrong?
          I do not use postgresql installed on a Windows server, I use a remote server running on FreeBSD(Unix) and it works like a charm. I was not talking about postgreSQL improvements for windows platform, I was talking about Delphi improvements, to include OpenSource database connection and so forth. So I do not consider being wrong when I am not satisfied with the new version of Delphi 2010 because of this. About “babies”… in Database world, I would call a baby the MS SQL Server, which gets it’s connection components from Embarcadero.

          – About the language improvements you mentioned, 90 to 99% of the software out there do not need these improvements (I am not talking about delphi prism here). Everything you need to get done can be achieved using Delphi 7. Of course there is more in the programming world then I can see or need/use, but so far Delphi 7 did not disappoint me

          -“most probably the next version will have a PostgreSQL DBX driver” – this is what I said for the last 4-5 versions of Delphi. I am more and more “optimistic” every year.

          – I know I can use ZEOS, I know I can use a lot of other tools and components, it’s not like I’m a newbie in this area (I use delphi intensively since version 6 = 2001), my complaint was that an extremely powerful Relational Database (compared to Oracle) is not treated with the respect it deserves by a company that offers solutions to programmers. The fact that it did not conquer the world is the result of business management. As you probably know PostgreSQL lives through donations, and not from sales as others do (like MySQL who “conquered the world” by the way because they worked hard, and spent money, to please the ISPs). If a developer wants a powerful DB engine to support his applications, and do not want to spend money on it, has one and only one option (imho), and that is PostgreSQL, not Oracle (expensive), not Informix or IBM DB2 (expensive), not MySQL (comercial use needs comercial license=money), and definitely not SQL Server (“a baby in the Windows” Database world, that also costs money too). Firebird is a RDBMS mostly used by borland products developers and did not meet my requirements when I was tempted to use it.
          I developed applications with my Delphi 7 using most of the databases mentioned above and I found ways to do it just fine (not all ways were free or cheap). The “problem” is that Embarcadero offers one of the most expensive development environment and it should contain a lot more “free” stuff, like the stuff that is already free or open source, such as PostgreSQL.
          I am the biggest fan of Delphi so please don’t try to sell it to me, I’ll be the first customer to buy the version that pleases me. Actually, I am tempted to buy this one even if there will be additional costs for additional licenses. And that is what does not make me happy, spending more money :(.
          And by the way, with all my eulogies to PostgreSQL, I do not work for Berkley University :))), I wish I would.
          I hope I did not upset you with my comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s