diff options
author | xue <> | 2008-03-12 18:15:01 +0000 |
---|---|---|
committer | xue <> | 2008-03-12 18:15:01 +0000 |
commit | 0c6fa4ad25c64fa4033838feb298c92edd1651b4 (patch) | |
tree | 085091629eb32fb8adea6eb4db4fe7ba2dfb9594 /framework/Data | |
parent | 7e5a685ed31b65ddd75196d4616ab142c39af8d9 (diff) |
fixed #741.
Diffstat (limited to 'framework/Data')
-rw-r--r-- | framework/Data/TDbConnection.php | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/framework/Data/TDbConnection.php b/framework/Data/TDbConnection.php index 23a6e58b..1f2782db 100644 --- a/framework/Data/TDbConnection.php +++ b/framework/Data/TDbConnection.php @@ -85,6 +85,7 @@ class TDbConnection extends TComponent private $_attributes=array();
private $_active=false;
private $_pdo=null;
+ private $_transaction;
/**
* Constructor.
@@ -250,6 +251,19 @@ class TDbConnection extends TComponent }
/**
+ * @return CDbTransaction the currently active transaction. Null if no active transaction.
+ */
+ public function getCurrentTransaction()
+ {
+ if($this->_transaction!==null)
+ {
+ if($this->_transaction->getActive())
+ return $this->_transaction;
+ }
+ return null;
+ }
+
+ /**
* Starts a transaction.
* @return TDbTransaction the transaction initiated
* @throws TDbException if the connection is not active
@@ -259,7 +273,7 @@ class TDbConnection extends TComponent if($this->getActive())
{
$this->_pdo->beginTransaction();
- return new TDbTransaction($this);
+ return $this->_transaction=new TDbTransaction($this);
}
else
throw new TDbException('dbconnection_connection_inactive');
|