Introduction - Requête

Introduction - Requête – Exécuter des requêtes

Description

PEAR DB fournit plusieurs méthodes pour interroger les bases de données. La méthode la plus directe est query(). Il prend en tant que paramètre la requête. Il y a trois retours possibles : un nouvel objet DB_result pour les requêtes qui retournent des résultats (comme les requêtes SELECT), DB_OK pour les requêtes qui manipulent des données (comme les requêtes INSERT) ou un objet DB_Error en cas d'erreur.

Exécuter une requête

<?php
// Création d'un objet DB valide nommé $db
// en début de votre programme...
require_once 'DB.php';

$db =& DB::connect('pgsql://usr:pw@localhost/dbnam');
if (
PEAR::isError($db)) {
    die(
$db->getMessage());
}

// Exécution de la requête
$res =& $db->query('SELECT * FROM clients');

// Vérifiez toujours que $res n'est pas une erreur
if (PEAR::isError($res)) {
    die(
$res->getMessage());
}
?>

query() peut être utilisée à la place de prepare() et execute(), si vous utilisez le paramètre $params et que vous posissionnez vos marqueurs.

Utiliser une requête en mode prepare/execute avec un paramètre scalaire

<?php
// On suppose que vous avez un objet $db valide...
$sql  'select * from clients where clientid = ?';
$data 53;

$res =& $db->query($sql$data);

// Vérifiez toujours que $res n'est pas une erreur
if (PEAR::isError($res)) {
    die(
$res->getMessage());
}
?>

Utiliser une requête en mode prepare/execute avec un tableau en paramètre

<?php
// On suppose que vous avez un objet $db valide...
$sql  'select * from clients where clientid = ? and statusid = ?';
$data = array(534);

$res =& $db->query($sql$data);

// Vérifiez toujours que $res n'est pas une erreur
if (PEAR::isError($res)) {
    die (
$res->getMessage());
}
?>
Se connecter et se déconnecter d'une base de données (Previous) Obtenir des données depuis une requête de résultats (Next)
Last updated: Sun, 29 Aug 2010 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

There are no user contributed notes for this page.