ロックとは、DBMS がマルチユーザー環境の行へのアクセスを制限するプロセスです。 行または列が排他的にロックされている場合、ロックが解除されるまで、他のユーザーはロックされたデータにアクセスできません。 これにより、2 人のユーザーが行内の同じ列を同時に更新できなくなります。
ロックはリソースの観点から非常にコストがかかる可能性があり、データの整合性を維持するために必要な場合にのみ使用する必要があります。 インターネットに接続されているデータベースなど、数百または数千人のユーザーが 1 秒ごとにレコードにアクセスしようとしているデータベースでは、不要なロックを実行すると、アプリケーションのパフォーマンスが速く低下する可能性があります。
適切なロック オプションを選択することで、データ ソースと ADO カーソル ライブラリでコンカレンシーを管理する方法を制御できます。
Recordset を開く前に、プロバイダーが開く際に使用するロックの種類を指定するために、LockType プロパティを設定します。 開いている Recordset オブジェクトで使用されているロックの種類を返すプロパティを読み取ります。
プロバイダーは、すべてのロックの種類をサポートしていない場合があります。 プロバイダーが要求された ロックタイプ 設定をサポートできない場合、別の種類のロックに置き換えます。 Recordset オブジェクトで使用できる実際のロック機能を確認するには、Supports メソッドを使用して、adUpdate と adUpdateBatch をします。
CursorLocation プロパティが adUseClient 設定されている場合、adLockPessimistic 設定はサポートされません。 サポートされていない値が設定されている場合、エラーは発生しません。代わりに、サポートされている最も近い LockType が使用されます。
LockType プロパティは、Recordset を閉じると読み取り/書き込み可能で、開いている場合は読み取り専用です。
このセクションには、次のトピックが含まれています。
- ロック の の種類