スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド

[目次][索引][前へ][次へ]

18.4.1 Driverインタフェース

<この項の構成>
(1) 概要
(2) メソッド
(3) パッケージ名称及びクラス名称
(4) エスケープ句

(1) 概要

Driverインタフェースでは,主に次の機能が提供されます。

(2) メソッド

Driverインタフェースのメソッド一覧を次の表に示します。なお,表に記載されていないメソッドはサポートしていません。サポートしていないメソッドを指定すると,SQLExceptionを投入します。

表18-7 Driverインタフェースのメソッド一覧

記載箇所 メソッド 機能
(a) acceptsURL(String url) ドライバが指定されたURLに接続できるかどうかを確認します。
(b) connect(String url,Properties info) 指定されたURLにデータベース接続を試みます。
(c) getMajorVersion() ドライバのメジャーバージョンを取得します。
(d) getMinorVersion() ドライバのマイナーバージョンを取得します。
(e) getPropertyInfo(String url,Properties info) ドライバの有効なプロパティについての情報を取得します。
(f) jdbcCompliant() ドライバがJDBC CompliantTMであるかどうかを通知します。
(a) acceptsURL(String url)

【機能】
ドライバが指定されたURLに接続できるかどうかを確認します。

【形式】
 
public boolean acceptsURL(String url) throws SQLException
 

【引数】
String url:
データベースのURL

【戻り値】
ドライバが指定されたURLを認識する場合はtrue,そうでない場合はfalseを返します。

【発生する例外】
なし。
(b) connect(String url, Properties info)

【機能】
指定されたURLにデータベース接続を試みます。

【形式】
 
public Connection connect(String url, Properties info) throws SQLException
 

【引数】
String url:
接続先のデータベースのURL。詳細については,「18.2.2(1) URLの構文」を参照してください。
Properties info:
接続引数としてのプロパティ名称,及び値のペアのリスト。詳細については,「18.2.2(2) ユーザプロパティ」を参照してください。

【戻り値】
URLへの接続を表すConnectionオブジェクト

【機能詳細】
URLで示すデータベースと接続します。
このメソッドは,DriverManager.getLoginTimeoutが返す値を,HiRDBサーバとの接続時に行う通信の最大待ち時間として使用します。
getLoginTimeoutが0を返す場合,クライアント環境定義PDCONNECTTIMEで指定した値が,最大待ち時間になります。
なお,待ち時間はDriverManager.setLoginTimeoutで指定できます。

【発生する例外】
次の場合,SQLExceptionを投入します。
  • データベースアクセスエラーが発生した場合
  • 指定した接続情報が不正である場合
  • DriverManager.getLoginTimeoutの返却値が0〜300の範囲外となる場合
(c) getMajorVersion()

【機能】
ドライバのメジャーバージョンを取得します。

【形式】
 
public synchronized int getMajorVersion()
 

【引数】
なし。

【戻り値】
このドライバのメジャーバージョン番号

【発生する例外】
なし。
(d) getMinorVersion()

【機能】
ドライバのマイナーバージョンを取得します。

【形式】
 
public synchronized int getMinorVersion()
 

【引数】
なし。

【戻り値】
このドライバのマイナーバージョン番号

【発生する例外】
なし。
(e) getPropertyInfo(String url, Properties info)

【機能】
このドライバの有効なプロパティについての情報を取得します。

【形式】
 
public synchronized DriverPropertyInfo[] getPropertyInfo(String url, Properties info) throws SQLException
 

【引数】
String url:
接続先のデータベースのURL
Properties info:
接続引数としてのプロパティ名称,及び値のペアのリスト

【戻り値】
有効なプロパティを記述するDriverPropertyInfoオブジェクトの配列(プロパティが必要ない場合は,この配列は空になることもあります)
DriverPropertyInfoの各フィールドの設定値を次の表に示します。

表18-8 DriverPropertyInfoの各フィールドの設定値

プロパティ名 DriverPropertyInfoフィールド
name value description required choices
user プロパティ名と同じ null "UserID" false null
password 同上 "" "Password" false null
UAPNAME 同上 "" "UAPNAME" false null
JDBC_IF 同上 "OFF" "JDBC Interface Trace" false {"ON","OFF"}
TRC_NO 同上 "500" "Trace Entry Number" false null
ENCODELANG 同上 null "Encode Lang" false null
HIRDB_CURSOR 同上 "FALSE" "HiRDB Cursor across commit" false null
LONGVARBINARY_ACCESS 同上 "REAL" "Longvarbinary locator access" false null
HiRDB_for_Java_SQL_IN_NUM 同上 "300" "SQL In Number" false null
HiRDB_for_Java_SQL_OUT_NUM 同上 "300" "SQL Out Number" false null
HiRDB_for_Java_SQLWARNING_LEVEL 同上 "SQLWARN" "SQL Warning Level" false null
HiRDB_for_Java_ENV_VARIABLES 同上 null "HiRDB Environment Variables" false null
HiRDB_for_Java_STATEMENT_COMMIT_BEHAVIOR 同上 "TRUE" "HiRDB Statement across commit" false {"TRUE","FALSE"}
HiRDB_for_Java_LONGVARBINARY_ACCESS_SIZE 同上 0 "Longvarbinary locator access size" false null
HiRDB_for_Java_MAXBINARYSIZE 同上 null "Longvarbinary maximum binary size" false null
HiRDB_for_Java_LONGVARBINARY_TRUNCERROR 同上 "TRUE" "Longvarbinary truncate error" false {"TRUE","FALSE"}
HiRDB_for_Java_DBID 同上 null "Port number of HiRDB server or Environment variable group of HiRDB" false null
HiRDB_for_Java_DBHOST 同上 null "Host name with HiRDB" false null
HiRDB_for_Java_HiRDB_INI 同上 null "HiRDB.ini file " false null
HiRDB_for_Java_BATCHEXCEPTION_BEHAVIOR 同上 "TRUE" "BatchUpdateException UpdateCounts that conforms to JDBC standard" false {"TRUE","FALSE"}
SQLWARNING_IGNORE 同上 "FALSE" "Warning generated by the Connection object is not maintained with the Connection object" false {"TRUE","FALSE"}
HiRDB_for_Java_STATEMENT_CLOSE_BEHAVIOR 同上 "FALSE" "HiRDB Statement close behavior" false {"TRUE","FALSE"}

【機能詳細】
引数url,infoに指定された情報を解析し,データベースに接続するための情報を返します。
なお,acceptsURL(String url)がfalseとなる場合,このメソッドはnullを返します。

【発生する例外】
なし。
(f) jdbcCompliant()

【機能】
このドライバがJDBC CompliantTMであるかどうかを通知します。

【形式】
 
public synchronized boolean jdbcCompliant()
 

【引数】
なし。

【戻り値】
ドライバがJDBC Compliantの場合はtrue,そうでない場合はfalseを返します。

【発生する例外】
なし。

(3) パッケージ名称及びクラス名称

このインタフェースを実装するパッケージ名称とクラス名称を次に示します。

パッケージ名称:JP.co.Hitachi.soft.HiRDB.JDBC

クラス名称:HiRDBDriver

(4) エスケープ句

SQL文中で{ }で囲まれた部分をエスケープ句と呼びます。エスケープ句は一つのキーワードと複数のパラメタで構成されます。キーワードの大文字と小文字は区別しません。

エスケープ句の一覧を次の表に示します。

表18-9 エスケープ句の一覧

エスケープ句の種別 キーワード
日付,時刻,時刻印 d,t,ts
LIKEエスケープ文字 escape
外部結合 oj
プロシジャ呼び出し call
スカラ関数 fn
代入 set

エスケープ句で指定できるスカラ関数については,「付録I エスケープ句で指定できるスカラ関数」を参照してください。

<エスケープ構文の解析>
エスケープ構文の解析を有効にするかどうかは,StatementクラスのsetEscapeProcessingメソッドで指定します。指定がない場合は,有効となります。エスケープ構文の解析が有効な場合,JDBCドライバはSQL文内にエスケープ句がないか解析します。SQL文内にエスケープ句があった場合は,HiRDBが実行可能なSQL文に変換します。