CSVファイルをSQL文で選択した行を公開する

  1. SQL文で選択したCSV行を公開する場合はCSVを作成します。本ページでは以下のCSVファイルを利用します。
    注:列名IDをCDに変更しました。IDは予約語なのでエラーになります。
    注:SQL文でファイルを選択する場合には、CSVに列名は不要です。
    ダウンロード:test.csv
  2. SQL文で選択できるようにするためには列名とデータ型を定義した別ファイルを作成します。
    下の例ではCSVファイルに記入した列名と同じ名称を利用して、データ型をINTEGER、DATE、VARCHAR(10)にしました。
    例では作成したファイルをtest.defとしてCSVファイルと同じフォルダに保存しました。
    ダウンロード:test.def
  3. 作成したCSVファイル名をMule設定ファイルで指定します。
    Mule設定ファイルはMuleを解凍したフォルダ下のserver\jpフォルダのファイルmule-server-config.xmlです。
    このファイルをテクストエディタ(例:メモ帳)で開きます。
  4. 以下のプロパティを設定します:
     <property name="use" value="Literal" />
     <property name="format" value="csv2" />
     <property name="filename" value="test.csv;encoding=sjis;ignore_first=true" />
     <property name="sql" value="SELECT * FROM test WHERE cd=?" />
     <property name="colDataDef" value="data/test.def" />
     <property name="dbfile" value="data/jinji" />
    
    注:formatプロパティをcsv2に設定します。
    注:filenameプロパティにはフォルダ名を指定しません。
    注:CSVファイルに列名を含む場合はignore_first=trueと指定します。
    注:colDataDefプロパティには列名と型の定義ファイルを指定します。
    ダウンロード:mule-server-config.xml
  5. Mule設定を有効にするために、Muleを起動しているコマンドプロントからMuleを終了して起動します。
    Muleサーバを終了するにはCtrlキーとcを同時に押して、バッチ ジョブを終了しますか (Y/N)?プロントにyを入力してEnterキーを押します。
    Muleサーバを起動するにはserverと入力してEnterキーを押します。
  6. Muleサーバが起動すると次のようなメッセージが表示します。
    以上でCSVファイルは公開されました。
  7. 公開したCSVファイルデータをMS Excelで表示して見ましょう。
    MS Excel資料を作成を参照して新規にMS Excelシートを作成します。
  8. Muleからデータを読み込みましょう!
    メニューからWebService − 設定を選択します。
  9. 設定が下の画面のようなことを確認した後に設定ボタンを選択してください。
     設定名: Test
     新規ページ: チェックなし (全ての行を1シートに表示します。)
     WebServiceURI http://localhost:8080/services/testUMO?method=getList 
           (mule-server-config.xmlで指定したendpointAddressとMule-descriptorの組み合わせ)
     キー: 12345 (SQL文の文字?に代入する値。)
       
  10. 取得するデータのキーが12345であることを確認した後にOKボタンを選択します。
  11. 以下のようにMuleからのデータが表示します。

CSVファイルを公開した後はMS Excelファイルを公開して見ましょう。