対応データベース

このセクションでは、IPTが対応しているソースデータベースの種類についての情報を提供します。

対応するデフォルトのデータベース

IPTは、データベース接続を使用して、テーブルまたはビューからデータをインポートすることができます。現在、以下のデータベースがサポートされています。

  • Microsoft SQL Server

  • MySQL

  • Oracle

  • PostgreSQL

  • Sybase

新しいJDBCドライバを追加する

IPTをサーブレットコンテナ(Tomcatなど)内で実行する場合、IPTに独自のJDBCドライバを追加することができます。これにより、別のデータベースをサポートしたり、既存のデータベース・タイプの1つに対する接続設定を変更したりすることができます。

以下の手順は、「分解された」 WAR で動作するIPT がインストールされている、つまりアプリケーションサーバーのwebapps フォルダに ipt (または名前が変更されたインスタンス) フォルダがあることを前提としています。ドライバの追加を開始する前に、IPTを停止する必要があります。

JDBCドライバのJARをクラスパスに追加する

まず、追加したいドライバの JAR ファイルを入手します。例えば、SQLiteのjarファイルは以下からダウンロードできます:https://bitbucket.org/xerial/sqlite-jdbc/downloads

このJARをウェブアプリのクラスパスにコピーする必要があります。最も簡単なのは、 ipt/WEB-INF/lib ディレクトリにコピーすることです。

jdbc.properties の修正

IPTが、どのドライバが利用可能で、そのためのJDBC URLをどのように構築するかを理解するために、すべての情報を含む簡単なプロパティファイルを維持します。`ipt/WEB-INF/classes/jdbc.properties`を開き、例えば PostgreSQL のような既存のエントリを検査します。

# PostgreSQL driver
pgsql.title=PostgreSQL
pgsql.driver=org.postgresql.Driver
pgsql.url=jdbc:postgresql://{host}/{database}
pgsql.limitType=LIMIT

各ドライバーに追加する必要のあるプロパティは4つです。4つとも同じ接頭辞で始まる必要があり、特に意味はなく自由に選ぶことができます。

  • title:このドライバのIPTに表示されるタイトル。

  • driver:接続時に使用されるドライバJavaクラス

  • url:接続用のURLを作成するためのテンプレート。URL文字列で使用できる変数は`{host}` と `{database}`の2つです。これらは構成された実際の設定に置き換えられます。

  • limitType:返されるデータの量を制限する方法。使用可能な値は`LIMIT`、TOP、`ROWNUM`です。これはドライバ固有です。

上記のPostgreSQLの例では、PostgreSQLドライバーのドキュメントを参照すると、次の変更により暗号化された接続が有効になります。

pgsql.url=jdbc:postgresql://{host}/{database}?sslmode=require

次の例は、SQLiteドライバー用です。これはファイルに接続するため、URLテンプレートで`{host}`は使用されません。

# SQLite driver
# uses files only, so {host} is ignored
# database example on Windows: C:/work/mydatabase.db
# database example on Linux: /home/leo/work/mydatabase.db
sqlite.title=SQLite
sqlite.driver=org.sqlite.JDBC
sqlite.url=jdbc:sqlite:{database}
sqlite.limitType=LIMIT

これでIPTを再起動し、SQLiteデータソースのマッピングに新しいドライバーを使用することができます。