1

この奇妙なエラーがあります。MSSQL2008R2とZendFw1.12を使用しています。


まず、try内でロールバックが失敗しませんでした。

   // Zend_DB_Table Adapter
   $adapter = Zend_Db_Table::getDefaultAdapter();

   // Start Transaction
   $adapter->beginTransaction();

   try {
          $adapter->rollBack();
          return (int) 1;
   } catch (Exception $e) {
          throw new Api_Exception($e->getMessage(), $e->getCode(), $e);
   }

しかし..ロールバックはキャッチ内で失敗しました..

はい、キャッチの内側に入るように、以下の試行で意図的にエラーを作成します。

   // Zend_DB_Table Adapter
   $adapter = Zend_Db_Table::getDefaultAdapter();

   // Start Transaction
   $adapter->beginTransaction();

   try {
          return (int) A;
   } catch (Exception $e) {
          $adapter->rollBack();
          throw new Api_Exception($e->getMessage(), $e->getCode(), $e);
   }

戻ります。Zend_Db_Adapter_Sqlsrv_Exception: A transaction must be started by calling sqlsrv_begin_transaction before calling sqlsrv_commit or sqlsrv_rollback.

手がかりはありますか?

4

1 に答える 1