テーブルに対する読み書きの制御

提供: RAD Studio
移動先: 案内検索

テーブルタイプのデータセットの利用 への移動


デフォルトでは、テーブル型のデータセットが開かれると、基としているデータベース テーブルへの読み書きアクセスを要求します。 基にしているデータベース テーブルの特性により、要求される書き込み権限は、許可されない場合があります(たとえば、リモート サーバー上の SQL テーブルへの書き込みアクセスを要求したが、サーバーがそのテーブルのアクセスを読み取り専用に制限している場合)。

メモ: これは、TClientDataSet には当てはまりません。これ自体が、データセット プロバイダがデータ パケットと共に提供する情報からのデータを、ユーザーが編集できるかどうかを決定するからです。 また、TSQLTable にも当てはまりません。これは、単方向データセットで、このため常に読み取り専用となっています。

テーブルが開いたら、CanModify プロパティをチェックして、基となるデータベース(またはデータセット プロバイダ)が、ユーザーによるテーブル内のデータの編集を許可しているかどうかを、確認することができます。 CanModifyFalse の場合、アプリケーションはデータベースに書き込みできません。 CanModifyTrue の場合、アプリケーションは、テーブルの ReadOnly プロパティが False のデータベースに書き込みすることができます。

ReadOnly は、ユーザーが、データの表示と編集の両方をできるのかを決定します。 ReadOnlyFalse(デフォルト)の場合、ユーザーは、データの表示と編集の両方ができます。 ユーザーの権限をデータ表示のみに制限する場合には、テーブルを開く前に、ReadOnlyTrue に設定します。

メモ: ReadOnly は、常に読み取り専用である TSQLTable 以外の、すべてのテーブル型データセット上で実装されています。

関連項目