DTL <sql>
データ変換内で、埋め込みの SQL SELECT 文を実行します。
構文
<sql>
SELECT SSN INTO :context.SSN
FROM MyApp.PatientTable
WHERE PatID = :request.PatID
</sql>
要素
要素 | 目的 |
---|---|
<annotation> | オプション。<sql> 要素について記述するテキスト文字列。 |
説明
DTL <sql> 要素は、DTL <transform> 要素内から任意の埋め込み SQL SELECT 文を実行します。
<sql> 要素を効率的に使用するため、以下のヒントを参考にしてください。
-
次のように、必ず、SQL スキーマ名とテーブル名の両方を含むテーブルの完全修飾名を使用します。
MyApp.PatientTable
上記の例の MyApp は SQL スキーマ名、PatientTable はテーブル名です。
-
<sql> 要素の内容には、有効な埋め込み SQL SELECT 文が含まれている必要があります。
SQL クエリを CDATA ブロック内に配置すれば、特殊な XML 文字のエスケープに影響されることはありません。
-
SQL クエリの FROM 節にリストされるテーブルは、ローカルの InterSystems IRIS データベースに格納されているか、SQL ゲートウェイを使用して外部リレーショナル・データベースにリンクされている必要があります。
-
SQL クエリの INTO 節および WHERE 節内では、1 つの変数名の前にコロン (:) を付けることにより、ソース・オブジェクトまたはターゲット・オブジェクトのプロパティを参照できます。以下に例を示します。
<sql> SELECT Name INTO :target.Name FROM MainFrame.EmployeeRecord WHERE SSN = :source.SSN AND City = :source.Home.City </sql>
-
使用されるのは、クエリで返された最初の行のみです。WHERE 節では、必要な行を正確に指定してください。