[s2container-php5:35] Re: S2Dao.PHP5+MySqlでのPDOトランザクションについて
Yusuke Hata
nowel @ xole.net
2006年 6月 28日 (水) 02:29:23 JST
ハタです。
反応が遅くなってしまいました。申し訳ありません。
> 先日からS2Dao.PHP5で色々試しているのですが、
> 下記環境でPDOトランザクションを利用しようとして問題が発生し困っています。
>
> s2container.php5-1.1.0
> s2dao.php5-1.1.0-rc3
> MySQL 4.1.20
> PHP 5.1.2
> windows 2000
>
<skip>
>
> hasTransaction()を呼び出すと、
> beginTransaction()によってトランザクションが開始され、
> S2Dao_RequiredInterceptor側で更にbegin()としているので、
> ここでエラーになるようなのです。
>
> そこで、とりあえずinvokeを下記の様にしてみたところ、
> どうやら上手く動作しているようなのですが、
> これで問題ないものなのでしょうか?
>
> if (!$this->hasTransaction()) {
> if (!$this->hasTransaction()) {
> $this->begin(); //多分ここを通過することは無い
> }
> $began = true;
> }
>
> S2Dao_RequiredInterceptorを書き換えるものなんなので
> 何か他に良い解決方法があるのかも知れないと思うのですが、どうでしょうか?
現在他の実装方法とDBMSの兼ね合いを含めて検討中です。
申し訳ありませんが、もう少しお待ちください。
--
Yusuke Hata <nowel @ xole.net>
blog: http://blog.xole.net/
S2Container-PHP5 メーリングリストの案内