in reply to Re^4: Death and Return of TIMTOWTDI
in thread Death and Return of TIMTOWTDI

DBI is an API used to connect to a data source, and pass it commands. SQL is a language used to interact with a certain class of database sources. So you use DBI to send SQL to the server, if your server speaks SQL and there is a DBI driver available for it.

Michael

Replies are listed 'Best First'.
Re^6: Death and Return of TIMTOWTDI
by dakedesu (Scribe) on Jul 04, 2004 at 12:12 UTC

    So, the API that MySQL and PostgresSQL provide to interact with their database products are considered DBI?

    This seems silly and logical both at the same time... but still par for the course in the computer world

    Of course, I never really did figure out email, which I _think_ is a similar thing (I never really figured it out), what with POP3, IMAP, MTA, MDA, STMP, DNS, and half a dozen other protocals required just to get an email from point A to point B

    (Sorry, I do not mean to be belligerent, I just challenge people's response when it doesn't make sense in hopes they answer with something to make it make sense)

    -- Jamie Payne
      So, the API that MySQL and PostgresSQL provide to interact with their database products are considered DBI?
      No. MySql, Postgres, Sybase, Oracle, etc. provide C, Java, etc. APIs. DBI is a generic Perl API for database access, and DBD::mySQL, DBD::Sybase, etc provide mappings between the DBI API and the vendors C API.

      As for email - well I think you're mixing up a lot of different stuff...

      Michael

        No. MySql, Postgres, Sybase, Oracle, etc. provide C, Java, etc. APIs. DBI is a generic Perl API for database access, and DBD::mySQL, DBD::Sybase, etc provide mappings between the DBI API and the vendors C API.

        Okay, so DBI, is basically something that is inbetween Perl and SQL (or some other style of Database interaction)?

        Sorry for how OT this is going, but now I want to figure this out, or it will drive me nuts.

        As for email - well I think you're mixing up a lot of different stuff...

        That was mostly to demostraight how easily I can get confused when multiple protocals are thrown at something, and appear to be used at the same time. I will tell you right now, that I can guaruntee I mixed up some acronyms in there

        (Yes, I know this doesn't help my case, but well, it will help me :) )

        -- Jamie Payne