• 締切済み

行のロックについて

PHPとPostgreSQLで商品検索のWebシステムを構築しております。 ロックについて質問なのですが、管理者が商品情報を修正する場合次の手順となります。 1.商品一覧より修正したいデータ(行)を選択。するとフォームに現状の値が入力されたページに移行。 2.フォームから修正したい箇所のみ変更し登録実行。 この手順の間、例えばフォーム上でデータを修正している間に、他の管理者がデータを修正した場合や、 データを削除した場合、不整合やエラーが起こると考え「修正目的でデータを取得した場合は、修正が完了する までその行をロックし、参照以外できない。」というような事を考えたのですがPostgreSQLの機能で可能でしょうか? 「行ロック」が該当するのかと思いインターネットや書籍で調べてみたのですが、トランザクション毎に行なうもののようで長期的なロック目的のものではないと認識しております・・・。 よろしくお願いします。

みんなの回答

  • umota
  • ベストアンサー率46% (150/324)
回答No.1

PostgreSQL のマニュアル 第 12章同時実行制御 をよく読めば解決の糸口が見つかるのではないでしょうか。 http://www.postgresql.jp/document/pg746doc/html/mvcc.html

参考URL:
http://www.postgresql.jp/document/index.php3
hamer2
質問者

お礼

回答ありがとうございます。 今までこういったマニュアル類を嫌遠しておりましたが、読み進めてみたいと思います。ありがとうございました。 もう少し、具体的に「こういう風にやっています」という方がいらっしゃらないか待ってみたいと思います。

関連するQ&A