in reply to No Fear: decoupling your application from the database

For sure this would greatly help the effort to shorten development cycle, but I have performance concern against the idea to generate SQL statement automatically. (This is more a general concern, not directly against your idea, as I have read all of your replies you posted so far, and know you are not trying to generate all SQL statement on fly.)

My database experience is mainly with ORACLE and reasonablly large database (some of the tables go up to 3 million record, for example, we have a table to hold sales history for 3 months). My experience tells me that, most of the time, your host language would not cause serious performance problems, even if you are not a wizard of your host language. Performance problem is almost always caused by database, and one major source is your SQL statement.

A slight but thoughtful adjustment of your join, or your where clause might make your SQL statement 100 times faster, or even more. And I simply think it would be extreamly difficult to generate SQL statements that have good performance consistantly. And it is surely more difficult to make the performance to be consistant across different databases.

Another source of difficulty is the SQL syntax differences, although the basic is always the same every where. Some of those extensions are for performance.

  • Comment on Re: No Fear: decoupling your application from the database

Replies are listed 'Best First'.
Re: Re: No Fear: decoupling your application from the database
by chromatic (Archbishop) on Mar 27, 2003 at 08:02 UTC

    My experience tells me that guessing where a performance problem might be is almost always wrong.

    The easier it is to write and to modify code, the more time I'll have to run a profiler, find the real bottlenecks, and optimize what really matters.