Description
PEAR MDB2 provides several methods for querying databases.
The most direct method is
query().
It takes a SQL query string as an argument.
There are two possible returns:
A new MDB2_Result object for queries that return results (such as
SELECT queries), or a MDB2_Error object on failure.
It should not be used with statements that manipulate data (such as
INSERT queries)
Exemple 33-1. Doing a query <?php
// Create a valid MDB2 object named $mdb2
// at the beginning of your program...
require_once 'MDB2.php';
$mdb2 =& MDB2::connect('pgsql://usr:pw@localhost/dbnam');
if (PEAR::isError($mdb2)) {
die($mdb2->getMessage());
}
// Proceed with a query...
$res =& $mdb2->query('SELECT * FROM clients');
// Always check that result is not an error
if (PEAR::isError($res)) {
die($res->getMessage());
}
?> |
|
exec() should be used for manipulation queries.
There are two possible returns:
An integer denoting the number of affected rows for statements that manipulate data
(such as INSERT queries), or a MDB2_Error object on failure.
It should not be used with statements that return results (such as
SELECT queries)
Exemple 33-2. Using exec to manipulate data <?php
// Once you have a valid MDB2 object named $mdb2...
$sql = "INSERT INTO clients (name, address) VALUES ($name, $address)";
$affected =& $mdb2->exec($sql);
// Always check that result is not an error
if (PEAR::isError($affected)) {
die($affected->getMessage());
}
?> |
|