SELECT ステートメントのパラメーター

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  データソースとターゲット > MapForce とデータベース > 仮想テーブルとしての SQL SELECT ステートメント  >

SELECT ステートメントのパラメーター

このサンプルは、  Microsoft Access データベース からデータを読み込み CSV ファイルに書き込む MapForce マッピングの作成方法について説明します。特に、 この例のマッピングは、パラメーターを持つカスタムデータベース SELECT クエリを使用しています。 SELECT ステートメントは複数のテーブルからのデータを 結合します。そして、更なる処理のために結果はマッピングへ与えられます。

 

このサンプルは、以下のパスで見つけることのできる マッピングデザイン (.mfd) が伴います: <マイ ドキュメント>\Altova\MapForce2019\MapForceExamples\Tutorial\select-component.mfd。このサンプルファイルを開き、最初に分析する、または、以下のステップを最初から行います。

 

このサンプルは Microsoft Access データベースを使用しますが、その他のデータベース方でも同じ方法で作動します。データベースへ接続するを参照してください。

 

目的は、以下のとおりです:

 

1.データベースから、オーダーされるアイテムの数が、カスタムの値を超えるオーダーのみを選択する必要があります。このカスタムの値は、マッピングへのパラメーターとして与えられます。この目的を達成するために、 入力パラメーターを持つカスタムデータベース SELECT ステートメントを作成します。
2.Access データベース内では、 日時フォーマットは、YYYY-MM-DD HH-MI-SS です。 CSV ファイル内では、 時刻の部分が省かれるため、フォーマットは YYYY-MM-DD になります。この目的を達成するために、MapForce 内で使用することのできる、date-from-datetime 関数を使用します。
3.結果 CSV ファイルは OrdersReport.csv という名前を持つ必要があります。

 

 

ステップ 1: SELECT 構造を追加する

1.メニューからデータベースの挿入をクリックします。
2.Microsoft Access (ADO) を選択して、 <マイ ドキュメント>\Altova\MapForce2019\MapForceExamples\Tutorial\ フォルダー内で使用することのできる altova-products.mdb ファイルに接続するウィザードステップに従います。

ex_select_01

3.「データベースオブジェクトの挿入」 ダイアログボックスから 「SELECT ステートメントの追加/編集」 をクリックし、以下の クエリを挿入します:

SELECT *, (Quantity * UnitPrice) AS Price
FROM Orders
INNER JOIN Products
ON Orders.ProductID = Products.ProductID
WHERE Orders.Quantity > :Quantity

このクエリ Orders と Products テーブルの結合を使用し、すべての フィールド (*), と計算された値 (AS Price) 。 クエリは以下も指定します : WHERE 句内の Quantity パラメーター

ex_select_02

4.「SELECT ステートメントの追加」 をクリックします。

ex_select_03

5.「OK」 をクリックします。 altova-products コンポーネントがマッピングエリアに追加されます。
6.altova-products コンポーネント selectSprocButton から、 パラメータt-と共に呼び出しを挿入 を選択します。

ex_select_04

新規の 構造 (SELECT_ステートメント) をマッピングで使用することができるようになります。これは 2 つのパートに分割されます: 左のパートは入力コネクタを、右のパートは出力コネクタを提供します。左のパートは前に定義された Quantity パラメーター を含んでいることに注意してください。

ex_select_05

 

ステップ 2: 入力パラメーターの追加

1.「挿入」 メニューから「入力の挿入」をクリックします。
2.型 "Quantity" を名前とします。
3.Design-time Execution 内に、デザイン中にマッピングの実行のために使用されるパラメーター 値を入力します。(このサンプルでは、 "2") 詳細に関しては、マッピングにパラメーターを与えるを参照してください。

ex_select_06

入力パラメーターをデータベースの呼び出しに接続します。構造は、以下のとおりです。

ex_select_07

 

 

ステップ 3: ターゲット CSV コンポーネントを追加する

1.「挿入」 メニューから「テキストファイル」 をクリックします。
2.標準 CSVのための単純な処理を使用する...」 を選択し、 「続ける」 をクリックします。
3.コンポーネント設定ダイアログボックスから、 「フィールドの追加」 をクリックし、9つの新しいフィールドを追加します。データベースフィールドの名前と同じ名前を CSV フィールドに与えることが奨励されています。これは、マッピング接続を作成する際に時間の節約になります。これらの設定に関しての詳しい情報は、 CSV オプションの設定を参照してください。

ex_select_08

4.SELECT 構造の result ノードとCSV コンポーネントの Rows ノード間の接続を作成します。

ex_select_09

CSV コンポーネントのフィールドの多くは、 データベースと同じ名前を持ち、マッピング接続は、resultRows に接続すると自動的に作成されます。これが発生すると、 「接続」 メニュー を選択して、「マッチする子を自動的に接続する」 オプションが有効化されていることを確認してください。  SELECT 構造内でこの名前を持つフィールドがないため、手動で接続したマッピングアイテムは ProductID のみです。

 

ステップ 4: 日付の変換

ライブラリウィンドウ内で、 date-from-datetime 関数を検索し、 マッピングエリアにドラッグします。入力と出力下で表示されるように接続します。

ex_select_10

 

 

ステップ 5: 出力ファイルの名前の設定

OrdersReport.csv の出力ファイルの名前を設定するには、 CSV コンポーネント、をダブルクリックし、出力ファイルボックス内に値を入力します。

ex_select_11


(C) 2019 Altova GmbH