IBConsoleを使ってテキストファイルからデータをインポートする

By: Tomohiro Takahashi

Abstract: バージョン 9.0.3.437 (InterBase 2009 Hotfix Update 3)から、IBConsoleが固定フォーマットのテキストファイルからのデータのインポートをサポートするようになりました。この機能は、IBConsoleのヘルプファイルでは説明されていません。この記事ではインポートツールのある場所とその使い方を説明します。なお、この記事では例としてEmployeeデータベースのEMPLOYEEテーブルを使用します。

インポートを開始する

IBConsoleでEmployeeデータベースに接続し、左側のペインで[Tables]ノードを選択します。

Hide image
Click to see full-sized image

右側のペインでEMPLOYEEテーブルをダブルクリックします。

Hide image
Click to see full-sized image

[データ]タブを選択します。

Hide image
Click to see full-sized image

赤い四角で囲まれた[データをインポート]ボタンをクリックします。[データをテーブルにインポート]ダイアログが表示されます。

Hide image
ib4

赤い四角で囲まれた[...]ボタンをクリックします。[入力ファイルを選択する]ダイアログが表示されます。

Hide image
ib5

[ファイルの種類]のドロップダウンリストで[テキストファイル]を選択します。

Hide image
ib6

使用するテキストファイルを選択します。この例では、Employeeテーブルのデータを格納している"employee.txt"というファイルを使用します。このファイルは、以前にIBConsoleのエクスポート機能を用いて生成したものです。このファイルを選択して[開く]ボタンをクリックします(もしくはファイル名をダブルクリックします)。下の図のように、[データをテーブルにインポート]ダイアログの表示内容が変わります。上部にはインポートファイルの名前が表示されています。その下のスクロールボックスにはテキストファイルの内容が表示されています。スクロールバーを使って、ファイルの内容を確認することもできます。スクロールボックスの下には、カーソルの位置と選択されている文字数が表示されています。また、[列に割り当てる]ボタンもありますが、まだ灰色(使用不可)になっています。

次の図は、Employeeテーブルのフィールド一覧を表示したものです。

Hide image
ib7

上の図に表示されているように、このファイルにはインポート時に省略したい2行分のヘッダーがあります。インポートファイルの末尾に省略したい行がある場合には、[終了行の省略]フィールドにその行数を設定できます。完全な空行はインポートされません。インポート時に明示的にNULL値を設定したい場合には、[ブランクをNULLとして使用]チェックボックスを有効にしてください。

Hide image
ib8

列を割り当てる

次に行う必要があるのは、各フィールドの[配置]と[サイズ]にそれぞれ値を割り当てることです。これを行うには、スクロールボックス内で[EMP_NO]列に相当するデータを選択します。[配置]に1、[幅]に6が表示されます。そして、リストビューで[EMP_NO]列を選択します。

Hide image
ib9

[列に割り当てる]ボタンを押すと、それぞれの値が[EMP_NO]列に割り当てられます。

Hide image
ib10

この手順を、データをインポートしたいすべての列について繰り返します。[配置]の値が設定されていない列は、インポート時に省略されます。最後に[OK]ボタンを押して、インポートを開始します。[列に割り当てる]作業が簡単になる[ヘッダー行]は、インポートファイルに必須ではありません。下の図は、各カラムの[ヘッダー行]が無いインポートファイルを使用した例です。

Hide image
ib11

定義を管理する

定義を管理するために4つのボタンが用意されています。

[定義をリセットする]ボタンは、定義を初期状態にリセットするために使用します。これは、誤って使用しない定義に値を割り当ててしまった場合に便利です。

[定義を削除する]ボタンは、上と同じ目的で使用できますが、元に戻せません。いったん削除されると、その定義を復活させるには[データをテーブルにインポート]ダイアログを再度起動するしかありません。

[定義を保存する]ボタンは、定義をファイルに保存するために使用します。IBConsoleは、定義を特別なフォーマットのテキストファイルに保存し、認識します。[保存]ダイアログが表示されたら、パスとファイル名を指定します。このファイルの拡張子は ".idf" になります。

[定義をインポートする]ボタンは、以前にファイルに保存された定義を再読み込みするのに使用します。[開く]ダイアログが表示されたら、ファイルシステムの中から定義ファイルを選択してください。

Server Response from: ETNASC04