Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: choices regarding where to place code - in the database or middletier
Joe Weinstein wrote:
> Daniel Morgan wrote:
>
>> Joe Weinstein wrote: >> >>>> Unless I interpret the above as meaning you've changed your mind I >>>> am lost as to your original intent when you wrote that you counsel >>>> against complete DBMS dependence. Seems like you've changed from >>>> "dependence" to "INdependence". Was the original a typo or did I >>>> misunderstand you? >>> >>> >>> No, the original is correct, that I council *against complete DBMS >>> INDEPENDENCE*. The 'IN' is intended, and in the original post. I also >> >> >> > council against complete DBMS-specificity, or even using the DBMS for >> > everything it can do. >> >> You are mixing together multiple incompatible concepts. Lets take them >> one at a time. >> >> Complete DBMS independence means utilizing those vendor specific >> functions that optimize security, performance, and scalability. Good >> so far. >> >> Having done the former ... the second is logically impossible. Once I >> use a vendor specific function, for example in Oracle packages, I have >> code that can not be moved anywhere else without a rewrite. You can't >> have it both ways.
We are going to have to end this one with a total disagreement. Having spent more than 33 years in IT and more than 15 of them with relational databases I have yet to ever see an example of:
"Complete DBMS *dependence* means utilizing (all) those DBMS-vendor specific functions that optimize or implement security, performance, and scalability (and other stuff)"
and
"Complete DBMS independence means that a system is not bound to a given DBMS, because it uses only the functionality offered by the DBMS that is accessible via DBMS-neutral syntax"
What you suggest is a logical impossibility.
In Oracle, for example, there is no better place to put code than in a package; for numerous reasons. No other database vendor has the concept ... therefore throw packages away.
In Oracle and DB2 the best way to do numering is with a sequence. SQL Server and Sybase don't have them so throw sequences away. Of course SQL Server and Sybase have autonumbering that Oracle doesn't have so throw autonumbering away too. Guess we won't have any surrogate keys except by wrapping your own ... now that's generic. All we need to do now is recompile for every operating system.
Sorry Joe ... but your attempt to construe development to sell your company's product is a great way to do some things. Creating high performance scalable databases isn't one of them. Not once has Oracle won a benchmark contest with BEA using generic code. No one else will either.
-- Daniel Morgan http://www.outreach.washington.edu/ext/certificates/oad/oad_crs.asp http://www.outreach.washington.edu/ext/certificates/aoa/aoa_crs.asp damorgan_at_x.washington.edu (replace 'x' with a 'u' to reply)Received on Thu Jan 29 2004 - 02:33:04 CST