2017-08-01 31 views
3

TFDQuery(FireDAC)のメタデータを探しています。SQL ServerとFIREDACを使用した結合クエリの列からテーブル名を取得する方法は?

私はこのクエリを持っている:

SELECT * 
FROM Table1 t1 
INNER JOIN Table2 t2 ON t1.Code = t2.code 

私は(....、テーブルのテーブル名、実際のカラム名)列情報をお知りになりたい

私はこの記事を見つけます: How to get the table name from a field in a join query with MSSQL? (mysql_field_table equivalent)私はFireDacで同じ構造を持っていません。

+0

メタデータも同様に取得する必要があります。私は後でこれをチェックしようとすることができます。 – Victoria

+1

http://docwiki.embarcadero.com/RADStudio/XE8/en/Extended_Metadata_(FireDAC)とhttp://docwiki.embarcadero.com/RADStudio/XE8/en/Working_with_Metadata_(FireDAC)を参照してください。 – RBA

+0

@RBA、うん、私はこれらを意味しています(メタデータだけでなく拡張メタデータとも呼ばれます)。 – Victoria

答えて

1

すでにRBAと記載されているため、接続先でExtendedMetaDataを有効にする必要があります。完了したら、query.GetFieldColumn(field)でフィールド列の説明を取得し、ActualOriginTabNameActualOriginColNameのプロパティで表と列の名前にアクセスできます。

column := query.GetFieldColumn(field); 
orgTableName := column.ActualOriginTabName; 
orgColumnName := column.ActualOriginColName; 
関連する問題