Bde.DBTables.TQuery.RequestLive

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

Delphi

property RequestLive: Boolean read FRequestLive write FRequestLive default False;

C++

__property bool RequestLive = {read=FRequestLive, write=FRequestLive, default=0};

プロパティ

種類 可視性 ソース ユニット
property published
Bde.DBTables.pas
Bde.DBTables.hpp
Bde.DBTables TQuery

説明

データベースに更新可能な問い合わせの結果セットを要求します。

RequestLive プロパティは,SELECT 問い合わせでデータベースのバックエンドから更新可能(ライブ)または読み出し専用の結果セットを返すことを要求します。RequestLive が false(デフォルト)の場合には,結果セットは常に読み出し専用になります。データベースのバックエンドに対して,更新可能な結果セットを返すことは要求されません。RequestLive が true の場合には,データベースのバックエンドに対して,更新可能な結果セットを返すことが要求されます。アプリケーションのユーザーに更新可能な結果セットを提供すると,ビジュアルなデータコントロールを使ってデータを直接編集することができます。

RequestLive が true の場合には,更新可能な結果セットが要求されます。これは,データベースのバックエンドが更新可能な結果セットを返すことを保証するわけではありません。問い合わせのライブ結果セットに必要な条件については,使用する特定のデータベースシステムのドキュメントを参照してください。データベースが更新可能な結果セットを返すことができない場合には,かわりに読み出し専用の結果セットが返されます。この処理は自動的に行われ,通常はエラーは発生しません。データベースシステムの種類によっては,ライブ結果セットの要求が満たされない場合に例外を生成することがあります。要求が満たされたかどうかを確認するには,データセットコンポーネントの CanModify プロパティを調べます。

TQuery で使用される SQL 文が複数行の汎用 SELECT 文である場合には,RequestLive は true と false のどの値でも使用できます。TQuery から発行されるほかの SQL 文では,RequestLive を false にのみ設定します。こうした文には,非カーソルで単一行の SELECT 文(一般にはストアドプロシージャのプログラミングで使用する),UPDATE や DELETE といった非カーソルのデータ操作言語(DML)文,そして CREATE TABLE や DROP INDEX といったデータ定義言語(DDL)文などがあります。

メモ:  マルチテーブル問い合わせはすべて,読み出し専用結果セットを返します。ほかの条件は,問い合わせに読み出し専用結果セットを返させる場合があります。ローカルテーブル(dBASE や Paradox など)でライブ結果セット(更新可能な問い合わせ)を管理する規則についてはローカル SQL のヘルプ(Localsql.hlp)を参照してください。ほかの種類のテーブル(InterBase,Oracle,Sybase など)については,使用するデータベースシステムのマニュアルを参照してください。

メモ:  SQL データベースシステムによっては,SQL 文内のメタデータオブジェクトの名前について,大文字と小文字の厳密な区別が必要となることがあります。このような SQL データベースでは,通常,ライブ問い合わせで BDE からメタデータ名を渡す方法によって問題が生じ,例外が送出されます。これは,ほとんどの場合,メタデータオブジェクトの参照を引用符で囲むことによって回避できます。

関連項目