ADOdb

ADOdb

ADOdb est une bibliothèque d'abstraction destinée à communiquer avec différents systèmes de gestion de base de données (SGDB). Écrite au début en PHP, il existe également une version en Python.

Sommaire

SGDB reconnus

La version PHP reconnaît un nombre important de SGDB, ceci grâce à la communauté ADOdb : MySQL, PostgreSQL, Interbase, Firebird, Informix, Oracle, Microsoft SQL Server, Foxpro, Access, ADO, Sybase, FrontBase, DB2, SAP DB, SQLite, Netezza, LDAP, et les génériques ODBC, ODBTP. Les drivers Sybase, Informix, FrontBase et PostgreSQL, Netezza, LDAP, ODBTP sont des contributions de la communauté[1].

De nombreuses applications Web, comme ACID, PostNuke, Xaraya, phpWiki, Mambo, PHP GACL, TikiWiki, eGroupWare et phpLens App Server utilisent ADOdb pour leur couche d'abstraction de base de données.

Avantages

ADOdb possède plusieurs avantages.

  • Il est rapide (ADOdb est l'une des couches d'abstraction libre les plus rapides sous PHP[2])
  • Il fournit des supports extensibles et portables pour les dates et la manipulation de type, ainsi que des schémas de création portables[3].
  • Il prend en charge beaucoup de fonctionnalités d'entreprise, comme les backend sessions des bases de données (avec une notification d'expiration), génération de code SQL, tables pivots, émulation de SELECT LIMIT pour toutes les bases de données, monitoring de performances.
  • Chaque version publiée est systématiquement testée pour Microsoft Access, MySQL, PostgreSQL, MS SQL Server et Oracle 9. ADOdb possède en outre une importante communauté d'utilisateurs, gage de réactivité dans les tests.
  • Il est distribué sous licence BSD, licence permissive pour ses utilisateurs

Exemples de code en PHP

<?php
include('/path/to/adodb.inc.php');
$DB = NewADOConnection('mysql');
$DB->Connect($server, $user, $pwd, $db);
 
# M'soft style data retrieval with binds
$rs = $DB->Execute("select * from table where key=?",array($key));
while (!$rs->EOF) {
    print_r($rs->fields);
    $rs->MoveNext();
}
 
# PEAR style data retrieval
$rs = $DB->Execute("select * from table where key=123");
while ($array = $rs->FetchRow()) {
    print_r($array);
}
 
# Alternative URI connection syntax:
$DB = NewADOConnection("mysql://$user:$pwd@$server/$db?persist");
 
# No need for Connect or PConnect when using URI syntax

$ok = $DB->Execute("update atable set aval = 0");
if (!$ok) mylogerr($DB->ErrorMsg());


Autres possibilités :

# Updating tables
$ok = $DB->Execute("update table set col1=? where key=?",array($colval, $key));
 
# retrieving data shortcuts
$val = $DB->GetOne("select col from table where key='John'");
$row = $DB->GetRow("select col from table where key='John'");
$arr = $DB->GetAll("select col from table");
$arr = $DB->GetAssoc("select key,col from table"); # returns associative array $key=>col

# Retrieve high speed cached recordsets (cached for 3600 secs)
# Cache directory defined in  global $ADODB_CACHE_DIR. 
# CacheGetOne, CacheRow, CacheGetAll all work
$rs = $DB->CacheExecute(3600, "select orgname from users where user='JOHN'");

Prise en charge de PHP5

ADOdb gère pleinement PHP5, y compris sa bibliothèque standard (SPL) et la prise en charge des exceptions. Par exemple :

$rs = $DB->Execute("select * from table");
foreach ($rs as $row) {
    print_r($row);
}

Si vous incluez le fichier adodb-exceptions.inc.php, alors ADOdb jettera des exceptions quand une erreur surviendra :

include("/path/to/adodb-exceptions.inc.php");
include("/path/to/adodb.inc.php");
$DB = NewADOConnection('oci8');  
$DB->Connect("", "scott", "tiger");
try {
   $DB->Execute("select badsql from badtable");
} catch (exception $e) {
    print_r($e);
}

Notes et références

Voir aussi

Liens externes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article ADOdb de Wikipédia en français (auteurs)

Игры ⚽ Нужно сделать НИР?

Regardez d'autres dictionnaires:

  • AdoDB — est une bibliothèque d abstraction destinée à communiquer avec différents systèmes de gestion de base de données (SGDB). Écrite au début en PHP, il existe également une version en Python. Sommaire 1 SGDB reconnus 2 Avantages 3 Exemples de code en …   Wikipédia en Français

  • Adodb — Entwickler: John Lim Aktuelle Version: 5.07 (26. Dezember 2008) Betriebssystem: alle LAMP Systeme, Windows und Mac Kategorie …   Deutsch Wikipedia

  • ADOdb — Entwickler John Lim Aktuelle Version 5.14 (8. September 2011) Betriebssystem alle LAMP Systeme, Windows und Mac Programmier­sprache PHP und Python …   Deutsch Wikipedia

  • ADOdb — es un conjunto de bibliotecas de bases de datos para PHP y Python. Esta permite a los programadores desarrollar aplicaciones web de una manera portable, rápida y fácil. La ventaja reside en que la base de datos puede cambiar sin necesidad de… …   Wikipedia Español

  • ADOdb — Написана на PHP, Python Последняя версия 5.15 (19 января 2012) Лицензия BSD, Стандартная общественная Сайт http://sourceforge.net/projects/adodb/ …   Википедия

  • ADODB — may refer to: *ActiveX Data Objects, a for data access *ADOdb, a database abstraction library for PHP and Python …   Wikipedia

  • ADOdb — es un conjunto de librerías de bases de datos para PHP y Python. Esta permite a los programadores desarrollar aplicaciones web de una manera portable, rápida y fácil. La ventaja reside en que la base de datos puede cambiar sin necesidad de… …   Enciclopedia Universal

  • ADOdb — Infobox Software name = ADOdb caption = collapsible = author = developer = released = latest release version = latest release date = latest preview version = latest preview date = frequently updated = programming language = PHP, Python operating… …   Wikipedia

  • Adodb Lite — schlanke, schnelle, ADOdb kompatible Funktionsbibliothek zur Datenbank Abstraktion Basisdaten Entwickler: Mark Dickenso …   Deutsch Wikipedia

  • ADOdb Lite — schlanke, schnelle, ADOdb kompatible Funktionsbibliothek zur Datenbank Abstraktion Basisdaten Entwickler Mark Dickenson …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”