A couple ideas about DB issues:

----------
Idea 1:

Maybe we are thinking about this question the wrong way.  Instead of
picking a DB maybe we should pick an SQL standard.  Another way
of putting it is that the open source movement is founded not just
on the idea of free, community developed software with available
source files but also on the concept of standards-based development.

The closest thing to a "universal" standard for SQL is the ANSI standard.
As I understand it the most recent complete standard that is widely
supported is the SQL-92 standard.  If we coded to that standard
we would have a system with the widest possible acceptance amongst DB
vendors.

There are problems with this approach:
   -I personally know of no validator for SQL (ANSI or otherwise)
    (but then I haven't looked) so we may have to depend on human
    validators.
   -I think MySQL is not yet fully ANSI compliant (I believe the
    inability to do sub queries disqualifies it). (I know nothing
    about Postgres)
   -to get a copy of the ANSI standard you write a check to ANSI
    for $235! (there are however books which painstakingly lay it
    out)
   -there are probably more...

Some of the advantages:
   -As far as I know all commercial DB vendors support this level
    of SQL
   -Standards are what the web is all about.
   -there are probably more...

At any rate I put this out there as something to think about.


----------
Idea 2:

Another approach is one that Thomas alluded to:  Data Layer
Abstraction.

(And Thomas if you did more than allude I couldn't find the
email and apologize.)

Think of how Spectra talks to the CODB:
       There are a few basic tags:
            <CFA_ContentObject>
                  Sort of the catch-all that can be used to
                  do all sorts of object stuff but is probably
                  most often used for invoking objects.
            <CFA_ContentObjectCreate>
                  Used to create objects
            <CFA_ContentObjectDelete>
                 Used to delete objects
            (etc...)

Under the covers of these tags Spectra write fairly generic SQL
that is aimed at the big vendors (Oracle, MS-SQL, SyBase, Informix)

But if you wanted you could reach in and re-write that layer to be
specifically tuned to the RDBMS of your choice.  In other words by
re-writing relatively few tags you could write versions of Spectra
"tuned" to MS-SQL Server of even mySQL.

We could take the same approach.


just some thoughts.


Craig Fisher
Macromedia Certified Instructor
[EMAIL PROTECTED]
801-791-8251



-----Original Message-----
From: Neil Clark [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, August 01, 2001 10:29 AM
To: CF_OpenSource
Subject: Which DB?


Yep , I agree it has to work on all DB types - not just a free one.  This
throws a lot into the mix, do we aim for simply one DB to begin with or drag
the whole project out in its life aiming for the global market :-)  bearing
in mind the content management which CF6 will have.

Neil
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Structure your ColdFusion code with Fusebox. Get the official book at 
http://www.fusionauthority.com/bkinfo.cfm
Archives: http://www.mail-archive.com/[email protected]/
Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists

Reply via email to