[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

[MacPerl] DBI reference in O'Reilly MySQL/mSQL book



On Mon, Jun 14, 1999 at 04:09:00PM -0700, Peter Prymmer wrote:
> 
> Richard Gordon wrote:
> 
> > At the risk of taking this a bit off topic, let me ask what DBI and 
> > DBD actually stand for? In the Perl Cookbook, they are described as 
> > Database Interface and Database Driver, respectively (p. 508), and it 
> > seems like there's a similar description in the ever popular MPPE (my 
> > son swiped my copy of the latter, so I can't look at the moment).
> > 
> > So far, so good, but as some of you may know there's a new book on 
> > MySQL/mSQL coming out next month and a "beta" chapter about using 
> > Perl with this stuff is online at 
> > http://www.oreilly.com/catalog/msql/chapter/ch10-beta.html. In that, 
> > the authors say
> > 
> > "DBD/DBI stands for 'DataBase Dependent/DataBase Independent'."

I continue to be amazed that authors and publishers of books that
discuss the Perl DBI don't ask me to even do a simple read-though.

The lack of _any_ accurate books on the DBI was one of the main
motivations for helping to write one.

Anyway, the official interpretation is:

  DBI = DataBase Interface
  DBD = DataBase Driver

> > Maybe I'm nitpicking, but this doesn't sound right and leads me to 
> > wonder what else is in the book that may be of dubious authority. I 
> > was going to jump them about this on the reader comments page, but 
> > thought it would be prudent to run this by you guys to see if the 
> > authors are as wrong as I suspect.
> > 
> > I am starting to use MySQL and really hope that this will be a good 
> > book, but this has me a little leery. So what do you guys think?
> 
> According to a quasi-offical web page at:
> 
>   http://www.symbolstone.org/technology/perl/DBI/
> 
> The author of DBI had this to say (without mentioning DBI explicitly :):
> 
>  "DBperl is a database access Application Programming Interface (API) for the 
>   Perl Language. The DBperl API Specification defines a set of 
>   functions, variables and conventions that provide a
>   consistent database interface independent of the actual database being used." 
> 
>                                                -- Tim Bunce

That's a very old quote since before the DBperl effort was renamed DBI.
It should be updated to something like:

   The DBI is a database interface module for Perl. It defines a set of
   methods, variables and conventions that provide a consistent
   database interface independent of the actual database being used.

> The Database Driver for a given database is indeed dependent on which
> database you use, hence there is a DBD::Oracle for example, whereas
> DBI is independent of database and there is no DBI::Oracle.  So even though
> the acronym expansion given by the msql book authors is not correct 
> it did nonetheless convey the correct interpretation of the functionality 
> of the DBI versus the DBD::* modules.
> 
> Peter Prymmer

Tim.

===== Want to unsubscribe from this list?
===== Send mail with body "unsubscribe" to macperl-request@macperl.org