当前位置: 首页>>代码示例>>PHP>>正文


PHP JDatabase::transactionStart方法代码示例

本文整理汇总了PHP中JDatabase::transactionStart方法的典型用法代码示例。如果您正苦于以下问题:PHP JDatabase::transactionStart方法的具体用法?PHP JDatabase::transactionStart怎么用?PHP JDatabase::transactionStart使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在JDatabase的用法示例。


在下文中一共展示了JDatabase::transactionStart方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: transactionStart

 /**
  * Method to initialize a transaction.
  *
  * @param   boolean  $asSavepoint  If true and a transaction is already active, a savepoint will be created.
  * @return  self                   Returns this object to support chaining.
  *
  * @throws  \RuntimeException
  */
 public function transactionStart($asSavepoint = false)
 {
     if (version_compare($this->cmsRelease, '3.2', '>=')) {
         $this->_db->transactionStart($asSavepoint);
     } else {
         if (!$asSavepoint || !$this->transactionDepth) {
             if ($this->query('START TRANSACTION')) {
                 $this->transactionDepth = 1;
             }
             return $this;
         }
         $savepoint = 'SP_' . $this->transactionDepth;
         if ($this->query('SAVEPOINT ' . $this->nameQuote($savepoint))) {
             $this->transactionDepth++;
         }
     }
     return $this;
 }
开发者ID:bobozhangshao,项目名称:HeartCare,代码行数:26,代码来源:CmsDatabaseDriver.php

示例2: doUpdate

 /**
  * Method to update an object in the database.
  *
  * @return  void
  *
  * @since   12.1
  * @throws  RuntimeException
  */
 protected function doUpdate()
 {
     // Get the primary key.
     $primaryKey = $this->getTableKey('primary', 'primary');
     try {
         // Start a transaction.
         $this->db->transactionStart();
         // Update the data for each table.
         foreach ($this->tables as $alias => $table) {
             // Store the data to the database.
             $dump = $this->dumpTable($alias);
             $this->db->updateObject($table, $dump, $primaryKey);
         }
         // Commit the transaction.
         $this->db->transactionCommit();
     } catch (RuntimeException $error) {
         // Rollback the transaction.
         $this->db->transactionRollback();
         // Rethrow the error.
         throw $error;
     }
 }
开发者ID:prox91,项目名称:joomla-dev,代码行数:30,代码来源:object.php


注:本文中的JDatabase::transactionStart方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。