トランザクションについて

トランザクションについて

- Kouta Masuda の投稿
返信数: 1
いつもお世話になっております。
Masudaです。

Moodleの勉強を兼ねまして、独自Block作りに励んでおります。

DBを扱うにあたり、トランザクション管理をしたいと考えています。
そこで、簡単な確認プログラムを作成してみましたが、
トランザクション管理が実現できません。

ロールバックしてもしなくても、レコードが追加されてしまいます。
ご教授お願いします。

試しに、labelテーブルに対してロールバックを試みた
プログラムは下記のとおりです。


<?php
require_once('../../config.php');
begin_sql();
//execute_sql('START TRANSACTION');
$label = new object;
$label->course = 12234;
$label->name = 'HELLO';
$label->content = 'HELLOHELLOContent';
$label->timemodified = 123456;

try{
insert_record('label', $label);
throw new Exception('Exception - It is an exception that I generated.');
echo 'Commit';
commit_sql();
}catch (Exception $e) {
//execute_sql('ROLLBACK');
rollback_sql();
echo "Error:", $e->getMessage(), "\n";
}




?>

利用環境
PHP 5.1
Moodle 1.9.7+


Kouta Masuda への返信

Re: トランザクションについて

- Kouta Masuda の投稿
自己レスですが、解決いたしました。

お恥ずかしいことに、MySQLが、ISAMのままでした。
つまらないご質問をしてもうしわけございませんでした。