人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

CakePHPやsymfonyなどのPHPフレームワークで、モデルへレコードを追加・変更する時に
insert()やupdate()といったメソッドを使わず、どちらもsave()メソッドで処理していますが、
save()メソッドで一緒に処理するメリットってなんでしょうか?

よろしくお願いします。

●質問者: xxmasaxx
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:CakePHP PHP symfony フレームワーク メソッド
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● kn1967
●60ポイント

テーブルではユニークキーやプライマリーキーを用いて、

データの重複を避ける仕組みになっています。


各SQLコマンドでも同じく重複を避ける仕組みになっています。

insert 追加

キーが同じレコードが既にテーブルにある場合、

そのレコードは無視されてしまい、追加されない。

update 更新

キーで探してレコードを更新。

レコードが無ければ、そのレコードは無視されるだけで、

勝手に追加はしてくれない。


既存であればupdate、無ければinsertという処理を行いたければ、

update → insert という流れを常に意識してプログラムしなければなりません。


フレームワークに用意されているsaveを用いれば、

レコードがあれば更新、無ければ追加という処理を自動的に行ってくれるので、

プログラマはレコードの有無を気にしなくて良くなるという利点がある訳です。

◎質問者からの返答

なるほど。

参考になります。回答有り難うございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ