オブジェクト名(FireDAC)

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

メタデータの操作(FireDAC) への移動


概要

以下のプロパティはデータベース オブジェクト名を指定します。

名前は、以下のいずれかの形式で指定できます。

  • 引用符で囲まない(名前は FireDAC で正規化されます)
  • 引用符で囲む(名前は FireDAC でそのまま使用されます)

たとえば、SQL ダイアレクト 3 の Firebird では以下のようになります。

DDL 成功 失敗
CREATE PROCEDURE Test FDStoredProc1.StoredProcName := 'test';

FDStoredProc1.StoredProcName := 'TeSt';

FDStoredProc1.StoredProcName := '"TEST"';

FDStoredProc1.StoredProcName := '"test"';
CREATE PROCEDURE "Test" FDStoredProc1.StoredProcName := '"Test"'; FDStoredProc1.StoredProcName := 'test';

FDStoredProc1.StoredProcName := 'TeSt';

FDStoredProc1.StoredProcName := 'Test';

FDStoredProc1.StoredProcName := '"TEST"';

CREATE PROCEDURE "Main Proc" FDStoredProc1.StoredProcName := '"Main Proc"'; FDStoredProc1.StoredProcName := 'main proc';

FDStoredProc1.StoredProcName := 'Main Proc';

引用符付きオブジェクト名

FireDAC では、さまざまな DBMS 引用符付き文字を含め、引用符付きのオブジェクト名を完全にサポートしています。引用符付きの名前を DBMS に依存しない形式で SQL に記述するには、{id <名前>} 構文を使用します。以下に例を示します。

 SELECT * FROM {id Order Details}

TFDTable でフィールド名が強制的に引用符で囲まれるようにするには、FormatOptions.QuoteIdentifiersTrue に設定します。

オブジェクトの完全名

FireDAC では、オブジェクトの完全名(カタログ名やスキーマ名を含んだもの)をサポートしています。

TFDStoredProc.StoredProcName コンボ ボックスやクエリ ビルダなどの設計時エディタを使用する場合、これらはオブジェクトの完全名を返します。オブジェクトの完全名にカタログ名やスキーマ名が含まれないようにするには、接続定義パラメータ MetaDefCatalog および MetaDefSchema を使用します。以下に例を示します。

 [MSSQL_Demo]
 DriverID=MSSQL
 ...
 MetaDefCatalog=Northwind
 MetaDefSchema=dbo

StoredProcName や TableName などにオブジェクトの省略名が指定された場合、それらは、現在のカタログ名やスキーマ名を使って完全名に展開されます。現在のカタログ名やスキーマ名の使用をオーバーライドしたり避けるには、接続定義パラメータ MetaCurCatalog および MetaCurSchema を使用します。以下に例を示します。

 [MSSQL_Demo]
 DriverID=MSSQL
 ...
 MetaCurCatalog=*
 MetaCurSchema=*


関連項目