1
0
mirror of https://github.com/dg/dibi.git synced 2025-08-13 09:34:30 +02:00

added DibiDriver::disconnect()

This commit is contained in:
David Grudl
2007-11-10 07:37:44 +00:00
parent 8a6d664876
commit 9ff43d0ac3
15 changed files with 304 additions and 129 deletions

View File

@@ -25,7 +25,7 @@
*
* @version $Revision$ $Date$
*/
class DibiPdoDriver extends DibiDriver
final class DibiPdoDriver extends DibiDriver
{
/**
* Describes how convert some datatypes to SQL command
@@ -61,7 +61,7 @@ class DibiPdoDriver extends DibiDriver
* @throws DibiException
* @return resource
*/
protected function connect()
protected function doConnect()
{
if (!extension_loaded('pdo')) {
throw new DibiException("PHP extension 'pdo' is not loaded");
@@ -70,24 +70,33 @@ class DibiPdoDriver extends DibiDriver
$config = $this->getConfig();
$connection = new PDO($config['dsn'], $config['username'], $config['password']);
$connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
dibi::notify('connected', $this);
return $connection;
}
/**
* Disconnects from a database
*
* @return void
*/
protected function doDisconnect()
{
}
/**
* Internal: Executes the SQL query
*
* @param string SQL statement.
* @return DibiResult|TRUE Result set object
* @return DibiResult Result set object
* @throws DibiDatabaseException
*/
protected function doQuery($sql)
{
$res = $this->getConnection()->query($sql);
return $res instanceof PDOStatement ? new DibiPdoResult($res) : TRUE;
return $res instanceof PDOStatement ? new DibiPdoResult($res) : NULL;
}
@@ -235,7 +244,7 @@ class DibiPdoDriver extends DibiDriver
class DibiPdoResult extends DibiResult
final class DibiPdoResult extends DibiResult
{
private $row = 0;