0

「recordLocked」という列を持つMS Accessテーブルがあります。編集者だと思ってください。コンテンツはテーブルに保存され、同じコンテンツを編集したい 2 人のユーザーがいます。

私が持っているシステムは、編集するユーザーにコンテンツを自動的に「提供」します。そのため、彼らはログインし、編集するコンテンツをサーバーに (ランダムな間隔で) 要求するタイマーがあります。

技術的には、ログオンしている 2 人のユーザーが同時にサーバーからコンテンツを要求することは決してありません。2番目に。ログを見ると、

"11:03:06 user 12 asked for content"
"11:03:06 user 77 asked for content"

ユーザー 12 がコンテンツを要求すると、c# コードはデータベース内のレコードを「ロック済み」に更新します。したがって、技術的には、ユーザー 77 がコンテンツを要求したときに、コンテンツを提供するべきではありません (ロックされているため)。

しかし、彼らが同時に求めているので、それは両方に与えられています。

この方法でレコードを「ロック」するより良い方法はありますか? 私が照会するのは YES/NO フィールドです。

情報をありがとう!

4

1 に答える 1

0

レコードのロックを確認する必要があります。これにより、アクセス/編集中にレコード(行)がロックされます。

これを実装する方法はここにあります:http ://www.databasedev.co.uk/multi-user-application-record-locking.html

于 2012-11-19T12:00:25.227 に答える