8.101 Fonctions PDO
8 Référence des fonctions
Manuel PHP
. Introduction . Installation . Configuration à l'exécution . Drivers PDO . Connexions et gestionnaire de connexion . Transactions et validation automatique (auto-commit) . Requêtes préparées et procédures stockées . Erreurs et gestionnaire des erreurs ->Les objets larges (LOBs) . Classes pré-définies . Constantes pré-définies . PDO::beginTransaction . PDO::commit . PDO::__construct . PDO::errorCode . PDO::errorInfo . PDO::exec . PDO::getAttribute . PDO::getAvailableDrivers . PDO::lastInsertId . PDO::prepare . PDO::query . PDO::quote . PDO::rollBack . PDO::setAttribute . PDOStatement::bindColumn . PDOStatement::bindParam . PDOStatement::bindValue . PDOStatement::closeCursor . PDOStatement::columnCount . PDOStatement::errorCode . PDOStatement::errorInfo . PDOStatement::execute . PDOStatement::fetch . PDOStatement::fetchAll . PDOStatement::fetchColumn . PDOStatement::getAttribute . PDOStatement::getColumnMeta . PDOStatement::nextRowset . PDOStatement::rowCount . PDOStatement::setAttribute . PDOStatement::setFetchMode
|
8.101.9 Les objets larges (LOBs)
À un moment dans votre application, vous pourriez avoir besoin de stocker de
larges données dans votre base de données. "Large" signifie typiquement
des données d'environ 4ko ou plus, bien que certaines bases de données peuvent
gérer plus de 32ko avant que les données deviennent "larges". Les objets larges
peuvent être de nature textuelle ou binaire. PDO vous permet de travailler
avec ce type de larges données en utilisant le code type
PDO::PARAM_LOB
dans vos appels aux fonctions
PDOStatement::bindParam
ou
PDOStatement::bindColumn
.
PDO::PARAM_LOB
demande à PDO de mapper les données
en un flux que vous pourrez manipuler en utilisant
l' API PHP sur les flux .
| Affichage d'une image depuis une base de données | |
Cet exemple lie un LOB dans une variable nommée $lob et l'envoie
au navigateur en utilisant la fonction
fpassthru
.
Vû qu'un LOB est représenté en un flux, les fonctions comme
fgets
,
fread
et
stream_get_contents
peuvent être utilisées sur ce flux.
|
| Insertion d'une image dans une base de données | |
Cet exemple ouvre un fichier et passe le pointeur de fichier à PDO
pour l'insérer en tant que LOB. PDO fera son possible pour récupérer
le contenu du fichier et l'insérer dans la base de données de la
manière la plus efficace possible.
|
| Insertion d'une image dans une base de données Oracle | |
Oracle requiet une synthaxe légèrement différente pour y insérer un LOB
depuis un fichier. Il est également essentielle d'effectuer votre insertion
au sein d'une transaction, sinon, votre nouveau LOB sera inséré
avec une longueur de zéro :
|
|