For Want Of A Better Word

[Cake]CakePHPで意識の低いトランザクション commit rollback

   

cakeで複数のテーブルにまたがったトランザクション管理をしたい。

 

ただ、個人的にcakephpを使うとき、あまり規約に従って作ってなくて、db操作もmodel->query()を使いまくっている。

そのときにcommitとかrollbackとか、どうすれば出来るべなと確認。

やり方

基本的にはやっぱりquery()でbeginとかcommitとか発行すればOK。

#Modelにメソッドを用意

#Controller

 

ちなみに、cakeでもExceptionは普通のtry catchでOK。

#例外があったらfalse

#例外があったら、そのまま例外を投げる。

こっちだと、上でtry-catchで拾えてcommit,rollbackの制御が出来る。

 

またトランザクション中にハンドリングしていない例外が発生しても、コミットはされない。よかた。

 

 

 - cake, php

  関連記事

MongoDBとPHP_リンクと個人的ポイントまとめ

=============================== リンク集 === …

【php】strtotimeで日付計算する場合の基準日の指定のくせ「A non well formed numeric value encountered in 」

またちょっと嵌った。。。 strtotime() 書式化された文字列からunix …

[php][日付け]指定日と日数を入力してその期間の日付け配列を取得する

 

phpでhtmlからタグ、スクリプトの除去

スクレイピング中に需要が。 simple_html_parserの「innert …

【PHP】【Slim】インストールー手動ダウンロード と Composer

ずーっと思ってた、CakeとかCodeIgnaitorとか、俺には多機能すぎる! …