• Main Page
  • Data Structures
  • Files
  • File List

sqliteTransaction.php

Go to the documentation of this file.
00001 <?php
00002 
00003 /**
00004  * SQLite transaction class
00005  *
00006  * @package objSQL
00007  * @version 2.1.0
00008  * @author MT Jordan <mtjo62@gmail.com>
00009  * @link http://objsql.sourceforge.net
00010  * @copyright 2004-2010 openSource Partners
00011  * @license LGPL
00012  * @revision $Id: sqliteTransaction.php,v 1.4 2008-01-17 20:55:23-05 mt_jordan Exp $
00013  */
00014 
00015 class sqliteTransaction
00016 {
00017     /**********************************************
00018      * Internal variables
00019      *********************************************/
00020 
00021     /**
00022      * Database connection object
00023      *
00024      * @access private
00025      * @var    mixed
00026      */
00027     private $objConnection;
00028 
00029     /**********************************************
00030      * Class methods
00031      *********************************************/
00032     /**
00033      * Constructor
00034      *
00035      * @access public
00036      * @param  mixed $connection
00037      */
00038     public function __construct( $connection )
00039     {
00040         $this->objConnection = $connection;
00041 
00042         //turn off autocommit
00043         sqlite_query( $this->objConnection, 'BEGIN' )
00044         or trigger_error( sqlite_error_string( sqlite_last_error( $this->objConnection ) ), E_USER_WARNING );
00045     }
00046 
00047     /**
00048      * Commit transaction
00049      *
00050      * @access public
00051      * @return mixed
00052      */
00053     public function commit()
00054     {
00055         return sqlite_query( $this->objConnection, 'COMMIT' )
00056         or trigger_error( sqlite_error_string( sqlite_last_error( $this->objConnection ) ), E_USER_WARNING );
00057     }
00058 
00059     /**
00060      * Rollback transaction
00061      *
00062      * @access public
00063      * @return mixed
00064      */
00065     public function rollback()
00066     {
00067         return sqlite_query( $this->objConnection, 'ROLLBACK' )
00068         or trigger_error( sqlite_error_string( sqlite_last_error( $this->objConnection ) ), E_USER_WARNING );
00069     }
00070 
00071     /**
00072      * Create rollback savepoint - dummy method - sqlite 2 does not support savepoints
00073      *
00074      * @access public
00075      */
00076     public function savepoint() {}
00077 }
00078 
00079 ?>

Generated on Sat Jul 10 2010 15:14:39 for objSQL 2.1.0 by  doxygen 1.7.1