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

Re: [MacPerl] database connectivity....at last!

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'."
> 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:


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

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

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