...

クライアントインストールおよび接続ガイド バージョン6.3 (日本語版) (PDF:800KB)

by user

on
Category: Documents
74

views

Report

Comments

Transcript

クライアントインストールおよび接続ガイド バージョン6.3 (日本語版) (PDF:800KB)
IBM Red Brick Warehouse
򔻐򗗠򙳰
クライアント インストールおよび接続ガイド
バージョン 6.3
GC88-9939-00
(英文原典:GC18-7393-00)
IBM Red Brick Warehouse
򔻐򗗠򙳰
クライアント インストールおよび接続ガイド
バージョン 6.3
GC88-9939-00
(英文原典:GC18-7393-00)
注
本書および本書で紹介する製品をご使用になる前に、109 ページの『特記事項』に記載されている情報をお読み
ください。
本書には、IBM の専有情報が含まれています。その情報は、使用許諾条件に基づき提供され、著作権により保護されて
います。本書に記載される情報には、いかなる製品の保証も含まれていません。また、本書で提供されるいかなる記述
も、製品保証として解釈すべきではありません。
IBM は、お客様が提供するいかなる情報も、お客様に対してなんら義務も負うことのない、自ら適切と信ずる方法で、
使用もしくは配布することができるものとします。
本マニュアルに関するご意見やご感想は、次の URL からお送りください。今後の参考にさせていただきます。
http://www.ibm.com/jp/manuals/main/mail.html
なお、日本 IBM 発行のマニュアルはインターネット経由でもご購入いただけます。詳しくは
http://www.ibm.com/jp/manuals/
の「ご注文について」をご覧ください。
(URL は、変更になる場合があります)
お客様の環境によっては、資料中の円記号がバックスラッシュと表示されたり、バックスラッシュが円記号と表示され
たりする場合があります。
原 典:
GC18-7393-00
IBM Red Brick Warehouse
Client Installation and Connectivity Guide
Version 6.3
発 行:
日本アイ・ビー・エム株式会社
担 当:
ナショナル・ランゲージ・サポート
第1刷 2004.3
この文書では、平成明朝体™W3、平成明朝体™W9、平成角ゴシック体™W3、平成角ゴシック体™W5、および平成角ゴ
シック体™W7を使用しています。この(書体*)は、
(財)日本規格協会と使用契約を締結し使用しているものです。フォ
ントとして無断複製することは禁止されています。
注* 平成明朝体™W3、平成明朝体™W9、平成角ゴシック体™W3、
平成角ゴシック体™W5、平成角ゴシック体™W7
© Copyright International Business Machines Corporation 1996, 2004. All rights reserved.
© Copyright IBM Japan 2004
目次
本書について . . . . . . . . . . . . v
本書の対象読者 . . . . . . . . . . . v
ソフトウェアの要件 . . . . . . . . . . v
本書の表記規則 . . . . . . . . . . . v
文字の表記規則 . . . . . . . . . . v
キーワードと区切り文字 . . . . . . . vi
識別子と名前 . . . . . . . . . . . vi
コメント . . . . . . . . . . . . vi
プラットフォーム記号 . . . . . . . vii
ソフトウェア サポート . . . . . . . . vii
問題の報告 . . . . . . . . . . . vii
既存のケース . . . . . . . . . . viii
トラブルシューティングのヒント. . . . viii
関連文献 . . . . . . . . . . . . . ix
その他のマニュアル . . . . . . . . . xi
ご意見の送付方法 . . . . . . . . . . xi
第 1 章 Client Connector Pack のインスト
ール . . . . . . . . . . . . . . .
Client Connector Pack のコンポーネント . . .
ドライバ要件 . . . . . . . . . . . .
ODBC ドライバの要件 . . . . . . . .
JDBC ドライバの要件 . . . . . . . .
クライアントの要件 . . . . . . . . . .
Client Connector Pack コンポーネントのインス
トール . . . . . . . . . . . . . .
インストール エラー . . . . . . . . .
Client Connector Pack のアンインストール . .
Windows でのデータ ソースの設定. . . . .
1
1
2
2
2
3
3
5
6
6
第 2 章 Red Brick ODBC Driver の説明 . . 9
アーキテクチャ . . . . . . . . . . . 10
要件. . . . . . . . . . . . . . . 10
スタック サイズの要件 . . . . . . . 11
SQL_ATTR_ODBC_VERSION でのバージョ
ン レベルの設定 . . . . . . . . . 11
サポートされている関数 . . . . . . . . 11
環境属性 . . . . . . . . . . . . 17
接続属性 . . . . . . . . . . . . 17
文属性 . . . . . . . . . . . . . 17
記述子フィールド . . . . . . . . . 19
© Copyright IBM Corp. 1996, 2004
診断フィールド . . .
SQLGetInfo 情報タイプ
コア SQL 文法 . . . .
エスケープ シーケンス .
スカラ関数 . . . . .
文字列関数 . . . .
数値関数 . . . . .
日付/時刻関数 . . .
システム関数. . . .
データ型変換関数 . .
ODBC データ型. . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
第 3 章 UNIX でのカスタム クライアント
アプリケーションの作成 . . . . . . . .
Red Brick ODBClib SDK の使用 . . . . .
C コンパイラ . . . . . . . . . .
ODBC ドライバ ファイル . . . . . .
ODBClib ライブラリとヘッダ ファイル . .
Red Brick ODBClib によるコンパイルとリ
ンク. . . . . . . . . . . . . .
UNIX での ODBC アプリケーションの実行
ファイル $HOME/.odbc.ini でのデータ ソ
ース設定 . . . . . . . . . . . .
プラットフォーム固有の環境変数の設定. .
Red Brick と DataDirect SDK の機能の相違点
ヘッダ ファイル . . . . . . . . .
DSN 接続 . . . . . . . . . . . .
ソース コードの移植性 . . . . . . .
ドライバ マネージャ機能のエミュレーショ
ン . . . . . . . . . . . . . .
SQLDataSources . . . . . . . . . .
SQLDrivers . . . . . . . . . . .
SQLGetInfo . . . . . . . . . . .
ODBC サンプル プログラム . . . . . .
サンプル プログラムの場所 . . . . . .
サンプル プログラムのセットアップ . . .
21
22
31
32
32
32
33
33
34
35
36
37
38
38
39
40
40
45
45
47
47
47
48
48
48
48
48
48
49
49
49
第 4 章 Red Brick JDBC ドライバ: はじめ
に . . . . . . . . . . . . . . . 53
JDBC とは . . . . . . . . . . . . 53
JDBC ドライバとは . . . . . . . . . 55
iii
2 層構成と 3 層構成 . . . . . . . . .
2 層構成 . . . . . . . . . . . .
3 層構成 . . . . . . . . . . . .
ドライバのインストール . . . . . . . .
対話形式でのインストール . . . . . .
サイレント モードのインストール . . .
ドライバとともにインストールされるファ
イル. . . . . . . . . . . . . .
Java の CLASSPATH へのドライバの組み
込み. . . . . . . . . . . . . .
ドライバのアンインストール . . . . .
アプレットでのドライバの使用. . . . . .
HTTP プロキシ サーバの使用 . . . . . .
プロキシ サーバの構成 (3 層) . . . . . .
Netscape、Apache、IBM の各 Web サーバ
に必要なソフトウェア. . . . . . . .
Red Brick JDBC プロキシ サーブレットの
インストール. . . . . . . . . . .
HTTP プロキシの指定. . . . . . . .
第 5 章 Red Brick JDBC Driver を使用し
たプログラミング . . . . . . . . . .
接続の確立 . . . . . . . . . . . .
DriverManager クラスを使用して接続を確
立する . . . . . . . . . . . . .
DataSource オブジェクトを介したデータベ
ース接続 . . . . . . . . . . . .
サポートされている Connection メソッド
サポートされている DataSource メソッド
サポートされている
ConnectionPoolDataSource メソッド . . .
サポートされている PooledConnection メソ
ッド. . . . . . . . . . . . . .
サポートされている
ConnectionEventListener メソッド . . . .
データベースのメタデータへのアクセス. . .
iv
56
56
56
57
57
58
59
61
63
63
65
66
66
67
69
71
71
71
76
78
79
80
80
80
81
データベースへのアクセス . . . . . . .
文の実行 . . . . . . . . . . . .
ResultSet オブジェクトでのクエリ結果の受
信 . . . . . . . . . . . . . .
PreparedStatement オブジェクトを使用した
クエリの例 . . . . . . . . . . .
データ型のマッピング. . . . . . . . .
IBM Red Brick Warehouse データ型と
JDBC データ型のマッピング . . . . .
サポートされている ResultSet.getXXX() メ
ソッド . . . . . . . . . . . . .
SQLException クラスによるエラー処理 . . .
グローバル化対応 . . . . . . . . . .
グローバル化対応 . . . . . . . . .
IBM Red Brick Warehouse ロケール サポ
ート. . . . . . . . . . . . . .
取消し処理 . . . . . . . . . . . .
スカラ関数 . . . . . . . . . . . .
トランザクション処理. . . . . . . . .
ドライバのバージョン番号の取得 . . . . .
サンプル コード ファイル . . . . . . .
第 6 章 Red Brick JDBC ツール .
環境設定 . . . . . . . . . .
JNDI プロパティの保存と取得 .
データ ソース Administrator ツール.
JDBC Ping ツール . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
82
82
83
85
86
86
88
90
91
91
91
93
93
96
96
96
. 99
100
101
102
103
付録. Java 対応エンコードの GlobalC コ
ードへの変換 . . . . . . . . . . . 105
特記事項 . . . . . . . . . . . . 109
商標 . . . . . . . . . . . . . . 112
索引 .
.
.
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
.
.
.
.
.
.
.
.
.
.
. 113
本書について
この章では、このマニュアルの概要と表記法について説明します。
このマニュアルで扱う内容は以下のとおりです。
v Windows® プラットフォーム上での IBM® Red Brick Warehouse™ Client Connector
Pack のインストール
v Red Brick ODBC Driver の使用
v UNIX® ODBC アプリケーションの作成
v Red Brick JDBC Driver のインストールと使用
本書の対象読者
このマニュアルの対象ユーザは、IBM Red Brick Warehouse データベースへのアクセス
が必要な ODBC または JDBC 準拠アプリケーションを開発するプログラマです。
ソフトウェアの要件
データベース サーバとして IBM Red Brick Warehouse バージョン 6.3 を使用してくだ
さい。 ODBC と JDBC の具体的な要件については、2 ページの『ドライバ要件』 を
参照してください。
本書の表記規則
このマニュアルで使用されている表記規則と書体の規則を説明します。以下を参照する
ことで、このマニュアル、およびこのマニュアル セット内の他のマニュアルが読みやす
くなります。
文字の表記規則
新しい用語、画面表示、コマンド構文などの表記には以下の規則を使用します。
規則
意味
KEYWORD (キー
ワード)
プログラミング言語の文中では、要素 (キーワード) はすべて大
文字のセリフ フォントで表記されます。
イタリック
文章中において、新出用語および強調する用語はイタリックで表
記されます。
イタリック
構文およびコード例では、ユーザが指定する変数値はイタリック
で表記されます。
© Copyright IBM Corp. 1996, 2004
v
規則
意味
太字
インタフェース要素 (アイコン、メニュー項目、ボタンなど) と
コマンドは太字で表記されます。
monospace (モノス プログラム エンティティ (クラスやイベントなど)、ファイル
ペース)
名、およびパス名はモノスペースで表記されます。
>
この記号は、メニュー項目を表します。たとえば、「[ツール] >
[オプション] を選択します。」は、[ツール] メニューの [オプシ
ョン] を選択することを意味します。
ヒント: 文字の入力またはコマンドの実行が指定された場合は、入力後に Enter キーを
押してください。その他のキーを押すように指定された場合は、Enter キーを押
す必要はありません。
キーワードと区切り文字
キーワードとは、文およびコマンド (システム レベルのコマンドを除く) で使用するた
めに予約された単語のことです。構文ダイアグラムでは、キーワードが大文字で表記さ
れます。ユーザが実際にキーワードを記述する場合は、大文字と小文字のどちらを使用
しても構いません。ただし、スペルは構文ダイアグラムに表記されるとおりでなければ
なりません。
構文ダイアグラム内の区切り文字も、ダイアグラムに示されているとおりに文とコマン
ドの中に挿入する必要があります。
識別子と名前
構文ダイアグラムおよび例の中の変数は、識別子および名前のプレースホルダです。変
数は、文脈に応じて任意の名前、識別子、またはリテラルに置き換えることができま
す。変数は、追加の構文ダイアグラムで展開される複雑な構文要素を表すためにも使用
されます。変数は、構文ダイアグラム、例、テキストでは、小文字のイタリック で表記
されます。
以下に示す構文ダイアグラムは、変数を使用した簡単な SELECT 文の一般的なフォー
ムを示しています。
SELECT column_name FROM table_name
このフォームの SELECT 文を記述するときには、変数の column_name と table_name
を特定の列とテーブルに置き換えます。
コメント
コメントには 3 種類あり、それぞれ以下の表に示す情報を表します。これらの情報は常
にイタリックで表記されます。
vi
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
ラベル
説明
警告:
重要な手順、注意事項、または重要な情報を表します。
重要:
現在説明されている機能または操作に関する重要な情報を表しま
す。
ヒント:
現在説明されている機能に関する詳細またはショートカットなど
の追加情報を表します。
プラットフォーム記号
機能記号、製品記号、およびプラットフォーム記号は、特定のプラットフォームに関す
る情報を示します。
UNIX のみ
UNIX および Linux オペレーティング システムに固有の情報を表します。
UNIX のみ の終り
Windows のみ
Windows プラットフォームに固有の情報を表します。
Windows のみ の終り
ソフトウェア サポート
IBM Red Brick Warehouse に関する技術上の質問があり、その対処法が該当するマニュ
アルに記述されていない場合は、以下の IBM ソフトウェア サポートまでご連絡くださ
い。
電話番号
1-800-274-8184 または 1-913-492-2086 (中央標準時間、月曜日から金
曜日の午前 7 時から午後 7 時)
Web サイト
www-3.ibm.com/software/data/informix/support/
問題の報告
新しい問題を報告する場合は、次の情報を報告してください。
v IBM Red Brick Warehouse のバージョン
v プラットフォームとオペレーティング システムのバージョン
v IBM Red Brick Warehouse またはオペレーティング システムから戻されたエラー メ
ッセージ
本書について
vii
v エラー メッセージが表示される前に実行したコマンドや操作など、問題についての
詳しい説明
v エラー メッセージが表示される前に行われた IBM Red Brick Warehouse またはオペ
レーティング システムの構成変更のリスト
クライアント/サーバの接続に関する問題の場合は、さらに次の情報も報告してくださ
い。
v 使用しているクライアント ツールの名前とバージョン
v 該当する場合、Red Brick ODBC Driver または Red Brick JDBC Driver のバージョ
ン
v 使用しているクライアント ネットワークまたは TCP/IP スタックの名前とバージョ
ン
v クライアント アプリケーションから戻されたエラー メッセージ
v サーバおよびクライアント ロケール指定
既存のケース
問題のケースを記録するか、最初に対応したサポート エンジニアが必ずケース番号を登
録します。この番号によって、それぞれの問題を解決する間に行われた作業をすべて把
握できます。既存のケースの状況について知りたい場合は、ケース番号をお知らせくだ
さい。
トラブルシューティングのヒント
ささいなことでも、再現可能な問題を具体的に報告することによって、ケース解決まで
の時間を短縮できる場合もあります。問題の原因をたくさん検出できれば、それだけ早
くサポート エンジニアが問題を解決できます。
v SQL クエリに関する問題の場合は、文で問題の原因となった部分が発見されるまで、
列または関数の削除や、WHERE 句、ORDER BY 句、または GROUP BY 句の再指
定を行ってください。
v テーブル マネジメント ユーティリティ ロードに関する問題の場合は、ソース ファ
イルとターゲット テーブルとのマッピングでデータ型に互換性があるかどうか検証
してください。少量のテスト データをロードして、ボリュームとデータ フォーマッ
トのいずれに関連した問題であるかを特定してください。
v 接続上の問題の場合は、クライアントからホストに ping コマンドを実行して、ネッ
トワークが使用可能であることを検証してください。可能な場合は、別のクライアン
ト ツールを使用しても同じ問題が発生するかどうか確認してください。
viii
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
関連文献
IBM Red Brick Warehouse のマニュアル セットには、以下のマニュアルが含まれてい
ます。
マニュアル
説明
管理者ガイド
ウェアハウスのアーキテクチャやサポートされるスキ
ーマなど、データベースに関連した基本概念のマニュ
アルです。グラフィカルなデータベース管理機能を提
供する Administrator ツールについて説明します。デ
ータベースの実装や保守の手順についても説明しま
す。システム テーブルと構成ファイルの説明も含まれ
ています。
クライアント システムへの ODBC、Red Brick JDBC
Driver、RISQL エントリ ツール、および RISQL レポ
ーターのインストール手順についても説明します。C
および C++ アプリケーション用 ODBC 製品と
Java™ アプリケーション用 JDBC 製品を使用して、
IBM Red Brick Warehouse にアクセスする方法を説明
しています。
IBM Red Brick Vista の集約計算と管理システムにつ
いて説明しています。集約を使用するようにクエリを
自動的にリライトすることによって Vista クエリ パ
フォーマンスを向上させる方法、毎日収集されるデー
タに基づいて Advisor が最適な集約セットを推奨する
方法、詳細テーブルの更新時の集約テーブルの保守方
法を説明しています。
IBM Red Brick Warehouse のインストールと構成に関
する情報、およびプラットフォーム固有の情報につい
て説明しています。UNIX および Linux ベースのシス
テム用と、Windows ベースのシステム用があります。
IBM Red Brick Warehouse の各製品でサポートされて
いるロケール要素 (言語、テリトリ、コード セット、
ソート順) を定義しています¡
IBM Red Brick Warehouse 製品によって出力される通
知メッセージ、警告メッセージ、およびエラー メッセ
ージの一覧を記載しています。また、各メッセージの
原因と対処方法も示しています。さらに、ログ ファイ
ルに書き込まれるイベント ログ メッセージについて
も説明しています。
クライアント インストールお
よび接続ガイド
IBM Red Brick Vista ユーザー
ズ ガイド
インストールおよび構成ガイド
ロケール サポート
メッセージおよびコード リフ
ァレンス ガイド
本書について
ix
マニュアル
説明
クエリ パフォーマンス ガイド
クエリ パフォーマンスの決定要素と、最適なクエリ
パフォーマンスを得るためのデータベースのチューニ
ング方法について説明しています。 Red Brick ツール
(SET STATS、Dynamic Statistic Tables: 動的統計テー
ブル、EXPLAIN、および Query Performance Monitor)
を使用してクエリ パフォーマンスを評価する方法につ
いても、例を挙げて説明しています。
マニュアルの印刷後に判明した現リリースに関する情
報が含まれます。
SQL 文の入力に使用するコマンド行ツールである
RISQL エントリ ツールと、RISQL エントリ ツール
にレポート フォーマット設定機能を付加した RISQL
レポーターの詳細なガイドです。
Red Brick SQL の実装と RISQL (IBM Red Brick
Warehouse データベースのための拡張機能) に関する
詳細な言語リファレンスです。
例題に基づいて SQL を復習し、RISQL 拡張機能、マ
クロ関数、Aroma サンプル データベースを紹介しま
す。
テーブル マネジメント ユーティリティ を使用したデ
ータのロード、保守、およびバックアップ作業につい
て説明しています。データのコピーと rb_cm コピー
管理ユーティリティについても説明しています。
リリース ノート
RISQL エントリ ツールおよび
RISQL レポーター ユーザーズ
ガイド
SQL リファレンス ガイド
SQL 自習ガイド
テーブル マネジメント ユーテ
ィリティ リファレンス ガイド
また、以下の参考資料も必要に応じて参照してください。
v SQL に関する入門書
v リレーショナル データベースの入門書
v ご使用のハードウェア プラットフォームとオペレーティング システムのマニュアル
x
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
その他のマニュアル
上記以外の情報は、以下のマニュアルを参照してください。
マニュアル
説明
オンライン マニュアル
Red Brick 製品には、各種の IBM Red Brick Warehouse マ
ニュアルを電子フォーマットで収録した CD が同梱されて
います。収録されているマニュアルは、システムにインスト
ールして使用することも、CD から直接アクセスすることも
可能です。
印刷マニュアル
オンライン ヘルプ
オンラインでマニュアルを参照できます。オンラインで参照
するには、次のアドレスにアクセスしてください。
www-3.ibm.com/software/data/informix/pubs/
印刷マニュアルを注文する場合は、担当販売員までご連絡く
ださい。
IBM はグラフィカル ユーザ インタフェース (GUI) を用い
たオンライン ヘルプを提供します。これにより、各インタ
フェースや実行する関数についての情報を参照できます。オ
ンライン ヘルプを表示するには、GUI のヘルプ機能を利用
してください。
ご意見の送付方法
今後のマニュアルの品質向上を図るため、修正すべき箇所や有用な情報をご提案くださ
い。その際、以下の情報をご提出ください。
v マニュアルの正式名とバージョン
v マニュアルに関するご意見
v 氏名、住所、電話番号
連絡先電子メールアドレス:
[email protected]
このメール アドレスは、マニュアル内の記述誤りや誤植をご報告いただくために用意さ
れています。代わりに、以下の Web サイトのフォームに記述して送信していただくこ
とも可能です。
www.ibm.com/software/data/rcf/
技術上の問題に関する緊急な問い合わせについては、IBM ソフトウェア サポートまで
ご連絡ください。
本書について
xi
xii
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
第 1 章 Client Connector Pack のインストール
この章では、IBM Red Brick Warehouse Client Connector Pack を Windows コンピュー
タにインストールする方法、およびアンインストールする方法について説明します。ま
た、特定のデータベースへの接続に必要なデータ ソースを作成する方法についても説明
します。
サポートされる Windows プラットフォームの一覧は、「リリース ノート」を参照して
ください。
ソフトウェアをインストールして使用する前に、2 ページの『ドライバ要件』 および 3
ページの『Client Connector Pack コンポーネントのインストール』を必ずお読みくださ
い。
Client Connector Pack のコンポーネント
Windows 版 Client Connector Pack は以下のコンポーネントで構成されています。これ
らのコンポーネントは、ソフトウェア CD-ROM の ¥CCP¥Client32 ディレクトリにあり
ます。
製品
説明
Red Brick ODBC Driver および RBPing
Red Brick ODBC Driver を使用して、
ODBC に準拠したさまざまなデータベース
アプリケーションを IBM Red Brick
Warehouse と連動させることができます。
ドライバをインストールすると、Microsoft
Access などのアプリケーションを使用して
IBM Red Brick Warehouse データベースの
情報にアクセスできます。
RISQL エントリ ツール
© Copyright IBM Corp. 1996, 2004
RBPing を使用することにより、データ ソ
ースが接続されており、データを受信して
いるかテストできます。
RISQL エントリ ツールは、IBM Red
Brick Warehouse データベースにアクセス
する機能を備えています。
1
製品
説明
RISQL レポーター
RISQL レポーターは、RISQL エントリ ツ
ールの全機能に加え、データベースから抽
出したデータを使用してレポートのフォー
マットを設定する機能を備えています。
クライアント TMU (rb_ctmu) はクライア
ント側の実行可能ファイルであり、リモー
ト サーバ マシン上で TMU (Table
Management Utility) のロード処理を起動し
ます。詳細については、「テーブル マネ
ジメント ユーティリティ リファレンス
ガイド」を参照してください。
クライアント TMU
ディレクトリ CCP の下には JDBC というディレクトリもあります。Red Brick JDBC
Driver を使用して、JDBC に準拠したさまざまなデータベース アプリケーションを
IBM Red Brick Warehouse と連動させることができます。 JDBC ドライバは、Java イ
ンタフェースと Java クラスを実装しています。プログラマは、これらのインタフェー
スとクラスを使用してデータベースに接続し、特定のデータベース管理システム
(DBMS) へクエリを送信します。JDBC のインストール手順については、53 ページの
『第 4 章 Red Brick JDBC ドライバ: はじめに』 を参照してください。
ドライバ要件
Windows 版 Red Brick ODBC Driver および Red Brick JDBC Driver はどちらも、
Client Connector Pack CD-ROM からインストールします。UNIX/Linux 版の Red Brick
ODBC Driver および Red Brick ODBClib SDK は、IBM Red Brick Warehouse Server
と同じ CD-ROM からインストールします。
ODBC ドライバの要件
Client Connector Pack バージョン 2.3 および IBM Red Brick Warehouse 6.30 に同梱さ
れている Red Brick ODBC Driver は、32 ビットバージョンのみで使用できます。古い
サーバ リリースとの下位方向の互換性の詳細については、「リリース ノート」を参照
してください。
JDBC ドライバの要件
Java が動作するオペレーティング システムでは、Red Brick JDBC Driver をインスト
ールして使用できます。JDBC ドライバを使用するには、適切な Java ソフトウェア開
発キット (SDK) をシステムにインストールする必要があります。このリリースでサポ
ートされている SDK については、「リリース ノート」を参照してください。
2
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
クライアントの要件
Client Connector Pack のコンポーネントをインストールするには、Windows クライアン
ト システムに以下のハードウェアとソフトウェアが必要です。
v TCP/IP ネットワークに接続している IBM 互換 PC。
v CD-ROM ドライブ。Client Connector Pack CD-ROM には、必要に応じて 3.5 インチ
ディスケットにコピーできるディスク イメージが格納されています。
v 6MB 以上の未使用領域があるハード ディスク。
v 適切なバージョンの Windows オペレーティング システム、ネットワーク ソフトウ
ェア、および通信ソフトウェア。
v WinSock 準拠の TCP/IP スタック。
Client Connector Pack コンポーネントのインストール
使用するコンピュータに、以前のバージョンの Client Connector Pack がインストールさ
れている場合、IBM Red Brick Warehouse をインストールする前に、Uninstaller ユーテ
ィリティを使用してその Client Connector Pack をアンインストールします。詳細につい
ては、6 ページの『Client Connector Pack のアンインストール』を参照してください。
重要: IBM Red Brick Warehouse Server がすでにインストールされている Windows マ
シンでは Client Connector Pack ODBC ユーティリティは不要であるため、この
ユーティリティをインストールしないでください。サーバのインストール時にデ
フォルトで Client Connector Pack ODBC ユーティリティがインストールされま
す。同じコンピュータに Client Connector Pack 版 ODBC がインストールされる
と、Client Connector Pack とともにインストールされた DLL ファイルがサーバ
とともにインストールされた同じ DLL ファイルと競合するため、クライアント
ツールが応答しなくなることがあります。
JDBC ドライバではこのような競合は発生しないため、57 ページの『ドライバの
インストール』に記載されたインストール手順に従い、サーバがインストールさ
れている Windows マシンに JDBC ドライバを正常にインストールできます。
Client Connector Pack をインストールするには、Red Brick Setup ユーティリティを使
用します。このユーティリティを実行すると、インストール時に選択したオプションに
応じて、以下のファイルが Windows オペレーティング システムのディレクトリにコピ
ーされます。
v IBM Red Brick Warehouse (RB32ODBC.DLL) および関連ファイル
v ODBC Administrator プログラム ファイル
この Microsoft プログラムを使用すると、ODBC ドライバと DSN を追加または削除
できます。
v RBPing および関連ファイル
第 1 章 Client Connector Pack のインストール
3
v RISQL エントリ ツール ファイル
v RISQL レポーター ファイル
v クライアント TMU ファイル
ヒント: [Cancel] をクリックすると、ダイアログ ボックスが表示されます。このダイ
アログ ボックスで、インストールを再開するか、Windows に戻るかを選択で
きます。
インストールを開始する方法:
1. 実行中のアプリケーションをすべて終了します。
2. Windows を開始します。
3. Client Connector Pack インストール CD-ROM を挿入します。
4. [スタート] > [ファイル名を指定して実行] をクリックします。[ファイル名を指定し
て実行] ダイアログ ボックスが表示されます。
5. drive:¥CCP¥Client32¥Japanese¥Disk1¥Setup.exe と入力し、[OK] をクリックして
Client Connector Pack (Client32) をインストールします。
Setup ユーティリティの [Welcome] 画面が表示されます。[Next] をクリックし、次
に [Yes] をクリックしてライセンス契約条件に同意します。
6. [Select Components] 画面で、インストールする製品を選択します。
7. [Locale Components Specification] 画面で、デフォルト値をそのまま使用するか、ま
たは各カテゴリの下にあるメニューから他の値を選択します。
8. [ODBC Data Source Administrator] 画面で、DSN を追加するには [Add] をクリック
します。DSN を後で作成する場合は、[Cancel] をクリックしてウィンドウを閉じま
す。
4
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
インストール エラー
インストール中に以下のエラー メッセージが表示される場合があります。
Microsoft Setup: An error occurred while copying MSVCRT20.DLL. Restart Windows
and try installing again (before running any application that uses ODBC).
このエラー メッセージが表示された場合は、以下の操作を実行します。
1. [Cancel] をクリックして、Red Brick の Setup を終了します。
2. Windows を終了します。
3. コンピュータを再起動します。
Setup ユーティリティを再実行してもこのエラー メッセージが表示される場合は、ディ
レクトリ System32 にある MSVCRT20.DLL および CTL3D32.DLL という 2 つの Microsoft
ファイルの名前を変更してください。あるいは、これらのファイルを別のディレクトリ
に移動してから Setup ユーティリティを再実行してください。
第 1 章 Client Connector Pack のインストール
5
Client Connector Pack のアンインストール
Client Connector Pack の Uninstaller プログラムを実行すると、インストール時にインス
トール先ディレクトリにコピーされたファイルが削除されます。また、Setup ユーティ
リティで指定されたレジストリ設定も、ほとんど削除されます。ただし、以前に Client
Connector Pack 製品をインストールしている場合や、32 ビットの ODBC ドライバをイ
ンストールし、その後 RISQL エントリ ツールをインストールしている場合、アンイン
ストーラ プログラムでは以前にインストールしたファイルの一部が削除されないことが
あります。たとえば、rbw.config ファイルが挙げられます。
こうしたファイルを削除するには、フォルダ RedBrick¥Client32 とそのフォルダ内の
ファイルをシステムから手動で削除した後、残りのインストールを実行します。また、
フォルダ System32 内にある以下のファイルも削除します。
<windows_directory>¥system32¥rb32odbc.dll
<windows_directory>¥system32¥rb32odin.dll
Client Connector Pack をアンインストールする方法:
1. [スタート] > [設定] > [コントロール パネル] > [アプリケーションの追加と削除]
をクリックし、レジストリ ファイルに Client Connector Pack が登録されているかど
うかを確認します。Client Connector Pack が登録されている場合、一覧に Client32
が表示されます。
2. [スタート] > [プログラム] > [Red Brick Client (32)] > [Uninstaller] を選択し、
Windows から Client Connector Pack をアンインストールします。
Windows でのデータ ソースの設定
このセクションでは、Windows プラットフォーム上でデータ ソース名 (DSN) を追加、
設定、再設定、および削除する方法について説明します。DSN とは、ホスト システム
にインストールされている特定のサーバ、そのホスト上にあるデータベース名、データ
ベース ユーザ名を組み合わせた論理名のことです。
このセクションでは、RBPing (Red Brick Ping) を使用して DSN をテストする方法につ
いても説明します。
UNIX 上で DSN を追加、設定、および削除する方法については、 45 ページの『UNIX
での ODBC アプリケーションの実行』 を参照してください。
新しい DSN を追加および設定する方法:
1. [スタート] > [設定] > [コントロール パネル] > [ODBC Data Sources] を選択
し、[ODBC Data Source Administrator] ダイアログ ボックスを表示します。
2. DSN を変更するためのオプションを選択します。
6
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
v アクセス権と移行特権を 1 ユーザにのみ付与するには、[User DSN] オプション
を選択します。
v システムの全ユーザにアクセスを許可するには、[System DSN] オプションを選択
します。
v ファイルへの書込み特権を持つユーザにアクセスを許可するには、[File DSN] オ
プションを選択します。
3. ステップ 1 で選択したオプションに対応するタブをクリックします。
4. [Add] をクリックして [Create New Data Source] ダイアログ ボックスを表示しま
す。
5. 一覧からドライバを選択し、[OK] をクリックします。
[Red Brick ODBC Driver Data Source] ダイアログ ボックスが表示されます。以下の
情報をダイアログ ボックスに入力します。
v データ ソース名
データ ソース名とは DSN に対する論理識別子で、以下の文字を除く任意の文字
列で構成できます。
( ) [ ] = ; { } , ? * ! @
v サーバ (ホスト:ポート)
これは、(たとえば brick:7923 などの) IBM Red Brick Warehouse を実行するサ
ーバのホスト名とポート番号です。
v データベース名
データベース名とは、(たとえば Aroma などの) データベース管理者が設定したホ
スト コンピュータ上の有効なデータベースの論理識別子のことです。
v デフォルトのユーザ名
デフォルトのユーザ名とは、システム ユーザ名といった、データベースへのアク
セスを許可するデータベース ユーザ名のことです。
6. [OK] をクリックし、[ODBC Data Source Administrator] ダイアログ ボックスを表示
します。
新しく定義した DSN が一覧に表示されます。
DSN を追加すると、データ ソース名は ODBC に準拠したツールのコネクティビテ
ィ コンポーネントで表示されます。
CCP を初めてインストールする場合、DSN を追加した後に [Setup Complete] ダイアロ
グ ボックスが表示されます。コンピュータをすぐに再起動する場合は [Yes ]、コンピ
ュータを後で再起動する場合は [No] をクリックします。
第 1 章 Client Connector Pack のインストール
7
DSN を再設定する方法:
1. [スタート] > [設定] > [コントロール パネル] > [ODBC Data Sources] を選択
し、[ODBC Data Source Administrator] ダイアログ ボックスを表示します。
2. 変更する DSN を選択します。
3. [Configure] をクリックし、[Red Brick ODBC Driver Data Source] ダイアログ ボッ
クスを表示します。
4. DSN の設定情報を変更し、[OK] をクリックします。
DSN を削除する方法:
1. [スタート] > [設定] > [コントロール パネル] > [ODBC Data Sources] を選択
し、[ODBC Data Source Administrator] ダイアログ ボックスを表示します。
2. 削除する DSN を選択します。
3. [Remove] をクリックして、[32-bit ODBC Administrator] 質問ボックスを表示しま
す。
4. 削除を確定するには [Yes] を、取り消す場合は [No] をクリックします。
DSN をテストする方法:
1. [スタート] > [プログラム] (または [プログラム マネージャ]) > [Red Brick Client
32] を選択します。
2. [RWPing] ダイアログ ボックスで、テストする DSN を選択し、[ping] をクリック
します。
[Status] ダイアログ ボックスに接続に関する情報が表示されます。RBPing が DSN
との接続に失敗すると、エラーの原因を説明するメッセージ「ドライバのロードが正
常に行われません」が表示されます。
8
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
第 2 章 Red Brick ODBC Driver の説明
この章では、UNIX および Windows プラットフォーム上で動作するアプリケーション
用の Red Brick ODBC Driver について説明します。 Red Brick ODBC Driver は、
Microsoft のオープン データベース コネクティビティ (ODBC) インタフェース、バー
ジョン 3.5 に実装されています。このドライバを使用して、ODBC に準拠したさまざま
なデータベース アプリケーションを IBM Red Brick Warehouse と連動させることがで
きます。
ODBC の詳細については、「Microsoft ODBC 3.0 Programmer’s Reference」を参照して
ください。 IBM Red Brick Warehouse でサポートされている関数、および変数につい
ては、「SQL リファレンス ガイド」を参照してください。
© Copyright IBM Corp. 1996, 2004
9
アーキテクチャ
IBM Red Brick Warehouse は、データ ウェアハウス、データマート、およびオンライ
ン分析処理 (OLAP) の各アプリケーションを対象としたリレーショナル データベース
管理システム (RDBMS) です。 IBM Red Brick Warehouse データベースにアクセスす
るには、Red Brick ODBC Driver インタフェースを介してRISQL エントリ ツールなど
のアプリケーションを使用します。以下の図は、IBM Red Brick Warehouse データベー
スにアクセスに関連した通信ソフトウェアの階層を示したものです。
IBM Red Brick Warehouse のアーキテクチャと接続の詳細については、「管理者ガイ
ド」を参照してください。
要件
このセクションでは、Red Brick ODBC Driver に必要なシステム、スタック サイズ、
および環境変数について説明します。
10
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
以下のテーブルは、オペレーティング システムに対して推奨される TCP/IP スタックを
示したものです。
クライアント サイドの
オペレーティング システム
推奨または必須の TCP/IP スタック
サポートされているスタックの一覧については、IBM
カスタマ サポートにお問い合わせください。
WinSock 準拠の内蔵 TCP/IP スタックが必要です。
UNIX
Windows
スタック サイズの要件
Red Brick ODBC Driver は呼び出したアプリケーションとスタック領域を共有するた
め、アプリケーションに 8KB 以上の未使用領域を必要とします。
SQL_ATTR_ODBC_VERSION でのバージョン レベルの設定
環境属性 SQL_ATTR_ODBC_VERSION は、Red Brick ODBC Driver が ODBC 2.x と
して動作するか、ODBC 3.0 として動作するかを特定します。 SQLSetEnvAttr 関数を使
用すると、SQL_ATTR_ODBC_VERSION にバージョン レベルを設定できます。
v アプリケーションにおいて、ODBC 2.x として動作するとみなされる場合は、
SQL_ATTR_ODBC_VERSION を SQL_OV_ODBC2 に設定します。
v アプリケーションにおいて、ODBC 3.0 として動作するとみなされる場合は、
SQL_ATTR_ODBC_VERSION を SQL_OV_ODBC3 に設定します。
2 つのバージョン設定における動作の詳細については、「Microsoft ODBC 3.0
Programmer’s Reference, Volume 2」の『SQLSetEnvAttr』を参照してください。
サポートされている関数
このセクションでは、Red Brick ODBC Driver でサポートされている ODBC 関数につ
いて説明します。また、ODBC 3.0 で廃止予定の ODBC 2.x の関数も示します。
Red Brick ODBC Driver は ODBC 3.0 レベル 1 API に完全に準拠しており、レベル 2
の呼び出しもいくつか含まれます。以下のテーブルは、Red Brick ODBC Driver でサポ
ートされている ODBC 3.0 関数の一覧です。 SQLAllocConnectD のように末尾に D と
いう上付き文字が付いている関数は、ODBC 2.x 関数のうち、ODBC 3.0 で廃止予定の
ものです。
インタフェース準拠
レベル
ODBC 関数
SQLAllocConnect
D
コメント
ODBC 3.0 では SQLAllocHandle
に置き換えられます。
第 2 章 Red Brick ODBC Driver の説明
11
インタフェース準拠
レベル
ODBC 関数
SQLAllocEnv
D
SQLAllocHandle
コア
コメント
ODBC 3.0 では SQLAllocHandle
に置き換えられます。
以下に示す廃止予定の ODBC
2.x 関数を置き換えます。
v SQLAllocConnect
v SQLAllocEnv
SQLAllocStmtD
SQLBindCol
コア
SQLBindParameter
コア
SQLCancel
コア
SQLCloseCursor
SQLColAttribute
コア
コア
SQLColumnPrivileges
レベル 2
SQLColumns
コア
SQLConnect
コア
SQLCopyDesc
SQLDescribeCol
SQLDescribeParam
コア
コア
レベル 2
SQLDisconnect
SQLDriverConnect
コア
コア
SQLDrivers
SQLEndTran
コア
コア
SQLErrorD
12
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
v SQLAllocStmt
ODBC 3.0 では SQLAllocHandle
に置き換えられます。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から変更されまし
た。ODBC 2.x の SQLSetParam
を置き換えます。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x の SQLColAttributes
を置き換えます。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。SQLExecDirect の後に
呼び出された場合、パラメータ
記述またはパラメータ数を戻し
ません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x の SQLTransact を置
き換えます。
ODBC 3.0 では SQLGetDiagRec
に置き換えられます。
ODBC 関数
インタフェース準拠
レベル
SQLExecDirect
コア
SQLExecute
コア
SQLFetch
コア
SQLFetchScroll
コア (オプション
SQL_FETCH_NEXT)
レベル 2
SQLForeignKeys
SQLFreeConnectD
SQLFreeEnvD
SQLFreeHandle
コア
コメント
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
SQL_FETCH_NEXT オプション
のみサポートされています。
ODBC 2.x から機能の変更はあ
りません。
ODBC 3.0 では SQLFreeHandle
に置き換えられます。
ODBC 3.0 では SQLFreeHandle
に置き換えられます。
以下に示す ODBC 2.x 関数を置
き換えます。
v SQLFreeConnect
SQLFreeStmt
コア
SQLGetConnectAttr
コア
SQLGetConnectOptionD
SQLGetCursorName
コア
SQLGetData
コア
SQLGetFunctions
SQLGetDescField
SQLGetDescRec
コア
コア
コア
v SQLFreeEnv
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x の
SQLGetConnectOption を置き換
えます。 17 ページの『接続属
性』を参照してください。
ODBC 3.0 では
SQLGetConnectAttr に置き換えら
れます。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
注: SQLGetData は
SQL_ATTR_ROW_
ARRAY_SIZE により設定された
配列サイズを使用しません。こ
の関数は常に、一度に 1 つの行
を取り出します。
第 2 章 Red Brick ODBC Driver の説明
13
ODBC 関数
インタフェース準拠
レベル
SQLGetDiagField
SQLGetDiagRec
コア
コア
SQLGetEnvAttr
SQLGetFunctions
SQLGetInfo
SQLGetStmtAttr
コア
レベル 1
コア
コア
SQLGetStmtOptionD
SQLGetTypeInfo
コア
SQLMoreResults
レベル 1
SQLNativeSql
コア
SQLNumParams
SQLNumResultCols
コア
コア
SQLParamData
コア
SQLPrepare
コア
SQLPrimaryKeys
レベル 1
SQLPutData
コア
SQLRowCount
コア
SQLSetConnectAttr
コア
SQLSetConnectOptionD
SQLSetCursorName
14
コア
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
コメント
ODBC 2.x の SQLError を置き
換えます。
ODBC 2.x の SQLGetStmtOption
を置き換えます。
ODBC 3.0 では SQLGetStmtAttr
に置き換えられます。
ODBC 2.x から機能の変更はあ
りません。
エラーが発生すると、次の Red
Brick 固有のメッセージを戻しま
す。
SQL_NO_DATA_FOUND
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x の
SQLSetConnectOption を置き換え
ます。 17 ページの『接続属
性』を参照してください。
ODBC 3.0 では
SQLSetConnectAttr に置き換えら
れます。
ODBC 2.x から機能の変更はあ
りません。
ODBC 関数
インタフェース準拠
レベル
SQLSetDescField
SQLSetDescRec
SQLSetEnvAttr
SQLSetParamD
コア
コア
コア
SQLSetStmtAttr
コア
SQLSetStmtOptionD
SQLSpecialColumns
コア
SQLStatistics
コア
SQLTablePrivileges
レベル 2
SQLTables
コア
SQLTransactD
コメント
ODBC 3.0 では
SQLBindParameter に置き換えら
れます。
ODBC 2.x の SQLSetStmtOption
を置き換えます。
ODBC 3.0 では SQLSetStmtAttr
に置き換えられます。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 2.x から機能の変更はあ
りません。
ODBC 3.0 では SQLEndTran に
置き換えられます。
以下のテーブルは、Red Brick ODBC 2.0 Driver でサポートされ、ODBC 3.0 では廃止
予定の関数の一覧です。このテーブルに記載されている廃止予定 ODBC 2.0 関数は、
ODBC 3.0 で置き換えられる関数にマップされます。
第 2 章 Red Brick ODBC Driver の説明
15
16
廃止予定関数
3.0 で置き換えられる関数
SQLAllocConnect
SQLAllocEnv
SQLAllocStmt
SQLColAttributes
SQLError
SQLFreeConnect
SQLFreeEnv
SQLFreeStmt (引数 SQL_DROP を使用)
SQLGetConnectOption
SQLGetStmtOption
SQLParamOptions
SQLSetConnectOption
SQLSetParam
SQLSetScrollOption
SQLSetStmtOption
SQLTransact
SQLAllocHandle
SQLAllocHandle
SQLAllocHandle
SQLColAttribute
SQLGetDiagRec
SQLFreeHandle
SQLFreeHandle
SQLFreehandle
SQLGetConnectAttr
SQLGetStmtAttr
SQLSetStmtAttr
SQLSetConnectAttr
SQLBindParameter
SQLSetStmtAttr
SQLSetStmtAttr
SQLEndTran
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
環境属性
以下のテーブルは、SQLGetEnvAttr 関数および SQLSetEnvAttr 関数に対して Red Brick
ODBC Driver でサポートされている環境属性の一覧です。
環境属性
デフォルト値
SQL_ATTR_ODBC_VERSION
SQL_ATTR_OUTPUT_NTS
[デフォルト値なし]
SQL_TRUE
Red Brick ODBC Driver では、SQL_ATTR_CONNECTION_POOLING および
SQL_ATTR_CP_MATCH の各属性はサポートされていません。
接続属性
以下のテーブルは、SQLGetConnectAttr 関数および SQLSetConnectAttr 関数に対して
Red Brick ODBC Driver でサポートされている接続属性の一覧です。
接続属性
デフォルト値
SQL_ATTR_ACCESS_MODE
SQL_ATTR_ASYNC_ENABLE
SQL_ATTR_AUTO_IPD
SQL_ATTR_AUTOCOMMIT
SQL_ATTR_CURRENT_CATALOG
SQL_ATTR_LOGIN_TIMEOUT
SQL_ATTR_METADATA_ID
SQL_LOGIN_TIMEOUT
SQL_TRANSLATE_DLL
SQL_TRANSLATE_OPTION
SQL_ATTR_TXN_ISOLATION
SQL_MODE_READ_WRITE
SQL_ASYNC_ENABLE_OFF
SQL_TRUE
SQL_AUTOCOMMIT_ON
デフォルト値はありません。
0
SQL_FALSE
15
NULL (指定なし)
0 (FALSE)
デフォルト値はありません。
SQL_ATTR_TXN_ISOLATION を設定できるの
は、データベース内に実行中のトランザクショ
ンがない場合のみです。
文属性
以下のテーブルは、SQLGetStmtattr 関数および SQLSetStmtattr 関数に対して Red Brick
ODBC Driver でサポートされている文属性の一覧です。 SQL_ASYNC_ENABLER のよ
うに末尾に R という上付き文字が付いている属性は ODBC 2.x 属性であり、ODBC
3.0 では別の属性に置き換えられます。
第 2 章 Red Brick ODBC Driver の説明
17
文属性
SQL_ASYNC_ENABLE
デフォルト値とコメント
R
SQL_ATTR_APP_PARAM_DESC
SQL_ATTR_APP_ROW_DESC
SQL_ATTR_ASYNC_ENABLE
SQL_ATTR_CONCURRENCY
SQL_ATTR_CURSOR_TYPE
SQL_ATTR_ENABLE_AUTO_IPD
SQL_ATTR_IMP_PARAM_DESC
SQL_ATTR_IMP_ROW_DESC
SQL_ATTR_MAX_LENGTH
SQL_ATTR_MAX_ROWS
SQL_ATTR_METADATA_ID
SQL_ATTR_NOSCAN
SQL_ATTR_PARAM_BIND_OFFSET_PTR
SQL_ATTR_PARAM_BIND_TYPE
SQL_ATTR_PARAM_OPERATION_PTR
SQL_ATTR_PARAM_STATUS_PTR
SQL_ATTR_PARAMS_PROCESSED_PTR
SQL_ATTR_PARAMSET_SIZE
SQL_ATTR_QUERY_TIMEOUT
SQL_ATTR_ROW_ARRAY_SIZE
SQL_ATTR_ROW_BIND_OFFSET_PTR
SQL_ATTR_ROW_BIND_TYPE
18
ODBC 3.x では
SQL_ATTR_ASYNC_ENABLE に置き換え
られます。
[デフォルト値なし]
[デフォルト値なし]
ODBC 2.x 属性 SQL_ASYNC_ENABLE を
置き換えます。デフォルト値は
SQL_ASYNC_ENABLE_OFF です。
SQL_CONCUR_READ_ONLY
SQL_CURSOR_FORWARD_ONLY
接続属性 SQL_ATTR_AUTO_IPD の値
読取り専用。デフォルト値はありません。
読取り専用。デフォルト値はありません。
ODBC 2.x 属性 SQL_MAX_LENGTH を置
き換えます。
*ValuePtr が 0 (デフォルト値) の場合、ド
ライバは使用可能なデータをすべて戻そう
とします。
ODBC 2.x 属性 SQL_MAX_ROWS を置き
換えます。0 (デフォルト値) の場合、すべ
ての行が戻されます。
SQL_FALSE
SQL_NOSCAN_OFF
NULL
SQL_PARAM_BIND_BY_COLUMN
[デフォルト値なし]
[デフォルト値なし]
[デフォルト値なし]
1
最大サイズは 1024 です。
注: SELECT 文でのパラメータ配列の指定
はサポートされていません。
0 (= タイムアウトなし)
SQLExecDirect および SQLExecute に対し
てのみ有効です。
1
最大サイズは 1024 です。
[デフォルト値なし]
ODBC 2.x 属性 SQL_BIND_TYPE を置き
換えます。デフォルト値は
SQL_BIND_BY_COLUMN です。
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
文属性
デフォルト値とコメント
SQL_ATTR_ROW_NUMBER
SQL_ATTR_ROW_OPERATION_PTR
SQL_ATTR_ROW_STATUS_PTR
SQL_ATTR_ROWS_FETCHED_PTR
SQL_BIND_TYPER
[デフォルト値なし]
[デフォルト値なし]
[デフォルト値なし]
[デフォルト値なし]
ODBC 3.x では
SQL_ATTR_ROW_BIND_TYPE に置き換え
られます。
ODBC 3.x では
SQL_ATTR_MAX_LENGTH に置き換えら
れます。
ODBC 3.x では SQL_ATTR_MAX_ROWS
に置き換えられます。
0
SQL_MAX_LENGTHR
SQL_MAX_ROWSR
SQL_QUERY_TIMEOUT
記述子フィールド
記述子とは、SQL 文のパラメータに関する情報、またはリザルト セットの列に関する
情報が格納される、データ フィールドのセットのことです。記述子フィールドを取得お
よび設定するには、以下の関数を使用します。
記述子関数
コメント
SQLGetDescField
SQLGetDescRec
SQLSetDescField
1 つの記述子レコードに 1 つのフィールドの値を戻します。
1 つの記述子レコードに複数のフィールドの値を戻します。
1 つの記述子レコードに 1 つのフィールドの値を設定しま
す。
1 つの記述子レコードに複数のフィールドの値を設定しま
す。
SQLSetDescRec
さらに、任意の記述子ハンドルから別の記述子ハンドルに記述子情報をコピーするに
は、SQLCopyDesc 関数を使用できます。
記述子にはヘッダ フィールドとレコード フィールドがあります。以下のテーブルは、
Red Brick ODBC Driver でサポートされているヘッダ フィールドの一覧です。
第 2 章 Red Brick ODBC Driver の説明
19
記述子ヘッダ フィールド
SQL_DESC_ALLOC_TYPE
SQL_DESC_ARRAY_SIZE
SQL_DESC_ARRAY_STATUS_PTR
アプリケーション ロール記述子 (ARD) およびアプリケーション パラメータ記述子に
対して、SQL_DESC_ARRAY_STATUS_PTR に設定できる値は 1 のみです。それ以外
の値は無視されます。
SQL_DESC_BIND_OFFSET_PTR
SQL_DESC_BIND_TYPE
SQL_DESC_COUNT
ヘッダ フィールド SQL_DESC_ROWS_PROCESSED_PTR はサポートされていません。
以下のテーブルは、Red Brick ODBC Driver でサポートされているレコード フィール
ドの一覧です。
20
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
記述子レコード フィールド
SQL_DESC_AUTO_UNIQUE_VALUE
SQL_DESC_BASE_COLUMN_NAME
SQL_DESC_BASE_TABLE_NAME
SQL_DESC_CASE_SENSITIVE
SQL_DESC_CATALOG_NAME
SQL_DESC_CONCISE_TYPE
SQL_DESC_DATA_PTR
SQL_DESC_DATETIME_INTERVAL_CODE
SQL_DESC_DISPLAY_SIZE
SQL_DESC_FIXED_PREC_SCALE
SQL_DESC_INDICATOR_PTR
SQL_DESC_LABEL
SQL_DESC_LENGTH
SQL_DESC_LITERAL_PREFIX
SQL_DESC_LITERAL_SUFFIX
SQL_DESC_LOCAL_TYPE_NAME
SQL_DESC_NAME
SQL_DESC_NULLABLE
SQL_DESC_NUM_PREC_RADIX
SQL_DESC_OCTET_LENGTH
SQL_DESC_OCTET_LENGTH_PTR
SQL_DESC_PARAMETER_TYPE
SQL_DESC_PRECISION
SQL_DESC_SCALE
SQL_DESC_SCHEMA_NAME
SQL_DESC_SEARCHABLE
SQL_DESC_TABLE_NAME
SQL_DESC_TYPE
SQL_DESC_TYPE_NAME
SQL_DESC_UNNAMED
SQL_DESC_UNSIGNED
SQL_DESC_UPDATABLE
診断フィールド
診断レコードには、ヘッダ レコードと状態レコードの 2 種類があります。ヘッダ レコ
ードには、関数の実行に関する一般情報が格納されるヘッダ フィールドがあります。状
態レコードには、特定のエラーまたは警告に関する情報が格納される状態フィールドが
あります。
関数の診断情報を取得するには、SQLGetDiagField または SQLGetDiagRec を使用でき
ます。SQLGetDiagField は、1 つの診断フィールドに情報を戻します。SQLGetDiagRec
は、1 つの診断レコードの複数のフィールドに情報を戻します。
第 2 章 Red Brick ODBC Driver の説明
21
以下のテーブルは、Red Brick ODBC Driver でサポートされている診断ヘッダ フィー
ルドの一覧です。
サポートされている診断ヘッダ フィールド
SQL_DIAG_DYNAMIC_FUNCTION
SQL_DIAG_DYNAMIC_FUNCTION_CODE
SQL_DIAG_NUMBER
SQL_DIAG_RETURNCODE (ドライバ マネージャ内に実装)
SQL_DIAG_ROW_COUNT
以下のテーブルは、Red Brick ODBC Driver でサポートされている診断状態フィールド
の一覧です。
サポートされている診断状態フィールド
SQL_DIAG_CLASS_ORIGIN
SQL_DIAG_COLUMN_NUMBER
SQL_DIAG_MESSAGE_TEXT
SQL_DIAG_NATIVE
SQL_DIAG_ROW_NUMBER
SQL_DIAG_SQLSTATE
SQL_DIAG_SERVER_NAME
SQL_DIAG_SUBCLASS_ORIGIN
SQL_DIAG_CONNECTION_NAME
SQLGetInfo 情報タイプ
以下のテーブルは、SQLGetInfo 関数でサポートされている情報タイプの一覧です。
情報タイプ
戻り値
SQL_ACCESSIBLE_TABLES
SQL_ACCESSIBLE_PROCEDURES
SQL_ACTIVE_CONNECTIONS (ODBC 3.0 では名
前を SQL_MAX_DRIVER_CONNECTIONS に変更)
SQL_ACTIVE_ENVIRONMENTS
″N″
″N″
0
SQL_ACTIVE_STATEMENTS (ODBC 3.0 では名前
を SQL_MAX_CONCURRENT_ACTIVITES に変更)
22
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
SQLUSMALLINT の値は、Red
Brick Driver でサポートされてい
るアクティブな環境の最大数を表
します。限定されていない場合は
0 を戻します。
1
情報タイプ
戻り値
SQL_AGGREGATE_FUNCTIONS
SQL_AF_ALL、SQL_AF_AVG、
SQL_AF_COUNT、
SQL_AF_DISTINCT、
SQL_AF_MAX、SQL_AF_MIN、
SQL_AF_SUM
0
SQL_AM_STATEMENT
0
0
0
0
″N″
″″
″″
0
SQL_CB_NULL
″″
″Y″
0
0
0
SQL_CVT_INTEGER、
SQL_CVT_DECIMAL、
SQL_CVT_REAL、
SQL_CVT_TIME、
SQL_CVT_DATE、
SQL_CVT_FLOAT、または
SQL_CVT_TIMESTAMP
SQL_CVT_CHAR、
SQL_CVT_DATE
SQL_CVT_CHAR、
SQL_CVT_INTEGER、
SQL_CVT_DECIMAL、
SQL_CVT_REAL、または
SQL_CVT_FLOAT
SQL_CVT_CHAR、
SQL_CVT_FLOAT、
SQL_CVT_INTEGER、
SQL_CVT_DECIMAL、または
SQL_CVT_REAL
SQL_ALTER_DOMAIN
SQL_ASYNC_MODE
SQL_BATCH_ROW_COUNT
SQL_BATCH_SUPPORT
SQL_BOOKMARK_PERSISTENCE
SQL_CATALOG_LOCATION
SQL_CATALOG_NAME
SQL_CATALOG_NAME_SEPARATOR
SQL_CATALOG_TERM
SQL_CATALOG_USAGE
SQL_CONCAT_NULL_BEHAVIOR
SQL_COLLATION_SEQ
SQL_COLUMN_ALIAS
SQL_CONVERT_BIGINT
SQL_CONVERT_BINARY
SQL_CONVERT_BIT
SQL_CONVERT_CHAR
SQL_CONVERT_DATE
SQL_CONVERT_DECIMAL
SQL_CONVERT_DOUBLE
第 2 章 Red Brick ODBC Driver の説明
23
情報タイプ
戻り値
SQL_CONVERT_FLOAT
SQL_CVT_CHAR、
SQL_CVT_INTEGER、
SQL_CVT_DECIMAL、
SQL_CVT_REAL、または
SQL_CVT_FLOAT
SQL_FN_CVT_CONVERT
SQL_CVT_CHAR、
SQL_CVT_INTEGER、
SQL_CVT_DECIMAL、
SQL_CVT_REAL、または
SQL_CVT_FLOAT
0
0
0
0
SQL_CVT_CHAR、
SQL_CVT_INTEGER、
SQL_CVT_DECIMAL、
SQL_CVT_REAL、または
SQL_CVT_FLOAT
SQL_CVT_CHAR、
SQL_CVT_DECIMAL、
SQL_CVT_FLOAT、
SQL_CVT_INTEGER、または
SQL_CVT_REAL
SQL_CVT_CHAR、
SQL_CVT_INTEGER、
SQL_CVT_DECIMAL、
SQL_CVT_REAL、または
SQL_CVT_FLOAT
SQL_CVT_CHAR または
SQL_CVT_TIME
SQL_CVT_CHAR、
SQL_CVT_TIME、または
SQL_CVT_DATE
SQL_CVT_CHAR、
SQL_CVT_INTEGER、
SQL_CVT_DECIMAL、
SQL_CVT_REAL、または
SQL_CVT_FLOAT
0
SQL_CONVERT_FUNCTIONS
SQL_CONVERT_INTEGER
SQL_CONVERT_INTERVAL_DAY_TIME
SQL_CONVERT_INTERVAL_YEAR_MONTH
SQL_CONVERT_LONGVARBINARY
SQL_CONVERT_LONGVARCHAR
SQL_CONVERT_NUMERIC
SQL_CONVERT_REAL
SQL_CONVERT_SMALLINT
SQL_CONVERT_TIME
SQL_CONVERT_TIMESTAMP
SQL_CONVERT_TINYINT
SQL_CONVERT_VARBINARY
24
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
情報タイプ
戻り値
SQL_CONVERT_VARCHAR
SQL_CVT_INTEGER、
SQL_CVT_DECIMAL、
SQL_CVT_REAL、
SQL_CVT_FLOAT、
SQL_CVT_TIMESTAMP
SQL_CN_DIFFERENT
0
0
0
0
0
SQL_CT_CREATE_TABLE
0
SQL_CV_CREATE_VIEW
SQL_CB_DELETE
SQL_CB_DELETE
SQL_SENSITIVE、
SQL_INSENSITIVE、または
SQL_UNSPECIFIED
ログイン時に入力
″N″
ログイン時に入力
0
“IBM Red Brick Warehouse“
現在のサーバのバージョン
SQL_DI_CREATE_INDEX または
SQL_DI_DROP_INDEX
0
″Y″
ドライバ マネージャのバージョン
を表す文字列。
ドライバ マネージャが値を処理し
ます。
SQLUINTEGER 値。ドライバの記
述子ハンドル。ドライバ マネージ
ャ記述子ハンドルにより特定され
ます。
ドライバ マネージャが値を処理し
ます。
ドライバ マネージャが値を処理し
ます。
ドライバ マネージャが値を処理し
ます。
SQL_CORRELATION_NAME
SQL_CREATE_ASSERTION
SQL_CREATE_CHARACTER_SET
SQL_CREATE_COLLATION
SQL_CREATE_DOMAIN
SQL_CREATE_SCHEMA
SQL_CREATE_TABLE
SQL_CREATE_TRANSLATION
SQL_CREATE_VIEW
SQL_CURSOR_COMMIT_BEHAVIOR
SQL_CURSOR_ROLLBACK_BEHAVIOR
SQL_CURSOR_SENSITIVITY
SQL_DATA_SOURCE_NAME
SQL_DATA_SOURCE_READ_ONLY
SQL_DATABASE_NAME
SQL_DATETIME_LITERALS
SQL_DBMS_NAME
SQL_DBMS_VER
SQL_DDL_INDEX
SQL_DEFAULT_TXN_ISOLATION
SQL_DESCRIBE_PARAMETER
SQL_DM_VER
SQL_DRIVER_HDBC
SQL_DRIVER_HDESC
SQL_DRIVER_HENV
SQL_DRIVER_HLIB
SQL_DRIVER_HSTMT
第 2 章 Red Brick ODBC Driver の説明
25
情報タイプ
戻り値
″RB16ODBC.DLL″、
″RB32ODBC.DLL″ または
″RBODBC″
SQL_DRIVER_VER
現在のドライバのバージョン
SQL_DROP_ASSERTION
0
SQL_DROP_CHARACTER_SET
0
SQL_DROP_COLLATION
0
SQL_DROP_DOMAIN
0
SQL_DROP_SCHEMA
0
SQL_DROP_TABLE
SQL_DT_DROP_TABLE
SQL_DROP_TRANSLATION
0
SQL_DROP_VIEW
SQL_DV_DROP_VIEW
SQL_DYNAMIC_CURSOR_ATTRIBUTES1
0
SQL_DYNAMIC_CURSOR_ATTRIBUTES2
0
SQL_EXPRESSIONS_IN_ORDERBY
″N″
SQL_FETCH_DIRECTION
SQL_FD_FETCH_NEXT [ODBC
3.0 で廃止予定]
SQL_FILE_USAGE
SQL_FILE_NOT_SUPPORTED
SQL_FORWARD_ONLY_CURSOR_ -ATTRIBUTES1 0
SQL_FORWARD_ONLY_CURSOR_ -ATTRIBUTES2 0
SQL_GETDATA_EXTENSIONS
SQL_GD_ANY_COLUMN または
SQL_GD_ANY_ORDER
SQL_GROUP_BY
SQL_GB_GROUP_BY_
CONTAINS_SELECT
SQL_IDENTIFIER_CASE
SQL_IC_UPPER
SQL_IDENTIFIER_QUOTE_CHAR
″″″
SQL_INDEX_KEYWORDS
SQL_IK_NONE
SQL_INFO_SCHEMA_VIEWS
0
SQL_INSERT_STATEMENT
SQL_IS_INSERT_LITERALS また
は SQL_IS_SELECT_INTO
SQL_INTEGRITY
″N″
SQL_KEYSET_CURSOR_ATTRIBUTES1
0
SQL_KEYSET_CURSOR_ATTRIBUTES2
0
SQL_KEYWORDS
予約されたすべてのキーワードの
一覧
SQL_LIKE_ESCAPE_CLAUSE
″N″
SQL_MAX_ASYNC_CONCURRENT_
1
-STATEMENTS
SQL_MAX_BINARY_LITERAL_LEN
0
SQL_MAX_CATALOG_NAME_LEN
0
SQL_MAX_CHAR_LITERAL_LEN
1024
SQL_MAX_COLUMN_NAME_LEN
128
SQL_MAX_COLUMNS_IN_GROUP_BY
7280
SQL_DRIVER_NAME
26
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
情報タイプ
戻り値
SQL_MAX_COLUMNS_IN_INDEX
SQL_MAX_COLUMNS_IN_ORDER_BY
SQL_MAX_COLUMNS_IN_SELECT
SQL_MAX_COLUMNS_IN_TABLE
SQL_MAX_CONCURRENT_ACTIVITES
SQL_MAX_CURSOR_NAME_LEN
SQL_MAX_DRIVER_CONNECTIONS
SQL_MAX_IDENTIFIER_LEN
SQL_MAX_INDEX_SIZE
SQL_MAX_OWNER_NAME_LEN (ODBC 3.0 では
名前を SQL_MAX_SCHEMA_NAME_LEN に変更)
SQL_MAX_PROCEDURE_NAME_LEN
SQL_MAX_QUALIFIER_NAME_LEN (ODBC 3.0 で
は名前を SQL_MAX_CATALOG_NAME_LEN に変
更)
SQL_MAX_ROW_SIZE_INCLUDES_LONG
SQL_MAX_ROW_SIZE
SQL_MAX_SCHEMA_NAME_LEN
SQL_MAX_STATEMENT_LEN
SQL_MAX_TABLE_NAME_LEN
SQL_MAX_TABLES_IN_SELECT
SQL_MAX_USER_NAME_LEN
SQL_MULT_RESULT_SETS
SQL_MULTIPLE_ACTIVE_TXN
SQL_NEED_LONG_DATA_LEN
SQL_NON_NULLABLE_COLUMNS
SQL_NULL_COLLATION
SQL_NUMERIC_FUNCTIONS
0
7280
7280
7280
1
0
0
128
0
0
SQL_ODBC_API_CONFORMANCE
SQL_ODBC_INTERFACE_CONFORMANCE
SQL_ODBC_SAG_CLI_CONFORMANCE
SQL_ODBC_SQL_CONFORMANCE
SQL_ODBC_SQL_OPT_IEF (ODBC 3.0 では名前を
SQL_INTEGRITY に変更)
SQL_ODBC_VER
0
0
″N″
0
0
0
128
0
128
″N″
″Y″
″N″
SQL_NNC_NON_NULL
SQL_NC_HIGH
SQL_FN_NUM_ABS、
SQL_FN_NUM_CEILING、
SQL_FN_NUM_FLOOR、または
SQL_FN_NUM_SIGN
SQL_OAC_LEVEL1 [ODBC 3.0 で
廃止予定]
SQL_OIC_CORE
SQL_OSCC_COMPLIANT
SQL_OSC_MINIMUM [ODBC 3.0
で廃止予定]
″N″
ドライバ マネージャが値を処理し
ます。
第 2 章 Red Brick ODBC Driver の説明
27
情報タイプ
戻り値
SQL_OJ_CAPABILITIES
SQL_OJ_LEFT、SQL_OJ_RIGHT、
SQL_OJ_FULL、SQL_OJ_NESTED、
SQL_OJ_INNER、SQL_OJ_ALL_
COMPARISON_OPS
″N″
″F″
″″
SQL_ORDER_BY_COLUMNS_IN_SELECT
SQL_OUTER_JOINS
SQL_OWNER_TERM (ODBC 3.0 では名前を
SQL_SCHEMA_TERM に変更)
SQL_OWNER_USAGE (ODBC 3.0 では名前を
SQL_SCHEMA_USAGE に変更)
SQL_PARAM_ARRAY_ROW_COUNTS
SQL_PARAM_ARRAY_SELECTS
SQL_PROCEDURE_TERM
SQL_PROCEDURES
SQL_QUALIFIER_NAME_SEPARATOR (ODBC 3.0
では名前を SQL_CATALOG_NAME_SEPARATOR
に変更)
SQL_QUALIFIER_LOCATION (ODBC 3.0 では名前
を SQL_CATALOG_LOCATION に変更)
SQL_QUALIFIER_TERM (ODBC 3.0 では名前を
SQL_CATALOG_TERM に変更)
SQL_QUALIFIER_USAGE (ODBC 3.0 では名前を
SQL_CATALOG_USAGE に変更)
SQL_QUOTED_IDENTIFIER_CASE
SQL_ROW_UPDATES
SQL_SCHEMA_TERM
SQL_SCHEMA_USAGE
SQL_SCROLL_CONCURRENCY
SQL_SCROLL_OPTIONS
SQL_SEARCH_PATTERN_ESCAPE
SQL_SERVER_NAME
SQL_SPECIAL_CHARACTERS
SQL_SQL_CONFORMANCE
SQL_SQL92_DATETIME_FUNCTIONS
SQL_SQL92_FOREIGN_KEY_UPDATE_RULE
SQL_SQL92_GRANT
28
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
0
0
SQL_PAS_NO_SELECT
″″
″N″
″″
0
″″
0
SQL_IC_SENSITIVE
″N″
″″
0
SQL_SCCO_READ_ONLY [ODBC
3.0 で廃止予定]
SQL_SO_FORWARD_ONLY
"¥"
ログイン時に入力
″″
SQL_OIC_CORE
SQL_SDF_CURRENT_DATE、
SQL_SDF_CURRENT_TIME、
SQL_SDF_CURRENT_
TIMESTAMP
0
SQL_SG_DELETE_TABLE、
SQL_SG_INSERT_TABLE、
SQL_SG_SELECT_TABLE、
SQL_SG_UPDATE_TABLE
情報タイプ
戻り値
SQL_SQL92_FOREIGN_KEY_DELETE_RULE
SQL_SFKD_CASCADE、
SQL_SFKD_NO_ACTION
0
SQL_SP_BETWEEN、
SQL_SP_COMPARISON、
SQL_SP_EXISTS、SQL_SP_IN、
SQL_SP_ISNOTNULL、
SQL_SP_ISNULL、SQL_SP_LIKE、
SQL_SP_QUANTIFIED_
COMPARISON、SQL_SP_UNIQUE
SQL_SRJO_CROSS_JOIN、
SQL_SRJO_EXCEPT_JOIN、
SQL_SRJO_FULL_OUTER、
SQL_SRJO_FULL_OUTER_JOIN、
SQL_SRJO_INNER_JOIN、
SQL_SRJO_INTERSECT_JOIN、
SQL_SRJO_LEFT_OUTER_JOIN、
SQL_SRJO_NATURAL_JOIN、
SQL_SRJO_RIGHT_OUTER_JOIN、
SQL_SRJO_UNION_JOIN
SQL_SR_DELETE_TABLE、
SQL_SR_INSERT_TABLE、
SQL_SR_SELECT_TABLE、
SQL_SR_UPDATE_TABLE
SQL_SRVC_VALUE_
EXPRESSION、
SQL_SRVC_NULL、
SQL_SRVC_DEFAULT、
SQL_SRVC_ROW_SUBQUERY
SQL_SSF_CONVERT、
SQL_SSF_LOWER、
SQL_SSF_UPPER、
SQL_SSF_SUBSTRING、
SQL_SSF_TRIM_BOTH、
SQL_SSF_TRIM_LEADING、
SQL_SSF_TRIM_TRAILING
SQL_SVE_CASE、
SQL_SVE_COALESCE、
SQL_SVE_NULLIF
SQL_SCC_ISO92_CLI
0
SQL_SQL92_NUMERIC_VALUE_FUNCTIONS
SQL_SQL92_PREDICATES
SQL_SQL92_RELATIONAL_JOIN_OPERATORS
SQL_SQL92_REVOKE
SQL_SQL92_ROW_VALUE_CONSTRUCTOR
SQL_SQL92_STRING_FUNCTIONS
SQL_SQL92_VALUE_EXPRESSIONS
SQL_STANDARD_CLI_CONFORMANCE
SQL_STATIC_CURSOR_ATTRIBUTES1
第 2 章 Red Brick ODBC Driver の説明
29
情報タイプ
戻り値
SQL_STATIC_CURSOR_ATTRIBUTES2
SQL_STRING_FUNCTIONS
0
SQL_FN_STR_CONCAT、
SQL_FN_STR_LCASE、
SQL_FN_STR_LEFT、
SQL_FN_STR_LOCATE_2、
SQL_FN_STR_LTRIM、
SQL_FN_STR_RTRIM、
SQL_FN_STR_SUBSTRING、また
は SQL_FN_STR_UCASE
SQL_SQ_CORRELATED_
SUBQUERIES、
SQL_SQ_COMPARISON、
SQL_SQ_EXISTS、SQL_SQ_IN、
SQL_SQ_QUANTIFIED
SQL_FN_SYS_IFNULL または
SQL_FN_SYS_USER
″Table″
0
0
SQL_FN_TD_CURDATE、
SQL_FN_TD_CURTIME、
SQL_FN_TD_DAYOFMONTH、
SQL_FN_TD_DAYOFWEEK、
SQL_FN_TD_DAYOFYEAR、
SQL_FN_TD_HOUR、
SQL_FN_TD_MINUTE、
SQL_FN_TD_MONTH、
SQL_FN_TD_NOW、
SQL_FN_TD_QUARTER、
SQL_FN_TD_SECOND、
SQL_FN_TD_WEEK、または
SQL_FN_TD_YEAR
SQL_SUBQUERIES
SQL_SYSTEM_FUNCTIONS
SQL_TABLE_TERM
SQL_TIMEDATE_ADD_INTERVALS
SQL_TIMEDATE_DIFF_INTERVALS
SQL_TIMEDATE_FUNCTIONS
30
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
情報タイプ
戻り値
SQL_TXN_CAPABLE
SQL_TC_NONE または
TXN_CAPABLE_ALL。
SQL_TXN_CAPABLE が ODBC
アプリケーション名に設定されて
いる場合は TXN_CAPABLE_ALL
です。 SQL_TXN_CAPABLE は、
Windows の場合はファイル
rbodbc32.ini の中で指定します。
UNIX の場合は環境変数として指
定します。
0
SQL_U_UNION、
SQL_U_UNION_ALL
ログイン時に入力
″″
SQL_TXN_ISOLATION_OPTION
SQL_UNION
SQL_USER_NAME
SQL_XOPEN_CLI_YEAR
コア SQL 文法
Red Brick ODBC Driver では、ODBC コア SQL 文法がサポートされています。ただ
し、以下の文法を除きます。
コア SQL 文法
サポートされていないドライバ オプション
ALTER TABLE
Red Brick SQL では、アプリケーションで列の追加を行う場合
に、DEFAULT 句が必要です。Red Brick ODBC Driver 文法に
は、この句は含まれていません。
UNIQUE および ASC/DESC
位置指定削除 (WHERE CURRENT OF カーソル名)
CASCADE | RESTRICT
REFERENCES()
CASCADE | RESTRICT
FOR UPDATE OF
位置指定更新 (WHERE CURRENT OF カーソル名)
CREATE INDEX
DELETE
DROP VIEW
GRANT
REVOKE
SELECT
UPDATE
第 2 章 Red Brick ODBC Driver の説明
31
エスケープ シーケンス
Red Brick ODBC Driver では、以下の ODBC エスケープ シーケンスがサポートされて
います。
v 日付、時刻、およびタイムスタンプ エスケープ シーケンス
v アウター ジョイン エスケープ シーケンス
v スカラ関数エスケープ シーケンス
スカラ関数
ODBC で規定されているスカラ関数は以下のとおりです。
v 文字列関数
v 数値関数
v 日付/時刻関数
v システム関数
v データ型変換関数
このセクションでは、各タイプの関数下で Red Brick ODBC Driver でサポートされて
いる SQL-92 スカラ関数について説明します。
文字列関数
以下のテーブルは、Red Brick ODBC Driver でサポートされている ODBC/SQL-92 文字
列関数の一覧です。どの場合にも、ドライバは、このテーブルの第 2 列に示されている
同等の Red Brick 関数を呼び出して ODBC 関数を実行します。
ODBC/SQL-92 関数
同等の Red Brick 関数
CONCAT(s1, s2)
LCASE(s)
LEFT
LENGTH(s)
LOCATE(s1, s2)*
LTRIM(s)
POSITION(s1, s2)
RTRIM(s)
SUBSTRING(s, st, ln)
UCASE(s)
CONCAT(s1, s2)
LOWER(s)
SUBSTR(arg1, 1, arg2)
LENGTH(RTRIM(s))
POSITION(s1, s2)
LTRIM(s)
DEC(POSITION(s1, s2))
RTRIM(s)
SUBSTR(s, st, ln)
UPPER(s)
* LOCATE の 3 パラメータ バージョンはサポートされていません。
SQLGetInfo(SQL_STRING_FUNCTIONS) は SQL_FN_STR_LOCATE ではなく
SQL_FN_STR_LOCATE_2 を戻します。
32
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
数値関数
以下のテーブルは、Red Brick ODBC Driver でサポートされている ODBC/SQL-92 数値
関数の一覧です。どの場合にも、ドライバは、このテーブルの第 2 列に示されている同
等の Red Brick 関数を呼び出して ODBC 関数を実行します。
ODBC 関数
同等の Red Brick 関数
ABS(n)
CEILING(n)
EXP
FLOOR(n)
LOG
LOG10(x)
POWER(x,y)
SIGN(n)
SQRT
ABS(n)
CEIL(n)
EXP
FLOOR(n)
LN
LN(x)/LN(10)
EXP(y * LN(x))
SIGN(n)
SQRT
日付/時刻関数
以下のテーブルは、Red Brick ODBC Driver でサポートされている ODBC/SQL-92 日
付/時刻関数の一覧です。どの場合にも、ドライバは、このテーブルの第 2 列に示され
ている同等の Red Brick 関数を呼び出して ODBC 関数を実行します。
ODBC 関数
同等の Red Brick 関数
CURDATE
CURTIME
CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
DAYNAME(d)
DAYOFMONTH
DAYOFWEEK
DAYOFYEAR
HOUR
MINUTE
MONTH
MONTHNAME
NOW
QUARTER
SECOND
TIMESTAMPADD
TIMESTAMPDIFF
WEEK
YEAR
CURRENT_DATE
CURRENT_TIME
CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
DATENAME(dw, datetime_expression)
EXTRACT(DAY FROM datetime_expression)
EXTRACT(WEEKDAY FROM datetime_expression)
EXTRACT(DAYOFYEAR FROM datetime_expression)
EXTRACT(HOUR FROM datetime_expression)
EXTRACT(MINUTE FROM datetime_expression)
EXTRACT(MONTH FROM datetime_expression)
DATENAME(mm, datetime_expression)
CURRENT_TIMESTAMP(6)
EXTRACT(QUARTER FROM datetime_expression)
EXTRACT(SECOND FROM ) datetime_expression
DATEADD
DATEDIFF
EXTRACT(WEEK FROM datetime_expression)
EXTRACT(YEAR FROM datetime_expression)
第 2 章 Red Brick ODBC Driver の説明
33
システム関数
以下のテーブルは、Red Brick ODBC Driver でサポートされている ODBC/SQL-92 シス
テム関数の一覧です。どの場合にも、ドライバは、このテーブルの第 2 列に示されてい
る同等の Red Brick 関数を呼び出して ODBC 関数を実行します。
34
ODBC 関数
同等の Red Brick 関数
IFNULL(exp, val)
USER( )
IFNULL(exp, val)
CURRENT_USER
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
データ型変換関数
以下のテーブルは、Red Brick ODBC Driver でサポートされている ODBC/SQL-92 デー
タ型変換関数の一覧です。どの場合にも、ドライバは、このテーブルの第 2 列に示され
ている同等の Red Brick 関数を呼び出して ODBC 関数を実行します。
ODBC 関数とタイプ
同等の Red Brick 関数
CONVERT(value,
CONVERT(value,
CONVERT(value,
CONVERT(value,
CONVERT(value,
CONVERT(value,
CONVERT(value,
CONVERT(value,
STRING(value)
DATE(value)
DEC(expression)
FLOAT(value)
INT(value)
REAL(value)
TIME(value)
TIMESTAMP(value)
SQL_CHAR)
SQL_DATE)*
SQL_DECIMAL)
SQL_FLOAT)
SQL_INTEGER)
SQL_REAL)
SQL_TIME)*
SQL_TIMESTAMP)*
* CONVERT 関数は ODBC 3.x のデータ型 SQL_TYPE_DATE、 SQL_TYPE_TIME、
および SQL_TYPE_TIMESTAMP もサポートしています。
第 2 章 Red Brick ODBC Driver の説明
35
ODBC データ型
以下のテーブルは、Red Brick ODBC Driver によって実行される Red Brick のデータ型
と Microsoft のデータ型のマッピングの一覧です。SQLGetData または SQLBindCol の
呼び出し時にユーザが別のデータ型変換規則を指定しなかった場合、Red Brick ODBC
Driver では、Red Brick のデータ型がこのテーブルに従って Red Brick ODBC Driver
のデータ型に変換されます。
36
デフォルトの ODBC C
データ型
Red Brick データ型
ODBC SQL データ型
文字 (CHAR) 型
日付 (DATE) 型
実数 (DOUBLE) 型、実数
(FLOAT) 型
整数 (INTEGER) 型
10 進数 (NUMERIC) 型、
10 進数 (DECIMAL) 型
小桁実数 (REAL) 型
シリアル (SERIAL) 型
小桁整数 (SMALLINT) 型
時刻 (TIME) 型
タイムスタンプ
(TIMESTAMP) 型
小桁整数 (TINYINT) 型
可変長文字 (VARCHAR) 型
SQL_CHAR
SQL_C_CHAR
SQL_DATE
SQL_C_DATE
SQL_DOUBLE、SQL_FLOAT SQL_C_DOUBLE
SQL_INTEGER
SQL_DECIMAL、
SQL_NUMERIC
SQL_REAL
SQL_INTEGER
SQL_SMALLINT
SQL_TIME
SQL_TIMESTAMP
SQL_C_FLOAT
SQL_C_SLONG
SQL_C_SSHORT
SQL_C_TIME
SQL_C_TIMESTAMP
SQL_TINYINT
SQL_VARCHAR
SQL_C_STINYINT
SQL_C_VARCHAR
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
SQL_C_SLONG
SQL_C_CHAR
第 3 章 UNIX でのカスタム クライアント アプリケーション
の作成
この章では、UNIX で Red Brick ODBC lib ソフトウェア開発キット (SDK) および
DataDirect Technologies Connect ODBC SDK を使用して、ODBC ベースのカスタム ク
ライアント アプリケーションを作成する方法について説明します。作成したクライアン
ト アプリケーションを使用して、IBM Red Brick Warehouse データベースにアクセス
できます。このアプリケーションは、UNIX 上でも Windows 上でも実行できます。
以下の場合は、DataDirect Technologies Connect ODBC SDK を使用します。
v IBM Red Brick Warehouse に接続するカスタム ODBC アプリケーションを開発する
場合。
カスタム アプリケーションと Red Brick ODBC Driver を組み合わせて使用する必要
があります。
v UNIX ベースのアプリケーションを作成する場合。
DataDirect Technologies Connect ODBC SDK の詳細については、DataDirect マニュアル
を参照してください。
重要: Red Brick では、UNIX の 16 ビット プラットフォームはサポートされていませ
ん。
Windows ベースのアプリケーションを作成するには、Microsoft ODBC SDK を使用しま
す。この SDK、および Red Brick ODBC Driver とインタフェースをとるアプリケーシ
ョンの開発方法の詳細については、Microsoft のマニュアルを参照してください。
Red Brick ODBClib SDK に付属している UNIX プラットフォーム用のサンプル ODBC
プログラムについては、49 ページの『ODBC サンプル プログラム』を参照してくださ
い。
© Copyright IBM Corp. 1996, 2004
37
Red Brick ODBClib SDK の使用
このセクションでは、Red Brick ODBClib SDK を使用して、カスタム ODBC プログラ
ムをコンパイルおよびリンクする方法について説明します。
Red Brick ODBClib SDK は、ODBC プログラムへリンクするため複数のライブラリを
使用します。 ODBC レベル準拠については、 9 ページの『第 2 章 Red Brick ODBC
Driver の説明』を参照してください。
C コンパイラ
Red Brick ODBClib SDK でサポートされている C コンパイラは以下のとおりです。
プラットフォーム
コンパイラ
Digital AlphaServer
Compaq C V6.3-129 (dtk) on Digital UNIX V4.0F (Rev. 1229)
Compiler Driver V6.3-126 (dtk) cc Driver
Sun WorkShop 6 update 2 C 5.3 Patch 111679-08
Sun SPARC ベース
のシステム 64 ビッ
ト
HP 9000
HP IPF
i686 ベースの Linux
システム
AIX 64
38
HP92453-01 A.11.01.00 HP C コンパイラ
HP ANSI C++/C B3910B A.05.36
gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
VisualAge C++ Professional/C for AIX Compiler、バージョン 5
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
ODBC ドライバ ファイル
redbrick_dir ディレクトリには、Red Brick のソフトウェア ファイルがすべて格納さ
れています。以下のテーブルは、DataDirect Connect ODBC Driver Manager および Red
Brick ODBC Driver でサポートされている各プラットフォームにおいて、これらのドラ
イバで使用されるファイルの一覧です。サブディレクトリ lib におけるサフィックス
xx は、各プラットフォームに対応するファイル拡張子を表します。
場所
lib
lib
lib
lib
lib
サブディレクトリ
サブディレクトリ
サブディレクトリ
サブディレクトリ
サブディレクトリ
ファイル名
ファイルの内容
libodbc.xx
libodbcinst.xx
libivmback.xx
libivmfront.xx
vscnctdlg.so.1
Connect ODBC Driver Manager
Connect ODBC インストーラ lib
SQLDriver Connect Motif lib
SQLDriver Connect Motif lib
SQLDriver Connect Motif lib (SunOS
のみ)
Connect ODBC トレース lib
Connect ODBC カーソル lib (SunOS
のみ)
Red Brick ODBC Driver
スレッド セーフ ドライバ (-thr) は
Linux ではサポートされていませ
ん。
Connect ODBC エラー メッセージ
lib サブディレクトリ
lib サブディレクトリ
odbctrac.xx
odbccurs.so.1
lib サブディレクトリ
rbodbcdrv.xx
rbodbcdrv-thr.xx
redbrick_dir/
messages/default/
redbrick_dir/locale/
odbc.m
*.nls
Red Brick ODBC Driver のロケール
ファイル
重要: 64 ビットのプラットフォームを使用している場合でも、32 ビット ODBC Driver
を使用してください。
第 3 章 UNIX でのカスタム クライアント アプリケーションの作成
39
ODBClib ライブラリとヘッダ ファイル
以下のテーブルは、ディレクトリ redbrick_dir に格納されている ODBClib のライブ
ラリ ファイルとヘッダ ファイルの一覧です。サブディレクトリ lib (または lib32)
における拡張子 xx は、各プラットフォームに対応するファイル拡張子を表します。
lib32 ディレクトリには、ODBClib ファイルの 32 ビット バージョンが格納されま
す。サフィックス -thr は、各ライブラリ ファイルのスレッドセーフ バージョンを表
します。
場所
ファイル名
ファイルの内容
lib サブディレクト
リ
lib サブディレクト
リ
librbodbc.a
librbodbc-thr.a
librbodbc.xx
librbodbc-thr.xx
lib サブディレクト
リ
include サブディレ
クトリ
librbodbcshared.a
librbodbcshared-thr.a
rbsql.h
include サブディレ
クトリ
rbsqlext.h
Red Brick ODBC lib 静的ライブ
ラリ
非 AIX プラットフォーム対応
Red Brick ODBClib 共有ライブラ
リ
AIX 専用 Red Brick ODBClib 共
有ライブラリ
すべての Red Brick ODBC Driver
関数が含まれている Red Brick
ヘッダ ファイル
Red Brick ヘッダ ファイル
Red Brick ODBClib によるコンパイルとリンク
このセクションでは、Red Brick ODBC lib によるアプリケーション作成に必要なライ
ブラリとヘッダ ファイルについて説明します。 IBM では共有ライブラリの使用を推奨
しています。共有ライブラリを使用する利点は、実行可能ファイルのサイズを小さくで
きること、リンクを高速化できること、および、将来新しいバージョンのライブラリを
使用するときにアプリケーションを再リンクする必要がないことです。さらに、静的ラ
イブラリは実行時には利用可能である必要はありません。
40
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
プラットフォーム固有の標準ライブラリ
以下のテーブルは、アプリケーションにリンクさせるプラットフォーム別標準ライブラ
リの一覧です。
プラットフォーム
ライブラリ
HP にインストールされている Tru64 UNIX
HP-UX-64 がインストールされている HP 9000
HP-UX 11i がインストールされている HP Itanium
コンピュータ
AIX64 がインストールされている IBM RISC
System/6000
i686 ベースの Linux システム
Sun SPARC ベースのシステム (Solaris-64)
libpthreads.a, libm.a, libdb.a
libm.a
libm.a
libm.a
libnsl.a, libm.a
libsocket.a, libnsl.a, libm.a
スレッド セーフ ODBClib SDK
Linux を除くすべてのプラットフォームの UNIX ODBClib SDK はスレッド セーフで
す。次のスレッド セーフ ライブラリは、lib (または lib32) ディレクトリにインスト
ールされています。
オペレーティング システム 静的ライブラリ
動的ライブラリ
Solaris 32 ビットおよび 64
ビット
AIX 64 ビット
AIX 32 ビット
HP-UX 64 ビット (Itanium)
HP-UX 64 ビット
(PA-RISC)
HP-UX 32 ビット
(PA-RISC)
HP Tru64 UNIX
librbodbc-thr.so
librbodbc-thr.a
librbodbc-thr.so
librbodbcshared-thr.a
librbodbc-thr.so
librbodbc-thr.sl
librbodbc-thr.so
librbodbc-thr.so
これらのライブラリを使用して、カスタム クライアント アプリケーションを作成でき
ます。スレッド セーフ アプリケーションをコンパイルおよびリンクするには、コンパ
イルとリンク に示されているファイル名を、適切なファイル名に置き換えてください。
コンパイルとリンク
このセクションでは、ODBC の静的ライブラリとヘッダ ファイルを使用してファイル
をコンパイルし、リンクするためのプラットフォーム別の定義およびサンプル コマンド
を説明します。サンプル コマンドは以下のように定義されています。
第 3 章 UNIX でのカスタム クライアント アプリケーションの作成
41
# Directory where Red Brick ODBClib SDK is installed
REDBRICK_DIR=/redbrick_dir
#These compile examples assume the application C
#code is in ’rb_client.c’ and executable will be ’rb_client’
Digital AlphaServer (Tru64 UNIX):
定義
CFLAGS=-I$(REDBRICK_DIR)/include -DUNIX
# Define libraries to link
LIBS=$(REDBRICK_DIR)/lib/librbodbc.a -lpthreads -lm /usr/lib/libdb.a
#If you want to use Red Brick ODBClib shared library
#define LIBS as follows
#LIBS=$(REDBRICK_DIR)/lib/librbodbc.so -lpthreads -lm
Tru64 UNIX プラットフォームの静的および動的リンク アプリケーションのコンパイル
では -DUNIX スイッチが必要ですが、その他の UNIX プラットフォームではこれはオ
プションです。静的アプリケーションを Red Brick ODBClib にリンクするときに、
libdb.a ライブラリが必要です。
サンプル コマンド
$ cc $(CFLAGS) -I$(REDBRICK_DIR)/include -c rb_client.c
$ cc $(CFLAGS) -o rb_client rb_client.o $(LIBS)
HP 9000 (HP-UX 32 ビット コンパイラ):
定義
CFLAGS=-Aa +z -I$(REDBRICK_DIR)/include
# Define libraries to link
LIBS=$(REDBRICK_DIR)/lib32/librbodbc.a -lm -lBSD
#If you want to use Red Brick ODBClib shared library
#define LIBS as follows
#LIBS=$(REDBRICK_DIR)/lib32/librbodbc.so -lm
サンプル コマンド
$ cc $(CFLAGS) -I$(REDBRICK_DIR)/include -c rb_client.c
$ cc $(CFLAGS) -o rb_client rb_client.o $(LIBS)
HP 9000 (HP-UX 64 ビット コンパイラ):
定義
CFLAGS=-Aa +DD64 -I$(REDBRICK_DIR)/include
# Define libraries to link
LIBS=$(REDBRICK_DIR)/lib/librbodbc.a -lm
42
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
#If you want to use Red Brick ODBClib shared library
#define LIBS as follows
#LIBS=$(REDBRICK_DIR)/lib/librbodbc.sl -lm
サンプル コマンド
$ cc $(CFLAGS) -I$(REDBRICK_DIR)/include -c rb_client.c
$ cc $(CFLAGS) -o rb_client rb_client.o $(LIBS)
HP Itanium (HP aC++/C IPF コンパイラ):
定義
CFLAGS=-Ae +DD64 +z+e -I$(REDBRICK_DIR)/include
# Define libraries to link
LIBS=$(REDBRICK_DIR)/lib/librbodbc.a -lm
#If you want to use Red Brick ODBClib shared library
#define LIBS as follows
#LIBS=$(REDBRICK_DIR)/lib/librbodbc.so -lm
サンプル コマンド
$ cc $(CFLAGS) -I$(REDBRICK_DIR)/include -c rb_client.c
$ cc $(CFLAGS) -o rb_client rb_client.o $(LIBS)
IBM RISC System/6000 (32 ビット コンパイラ):
定義
CFLAGS=-I$(REDBRICK_DIR)/include
# Define libraries to link
LIBS=$(REDBRICK_DIR)/lib32/librbodbc.a -lm
#If you want to use Red Brick ODBClib shared library
#define LIBS as follows
#LIBS=$(REDBRICK_DIR)/lib32/librbodbcshared.a -lm
サンプル コマンド
$ xlc $(CFLAGS) -I$(REDBRICK_DIR)/include -c rb_client.c
$ xlc $(CFLAGS) -o rb_client rb_client.o $(LIBS)
IBM RISC System/6000 (64 ビット コンパイラ):
定義
CFLAGS= -q64 -I$(REDBRICK_DIR)/include
# Define libraries to link
LIBS=$(REDBRICK_DIR)/lib/librbodbc.a -lm
#If you want to use Red Brick ODBClib shared library
#define LIBS as follows
#LIBS=$(REDBRICK_DIR)/lib/librbodbc.so -lm
第 3 章 UNIX でのカスタム クライアント アプリケーションの作成
43
サンプル コマンド
$ xlc $(CFLAGS) -I$(REDBRICK_DIR)/include -c rb_client.c
$ xlc $(CFLAGS) -o rb_client rb_client.o $(LIBS)
Linux i686 ベースのシステム (32 ビット コンパイラ):
定義
CFLAGS= -I$(REDBRICK_DIR)/include
# Define libraries to link
LIBS=$(REDBRICK_DIR)/lib/librbodbc.a -lnsl -lm
#If you want to use Red Brick ODBClib shared library
#define LIBS as follows
#LIBS=$(REDBRICK_DIR)/lib/librbodbc.so -lnsl -lm
サンプル コマンド
$ cc $(CFLAGS) -I$(REDBRICK_DIR)/include -c rb_client.c
$ cc $(CFLAGS) -o rb_client rb_client.o $(LIBS)
Sun SPARC-Based System (Solaris 32 ビット コンパイラ):
定義
CFLAGS= -I$(REDBRICK_DIR)/include
# Define libraries to link
LIBS=$(REDBRICK_DIR)/lib32/librbodbc.a -lnsl -lm
#If you want to use Red Brick ODBClib shared library
#define LIBS as follows
#LIBS=$(REDBRICK_DIR)/lib32/librbodbc.so -lnsl -lm
サンプル コマンド
$ cc $(CFLAGS) -I$(REDBRICK_DIR)/include -c rb_client.c
$ cc $(CFLAGS) -o rb_client rb_client.o $(LIBS)
Sun SPARC ベースのシステム (Solaris 64 ビット コンパイラ):
定義
CFLAGS= -xarch=v9 -I$(REDBRICK_DIR)/include
# Define libraries to link
LIBS=$(REDBRICK_DIR)/lib/librbodbc.a -lnsl -lm
#If you want to use Red Brick ODBClib shared library
#define LIBS as follows
#LIBS=$(REDBRICK_DIR)/lib/librbodbc.so -lnsl -lm
サンプル コマンド
$ cc $(CFLAGS) -I$(REDBRICK_DIR)/include -c rb_client.c
$ cc $(CFLAGS) -o rb_client rb_client.o $(LIBS)
44
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
UNIX での ODBC アプリケーションの実行
ODBC アプリケーションの作成が完了したら、データ ソース (DSN) を設定し、各プラ
ットフォームに対応する共有ライブラリ環境変数が正しく設定されているか検証する必
要があります。
重要: UNIX 上で ODBC アプリケーションを実行する方法の詳細については、
DataDirect マニュアルを参照してください。
ファイル $HOME/.odbc.ini でのデータ ソース設定
UNIX の DSN は、各ユーザのホーム ディレクトリにあるファイル $HOME/.odbc.ini
で設定できます。
ファイル $HOME/.odbc.ini で DSNを設定するには、中央の .odbc.ini ファイルと各ユ
ーザのホーム ディレクトリにある .odbc.ini ファイルの間にシンボリック リンクを作
成する必要があります。これは、DSN の定義を集中管理できるようにするためです。シ
ンボリック リンクを作成しないと、DSN 指定の全コンポーネントをアプリケーション
の接続文字列に指定しない限り、データベースと接続できなくなります。
UNIX 上で Red Brick ODBC Driver を使用するアプリケーションと、Red Brick
ODBClib SDK にリンクしているアプリケーションでは .odbc.ini ファイルが異なりま
す。以下のセクションでは、このファイル .odbc.ini について説明します。
重要: $HOME ディレクトリが複数のハードウェア プラットフォームで共有されている
場合は、.odbc.ini ファイルにはプラットフォーム固有の情報が指定されている
可能性があります。たとえば、.odbc.ini ファイルの中に複数の InstallDir 指定
があり、Red Brick ODBClib SDK のファイルの場所を示すディレクトリ パスが
プラットフォームごとに指定されている場合があります。
Red Brick ODBC Driver を使用するアプリケーションの初期化ファイル
# Sample $HOME/.odbc.ini file if you are using
# the Connect ODBC Driver Manager
# to load the Red Brick ODBC Driver for UNIX
#
# This section is to name your ODBC DSNs
# One entry per DSN
#
[ODBC Data Sources]
RBDSN=Red Brick Driver
# This section defines the ODBC environment
#
[ODBC]
Trace=<value>
TraceFile=<filename>
InstallDir=<redbrick_dir>/lib
第 3 章 UNIX でのカスタム クライアント アプリケーションの作成
45
# This section is to define your ODBC DSNs
# One set of entries per DSN
#
[RBDSN]
Driver=<redbrick_dir>/lib/rbodbcdrv.so
SERVER=<host>:<port>
RB_CONFIG=<redbrick_dir>
DATABASE=<database_name>
UID=<username>
PWD=<password (optional)>
スレッド セーフ ODBC ドライバを使用する場合は、必ず Driver エントリにスレッド
セーフ ファイルのフル パスを指定してください。以下に例を示します。
Driver=/redbrick/rbw/lib/rbodbcdrv-thr.so
Red Brick ODBClib SDK を使用するアプリケーションの初期化ファイル:
# Sample $HOME/.odbc.ini file if you are using
# the Red Brick ODBClib SDK or if you are using
# the RISQL Entry Tool or RISQL Reporter
#
# This section is to name your ODBC DSNs
# One entry per DSN
#
[ODBC Data Sources]
RBDSN=Red Brick Driver
# This section defines the ODBC environment
#
[ODBC]
InstallDir=<redbrick_dir>/lib
# This section is to define your ODBC DSNs
# One set of entries per DSN
#
[RBDSN]
SERVER=<host>:<port>
RB_CONFIG=<redbrick_dir>
DATABASE=<database_name>
UID=<username>
PWD=<password (optional)>
このサンプルのファイル .odbc.ini では、RBDSN という名前の DSN が定義されてい
ます。
46
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
プラットフォーム固有の環境変数の設定
UNIX 上で ODBC アプリケーションを実行する前に、環境変数 RB_CONFIG を設定する
必要があります。 ODBC アプリケーションは、この環境変数を使用してファイル
rbw.config を検出します。このファイルは、メッセージ ファイルの検索およびロケー
ル設定の識別に使用されます。
環境変数 RB_CONFIG は以下のように設定します。
setenv RB_CONFIG redbrick_dir
redbrick_dir は、Red Brick ODBClib SDK ファイルがインストールされているディレ
クトリです。
Red Brick ODBClib 共有ライブラリを使用するアプリケーションを作成する場合、以下
のテーブルに従ってプラットフォームごとに環境変数を設定する必要があります。この
テーブルの redbrick_dir は、Red Brick ODBClibSDK ファイルがインストールされて
いるディレクトリです。
プラットフォーム
環境変数設定
Digital AlphaServer
setenv LD_LIBRARY_PATH
<redbrick_dir>/lib:$LD_LIBRARY_PATH
HP 9000
setenv SHLIB_PATH <redbrick_dir>/lib:$SHLIB_PATH
HP Itanium
setenv SHLIB_PATH <redbrick_dir>/lib:$SHLIB_PATH
IBM RISC System/6000
setenv LIBPATH <redbrick_dir>/lib:$LIBPATH
i686 ベースの Linux システ setenv LD_LIBRARY_PATH
ム
<redbrick_dir>/lib:$LD_LIBRARY_PATH
Sun SPARC ベースのシステ setenv LD_LIBRARY_PATH
ム
<redbrick_dir>/lib:$LD_LIBRARY_PATH
Red Brick と DataDirect SDK の機能の相違点
このセクションでは、Red Brick ODBClib SDK と DataDirect Technologies Connect
ODBC SDK の機能の相違点について説明します。Red Brick ODBClib ライブラリにリ
ンクするアプリケーションを作成する場合に、この情報を使用します。
ヘッダ ファイル
Red Brick ODBClib SDK を使用するアプリケーションを作成する場合、その Red Brick
ODBClib SDK に付属しているヘッダ ファイル rbsql.h を使用する必要があります。
Microsoft または Connect ODBC SDK に応じたアプリケーションを作成する場合は、
Microsoft または DataDirect から入手可能なヘッダ ファイル sql.h を使用する必要が
あります。
第 3 章 UNIX でのカスタム クライアント アプリケーションの作成
47
DSN 接続
DataDirect から DSN 用のドライバが提供されています。 DataDirect Technologies
Connect ODBC SDK を使用して作成した ODBC アプリケーションは、DataDirect ドラ
イバを備えたあらゆる DSN に接続できます。
ソース コードの移植性
Red Brick ODBClib SDK アプリケーションを DataDirect Technologies Connect ODBC
SDK に移植するには、DataDirect ヘッダ ファイルを使用してアプリケーションを再コ
ンパイルし、DataDirect Driver Manager を使用してこれらのファイルをリンクします。
DataDirect Technologies Connect ODBC SDK アプリケーションを Red Brick ODBClib
SDK に移植するには、Red Brick ヘッダ ファイルを使用してアプリケーションを再コ
ンパイルし、Red Brick ODBClib ライブラリを使用してこれらのファイルをリンクしま
す。
ドライバ マネージャ機能のエミュレーション
Red Brick ODBClib SDK は、Microsoft Driver Manager または DataDirect Driver
Manager が実行する以下の機能をエミュレートします。
v SQLDataSources
v SQLDrivers
v SQLGetInfo
SQLDataSources
ディレクトリ $HOME の中にファイル .odbc.ini またはシンボリック リンクがある場
合、Red Brick ODBClib SDK が SQLDataSources を実装する方法は、DataDirect
Technologies Connect ODBC SDK を使用して作成されたアプリケーションに対する
SQLDataSources を DataDirect Driver Manager が実装する方法と同じです。
SQLDrivers
Red Brick ODBClib SDK を使用してアプリケーションを作成した場合、そのアプリケ
ーションで使用できるドライバは Red Brick ODBC Driver のみです。 Red Brick
ODBClib SDK で他のドライバが使用されることはありません。
SQLGetInfo
DataDirect Technologies Connect ODBC SDK から戻される SQLGetInfo 関数の値は、
Microsoft ODBC SDK と同じです。
Red Brick ODBClib SDK が戻す SQLGetInfo 関数の値は、22 ページの『SQLGetInfo
情報タイプ』で説明している値と同じですが、一部例外があります。以下のテーブルは
その例外の一覧です。
48
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
情報タイプ
戻り値
SQL_DRIVER_HDBC
アプリケーションに対して検索可能なデータを処理する。
SQL_DRIVER_HDESC
ドライバ マネージャは関係しません。
アプリケーションに対して検索可能なデータを処理する。
SQL_DRIVER_HENV
ドライバ マネージャは関係しません。
アプリケーションに対して検索可能なデータを処理する。
SQL_DRIVER_HSTMT
ドライバ マネージャは関係しません。
文字列値: ″0″
アプリケーションは、ドライバと直接通信します。
アプリケーションに対して検索可能なデータを処理する。
SQL_DRIVER_VER
ドライバ マネージャは関係しません。
文字列値: ″03.00″
SQL_DRIVER_HLIB
この値は SQL_SPEC_MAJOR および SQL_SPEC_MINOR
から派生したものです。
ODBC サンプル プログラム
IBM Red Brick Warehouse の UNIX プラットフォーム用 Red Brick ODBClib SDK に
は、サンプルの ODBC C プログラム rb_client が付属しています。このセクションで
は、このサンプル プログラムの場所とセットアップ方法について説明します。
サンプル プログラムの場所
ディレクトリ redbrick_dir/lib/example には、サンプルの C プログラムのソース コ
ードがあります。 redbrick_dir は、Red Brick ODBClib SDK のファイルがインスト
ールされているディレクトリです。
ディレクトリ example に格納されているファイルは以下のとおりです。
v サンプル プログラムの作成方法の概要を説明したファイル README.TXT。
v サンプルの C コードを使用するファイル rb_client.c。
v プログラム作成環境を定義するために make ユーティリティと組み合わせて使用され
るファイル Makefile。
サンプル プログラムのセットアップ
rb_client は、Red Brick データベースに対する SQL 文を実行する Red Brick
ODBClib クライアント プログラムです。vi などのテキスト エディタを使用して、使
用するプラットフォームに合わせて Makefile の内容を修正します。次に、この
Makefile を使用してプログラムを作成します。
第 3 章 UNIX でのカスタム クライアント アプリケーションの作成
49
プラットフォームの定義
Makefile の先頭にある、使用するプラットフォームに対応する環境変数
RB_PLATFORM を検出し、その行に挿入されている注釈記号 (#) を削除します。たと
えば、使用しているプラットフォームが Solaris の場合、Makefile 中にある以下の行の
注釈記号を削除します。
# RB_PLATFORM=solaris
重要: デフォルトでは、Makefile 中の環境変数 RB_PLATFORM にはすべて注釈記号が
付いています。
Red Brick ODBClib SDK の定義
Makefile に以下の行が指定されていることを確認してください。
RB_ODBC=1
インストール先ディレクトリの定義
Makefile 中の RB_INSTALL_DIR 環境変数を検出し、redbrick_dir のフル ディレクト
リ パスを参照するようにこの環境変数を定義します。たとえば、SDK を
/redbrick/odbc ディレクトリにインストールした場合、RB_INSTALL_DIR 環境変数を
次のように定義します。
RB_INSTALL_DIR= /redbrick/odbc
プリプロセッサ、アーカイバ、およびコンパイラの指定
Makefile を使用して、C プリプロセッサ、オブジェクト アーカイバ、C コンパイラの
各実行可能ファイルへのパスを指定できます。たいていの環境ではデフォルト値のまま
で正しく動作しますが、これらのツールに対して別の実行可能ファイルを指定する場合
は、CPP、AR、CC の各環境変数を修正します。CPP は C プリプロセッサ、AR はオ
ブジェクト アーカイバ、CC は C コンパイラにそれぞれ対応しています。たとえば、
CPP、AR、CC の各環境変数のデフォルト値は以下のとおりです。
CPP= /odbc/cpp.exe
AR= /odbc/ar.exe
CC= /odbc/cc.exe
デフォルト値を実行可能ファイルへのパスに変更します。
プログラム rb_client の作成
使用するプラットフォームおよび環境に合わせて Makefile を修正したら、プログラム
rb_client を作成します。プログラムを作成する前に、以下の作業を完了しているか確
認してください。
v ファイル $HOME/.odbc.ini の中で DSN を定義しているか。
v 環境変数 RB_CONFIG を設定しているか。
50
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
プログラム rb_client を作成するには、ディレクトリを $RB_CONFIG/lib/example (Red
Brick ODBClib のファイルが格納されているディレクトリ) に変更し、以下のコマンド
を入力します。
% make
make コマンドを入力すると、プログラム rb_client から rb_client という名前の実
行可能ファイルが作成されます。そして、DSN および SQL 文を入力するよう要求され
ます。次に、プログラム rb_client では、指定した DSN に対応するデータベースに対
して SQL 文が実行されます。
第 3 章 UNIX でのカスタム クライアント アプリケーションの作成
51
52
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
第 4 章 Red Brick JDBC ドライバ: はじめに
この章では以下の項目について説明します。
v Red Brick JDBC Driver および JDBC API。
v ドライバのインストール方法とアンインストール方法。
v アプレットの中でドライバを使用する方法。
v ミドル層で Red Brick JDBC プロキシ サーブレットが動作する場合に、3 層構成に
おいて必要となるソフトウェアをインストールする方法。
JDBC とは
Java データベース コネクティビティ (JDBC) は、JavaSoft 仕様の標準アプリケーショ
ン プログラミング インタフェース (API) であり、Java プログラムを使用したデータベ
ース管理システムへのアクセスを可能にします。JDBC API は、Java プログラミング言
語で記述されたインタフェースとクラスのセットで構成されています。
プログラマはこの標準インタフェースとクラスを利用することにより、データベースに
接続し、構造化問い合わせ言語 (SQL) で記述したクエリを送信し、その結果を処理する
アプリケーションを作成できます。
JDBC API は、java.lang や java.awt などの、コア Java のインタフェースおよびク
ラスのスタイルに準拠しています。以下のテーブルは、JDBC API を構成するインタフ
ェース、クラス、および例外 (例外として送出されるクラス) の一覧です。このテーブ
ルで、javax.sql パッケージに属するインタフェースは標準 JDBC インタフェースに対
する拡張機能であり、Java 2 SDK、Enterprise Edition に付属しています。
インタフェース/クラス/例外
説明
インタフェース
java.sql.Connection
データベースへの接続を確立するためのイン
タフェース。SQL 文は接続状況に応じて実
行されます。
java.sql.DatabaseMetaData
データベースに関する情報を戻すためのイン
タフェース。
java.sql.Driver
特定のデータベース管理システム用のドライ
バを検索するためのインタフェース。
java.sql.PreparedStatement
プリコンパイルされた SQL 文をデータベー
ス サーバに送信して結果を取得するための
インタフェース。
© Copyright IBM Corp. 1996, 2004
53
インタフェース/クラス/例外
説明
java.sql.ResultSet
SQL 文を実行した結果を処理するためのイ
ンタフェース。
java.sql.ResultSetMetaData
ResultSet オブジェクトの列に関する情報を
戻すためのインタフェース。
java.sql.Statement
静的 SQL 文をデータベース サーバに送信
して結果を取得するためのインタフェース。
javax.sql.ConnectionEventListener
PooledConnection オブジェクトによって生成
されるイベントを受信するためのインタフェ
ース。
javax.sql.ConnectionPoolDataSource
PooledConnection オブジェクトのファクト
リ。ConnectionPoolDataSource オブジェクト
は通常、JNDI サービスに登録されます。
javax.sql.DataSource
Connection オブジェクトのファクトリ。
DataSource オブジェクトは通常、JNDI サー
ビス プロバイダに登録されます。
javax.sql.PooledConnection
PooledConnection オブジェクトは、データ
ソースへの物理的接続を表します。
クラス
java.sql.Date
SQL の日付 (DATE) 型に使用される
java.util.Date のサブクラス。
java.lang.DriverManager
JDBC ドライバのセットを管理するためのク
ラス。
java.sql.DriverPropertyInfo
接続に対するプロパティを検出および設定す
るためのクラス。
java.sql.Time
SQL の時刻 (TIME) 型に使用される
java.util.Date のサブクラス。
java.sql.TimeStamp
SQL のタイムスタンプ (TIMESTAMP) 型に
使用される java.util.Date のサブクラス。
java.sql.Types
文字 (CHAR) 型、整数 (INTEGER) 型、お
よび 10 進数 (DECIMAL) 型などの標準
SQL データ型の識別に使用する定数を定義
するためのクラス。
java.sql.String
文字 (CHAR) 型などのテキスト データ型を
識別するためのクラス。
例外クラス
java.sql.SQLException
54
データベース エラーに関する情報を提供す
る例外。
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
インタフェース/クラス/例外
java.sql.SQLWarning
説明
データベースの警告に関する情報を提供する
例外。
JDBC は標準仕様であるため、JDBC API を使用する Java プログラムは、JDBC ドラ
イバが用意されている任意のデータベース管理システム (DBMS) に接続できます。
JDBC ドライバとは
JDBC API は、データベースに接続してクエリを送信するときに使用する、Java のイン
タフェースとクラスを定義したものです。JDBC ドライバは、個々の DBMS 製造元に
対応して、Java のインタフェースとクラスを実装します。
JDBC API を使用する Java プログラムは、特定の DBMS 用のドライバをロードして
からデータベースに接続します。その後、JDBC DriverManager クラスにより、すべて
の JDBC API 呼び出しがそのロードされたドライバに送信されます。
JDBC ドライバには以下の 4 種類があります。
v JDBC-ODBC ブリッジと ODBC ドライバ。タイプ 1 ともいいます。
JDBC API 呼び出しを Microsoft Open Database Connectivity (ODBC) 呼び出しに変換
し、ODBC ドライバに渡します。このタイプのドライバを使用するクライアント コ
ンピュータには、ODBC バイナリ コードをロードする必要があります。
v ネイティブ API。部分的な Java ドライバで、タイプ 2 ともいいます。
JDBC API 呼び出しを DBMS 固有のクライアント API 呼び出しに変換します。ブ
リッジ ドライバと同様に、このタイプのドライバは各クライアント コンピュータに
バイナリ コードを一部ロードする必要があります。
v JDBC ネット。Pure Java ドライバで、タイプ 3 ともいいます。
JDBC API 呼び出しをミドル層の中継サーバに送ります。中継サーバはその呼び出し
を DBMS 固有のネットワーク プロトコルに変換します。変換された呼び出しは、特
定の DBMS に送られます。
v ネイティブ プロトコル。Pure Java ドライバで、タイプ 4 ともいいます。
JDBC API 呼び出しを、ミドル層を通さずに、DBMS 固有のネットワーク プロトコ
ルに直接変換します。このため、クライアント アプリケーションをデータベース サ
ーバに直接接続できます。
Red Brick JDBC Driver は、JDBC API のバージョン 2.0 に基づく Pure Java のタイプ
4 ドライバです。
第 4 章 Red Brick JDBC ドライバ: はじめに
55
2 層構成と 3 層構成
JDBC API と Red Brick JDBC Driver は、2 層構成と 3 層構成のどちらでも使用でき
ます。それぞれの構成について以下に説明します。
2 層構成
2 層構成の場合、Java アプレットとアプリケーションは、JDBC ドライバを介してデー
タベースと通信します。2 層構成は通常、クライアント/サーバ構成をとります。クライ
アント システム上にはドライバとアプレットまたはアプリケーション、サーバ上にはデ
ータベースがそれぞれ配置されます。
図 1 は、Red Brick JDBC Driver と IBM Red Brick Warehouse の 2 層構成を示しま
す。
図 1. JDBC 2 層構成
3 層構成
3 層構成の場合、クライアント システム上の HTML ブラウザまたは Java アプレット
が、ミドル層システム上の Java アプリケーションにコマンドを送信します。このミド
ル層システムは、クライアントともデータベース サーバとも異なる第 3 の層です。ミ
ドル層にある Java アプリケーションは、JDBC プロキシ サーブレットを介してデータ
ベースと通信します。このサーブレットは、アプリケーションと同じシステム上にあり
ます。3 層構成にした場合、2 層構成に比べて、データベースへのアクセスおよびデー
タベースの変更を行うときのセキュリティと制御能力が向上します。
図 2 は 3 層構成の例です。この例では、ミドル層の Web サーバ上に Java サーブレ
ット エンジンと Red Brick JDBC プロキシ サーブレット、データベース サーバ上に
IBM Red Brick Warehouse が配置されています。
56
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
図 2. JDBC 3 層構成
ドライバのインストール
Red Brick JDBC Driver をインストールするには、ソフトウェア CD-ROM のディレク
トリ CCP/JDBC にある JDBC SETUP プログラムを使用します。このドライバのインス
トール方法には、対話形式とサイレント モードの 2 種類があります。このセクション
では、UNIX、Linux、Windows の各プラットフォームにドライバをインストールする手
順について説明します。
対話形式でのインストール
UNIX のみ
UNIX 上でインストール プログラムを起動するには、Bourne シェルまたは Korn シェ
ルで以下のコマンドを実行します。
sh setup
デフォルトでは、UNIX のセットアップ スクリプトによって、Red Brick JDBC Driver
がホーム ディレクトリの以下のディレクトリにインストールされます。
$HOME/RedBrick/JDBC
このスクリプトでは、ドライバを別のディレクトリにインストールすることもできま
す。
第 4 章 Red Brick JDBC ドライバ: はじめに
57
Windows のみ
CD に格納されているインストール プログラムを Windows 上で起動するには、CD に
ある以下のコマンドを実行します。
SETUP
Red Brick JDBC Driver を Web サイトからダウンロードした場合は、ドライバのダウ
ンロード先ディレクトリにある SETUP コマンドを実行します。
デフォルトでは、SETUP プログラムによって、Red Brick JDBC Driver が C ドライブ
の以下のディレクトリにインストールされます。
c:¥RedBrick¥jdbc
この SETUP プログラムでは、ドライバを別のディレクトリにインストールすることも
できます。
Windows のみ の終り
サイレント モードのインストール
サイレント モードのインストール では、ユーザに情報の入力を促すプロンプトが表示
されることなく、製品がインストールされます。つまり、ユーザがインストール処理の
実行を認識することはありません。たとえば、サード パーティが自社の製品に Red
Brick JDBC Driver を組み込む場合、そのサード パーティはサイレント モードのイン
ストールを使用することにより、ドライバをその製品の一部として透過的にインストー
ルできます。
UNIX のみ
ドライバをサイレント モードで UNIX 上にインストールするには、以下のコマンドを
実行します。
sh SETUP -s directory-name
directory-name の指定は任意です。ディレクトリ名を入力しない場合、ドライバはホー
ム ディレクトリの以下のディレクトリにインストールされます。
$HOME/RedBrick/JDBC
58
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
UNIX のみ の終り
Windows のみ
ドライバをサイレント モードで Windows 上にインストールするには、以下のコマンド
を実行します。
c:¥SETUP -s directory-name
directory-name の指定は任意です。ディレクトリ名を入力しない場合、ドライバは C ド
ライブの以下のディレクトリにインストールされます。
c:¥RedBrick¥jdbc
Windows のみ の終り
ドライバとともにインストールされるファイル
Red Brick JDBC Driver セットアップ プログラムにより、次のファイルがインストール
されます。
v copyright.txt
サード パーティ製ソフトウェアの著作権とライセンス契約に関する情報が記載され
ています。
v demos/general/*
demos/I18N/*
demos/JDBCTestCancel/*
demos/JDBCTestQueryProcessing/*
demos/rmi/*
JDBC API を使用するサンプル Java プログラムが格納されているディレクトリ。サ
ンプル ファイルの説明は、 105 ページの『Java 対応エンコードの GlobalC コードへ
の変換』 を参照してください。
v JRbwUnInstall.class
uninstall スクリプトおよび uninstall.bat スクリプトによって使用されるアンインス
トール クラス ファイル。
v JRbwVersion.class
JDBC Driver のバージョンを識別するためのバージョン クラス ファイル。
第 4 章 Red Brick JDBC ドライバ: はじめに
59
v proxy/RBWProtocol.class
Http トンネル プロキシ クラス ファイル。
v proxy/SocketState.class
Http トンネル プロキシをサポートするセッション マネージャ クラス ファイル。
v proxy/ConnectionPool.class
IBM Red Brick Warehouse への接続を管理します。
v proxy/Tracefile.class
ログ記録が有効になっており、かつ、ログ ファイルが指定されている場合、トレー
スを実行します。
v proxy/Errors.class
エラー処理を実行します。
v redbrick.jar
JDBC API のインタフェース、クラス、およびメソッドが最適化された形で実装され
ている JAR ファイル。
v tools/*.gif
JDBC ツール用のアイコン画像ファイル。
v tools/jdbctoolshelp.jar
JDBC ツールのオンライン ヘルプ ファイルが含まれている JAR ファイル。
v tools/jhall.jar
JavaHelp のバイナリ ファイルが含まれている JAR ファイル。
v tools/rbdsadmin.*
JDBC データ ソース Administrator ツールを実行します。詳細については、 102 ペー
ジの『データ ソース Administrator ツール』 を参照してください。
v tools/rbjdbctools.jar
JDBC ツールを実装したファイルが含まれている JAR ファイル。
v tools/rbjping.*
JDBC Ping ツールを実行します。詳細については、 103 ページの『JDBC Ping ツー
ル』 を参照してください。
v uninst.inf
uninstall がドライバをアンインストールするために使用するファイル。
60
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
v uninstall
UNIX プラットフォームにインストールされているドライバをアンインストールしま
す。
v uninstall.bat
Windows プラットフォームにインストールされているドライバをアンインストールし
ます。
v readme.txt
インストールとアンインストールに関する情報が記載されているテキスト ファイ
ル。
Java の CLASSPATH へのドライバの組み込み
アプリケーションで Red Brick JDBC Driver を使用するには、そのドライバ ファイル
を参照するように環境変数 CLASSPATH を設定するか、またはコマンド行で java コ
マンドを入力するときに -classpath オプションを指定します。環境変数
TestQueryProcessing/* は、Java 仮想マシン (JVM) およびその他のアプリケーションに
対して、Java プログラムで使用される Java クラス ライブラリの場所を通知します。
環境変数 TestQueryProcessing/* を設定する方法は 2 とおりあります。1 つ目の方法
は、ファイル redbrick.jar のフルパス名を環境変数 TestQueryProcessing/* に追加する
ことです。以下に例を示します。
UNIX のみ
C シェル:
setenv CLASSPATH $JDBC_DRIVER_HOME/redbrick.jar:$CLASSPATH
$JDBC_DRIVER_HOME は、ドライバがインストールされているディレクトリへのパスで
す。
Bourne シェルまたは Korn シェル:
CLASSPATH=$JDBC_DRIVER_HOME/redbrick.jar:$CLASSPATH
export CLASSPATH
$JDBC_DRIVER_HOME は、ドライバがインストールされているディレクトリへのパスで
す。
UNIX のみ の終り
Windows のみ
以下の例に、Windows 上で環境変数 CLASSPATH を設定する方法を示します。
第 4 章 Red Brick JDBC ドライバ: はじめに
61
set CLASSPATH=%RB_JDBC_HOME%¥redbrick.jar;%CLASSPATH%
%JDBC_DRIVER_HOME% は、ドライバがインストールされているディレクトリへのパスで
す。
Windows のみ の終り
環境変数 CLASSPATH を設定する 2 つ目の方法は、ファイル redbrick.jar を展開
し、そのディレクトリを環境変数 CLASSPATH に追加することです。以下に例を示し
ます。
UNIX のみ
C シェル:
cd $JDBC_DRIVER_HOME
jar xvf redbrick.jar
setenv CLASSPATH $JDBC_DRIVER_HOME:$CLASSPATH
$JDBC_DRIVER_HOME は、ドライバがインストールされているディレクトリへのパスで
す。
Bourne シェルまたは Korn シェル:
cd $JDBC_DRIVER_HOME
jar xvf redbrick.jar
CLASSPATH =$JDBC_DRIVER_HOME:$CLASSPATH
export CLASSPATH
$JDBC_DRIVER_HOME は、ドライバがインストールされているディレクトリへのパスで
す。
UNIX のみ の終り
Windows のみ
以下の例に、Windows 上で環境変数 CLASSPATH を設定する方法を示します。
cd %RB_JDBC_HOME%
jar xvf redbrick.jar
set CLASSPATH= %RB_JDBC_HOME%;%CLASSPATH%
%JDBC_DRIVER_HOME% は、ドライバがインストールされているディレクトリへのパスで
す。
Windows のみ の終り
jar ユーティリティとこれに関連するアーカイブ ファイル形式を利用すると、アプリケ
ーションに関連するクラス ファイルなど複数のファイルを 1 つのアーカイブ ファイル
62
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
にまとめることができます。jar ユーティリティの詳細については、以下の Web サイト
にある JavaSoft のマニュアルを参照してください。
http://java.sun.com
ドライバのアンインストール
ここでは、UNIX 上および Windows 上にインストールされている Red Brick JDBC
Driver をアンインストールする方法について説明します。
uninstall プログラムは、カレント ディレクトリにあるファイル uninst.inf からドライ
バの構成要素に関する情報を取得します。
Bourne シェルまたは Korn シェルで Red Brick JDBC Driver をアンインストール
するには:
1. ドライバがインストールされているディレクトリに移動します。
2. uninstall プログラムを起動します。
UNIX のみ
UNIX 上で uninstall プログラムを起動するには、以下のコマンドを実行します。
sh uninstall
UNIX のみ の終り
Windows のみ
Windows 上で uninstall プログラムを起動するには、以下のコマンドを実行します。
uninstall
Windows のみ の終り
インストールされていたファイルはすべて削除されますが、ディレクトリに追加された
その他のファイルは削除されずにそのまま残ります。
アプレットでのドライバの使用
アプレットで Red Brick JDBC Driver を使用すると、Netscape Navigator や Microsoft
Internet Explorer などのブラウザからデータベースに接続できます。次に、アプレット
内でドライバを指定する方法、およびドライバが Web サーバから正しくダウンロード
されているか確認する方法について説明します。
アプレットで Red Brick JDBC Driver を使用するには:
第 4 章 Red Brick JDBC ドライバ: はじめに
63
1. ファイル redbrick.jar をアプレット クラス ファイルと同じディレクトリにインス
トールします。
2. HTML ファイルの中の APPLET タグの ARCHIVE 属性にファイル redbrick.jar
を指定します。以下に例を示します。
<APPLET ARCHIVE=redbrick.jar CODE=my_applet.class
CODEBASE=http://www.myhost.com WIDTH=460 HEIGHT=160>
</APPLET>
重要: 一部のブラウザでは、APPLET タグの ARCHIVE 属性がサポートされていませ
ん。アプレットをダウンロードするブラウザがこれに該当する場合は、ファイル
redbrick.jar をアンパックし、使用する Web サーバのルート ディレクトリに
インストールする必要があります。
ブラウザで JDBC API がサポートされていない場合は、java.sql パッケージに
格納されているクラス ファイルも、使用する Web サーバのルート ディレクト
リにインストールする必要があります。
ファイルをルート ディレクトリにインストールする方法については、ご使用の
Web サーバのマニュアルを参照してください。
64
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
HTTP プロキシ サーバの使用
以下に示す理由により、HTTP プロキシ サーバを使用しなければならない場合がありま
す。
v アプレット。Web ブラウザのセキュリティ上の制約により、アプレットが Red Brick
JDBC Driver を使用している場合は、Web サーバと同じホストで動作しているデータ
ベース以外接続できません。Web サーバとデータベース サーバはともに大量のシス
テム リソースを必要とすることがあるため、場合によりこの制約が支障となりま
す。
v ファイアウォール。JDBC クライアントは、ファイアウォールの外側にあるデータベ
ースには接続できません。ファイアウォールによって、ブラウザからデータベースへ
の接続が拒否されます。
Red Brick の HTTP プロキシは、この 2 つの問題に対処するためのものです。HTTP
プロキシは小さいサイズのサーブレットであり、JDBC クライアントと IBM Red Brick
Warehouse サーバの間にあるミドル層で動作します。このプロキシは JDBC クライアン
トから HTTP パケットを受信して SQL 要求を抽出し、サーバに送信します。クライア
ント (エンドユーザ) がこのミドル層を認識することはありません。
この HTTP プロキシ機能は、JDBC 2.0 仕様には組み込まれていません。
図 3 は、プロキシを使用してファイアウォールの外側にあるデータベースに接続する方
法を示しています。
図 3. ファイアウォール経由での接続
第 4 章 Red Brick JDBC ドライバ: はじめに
65
プロキシ サーバの構成 (3 層)
HTTP プロキシを使用する場合、サーブレットをサポートしている Web サーバが必要
です。Red Brick JDBC HTTP プロキシ サーブレットは、以下の Web サーバに対応し
ています。
v JRun サーブレット エンジンを実装した Netscape Web Server
v JServ サーブレット エンジンを実装した Apache HTTP Server
v JServ サーブレット エンジンを実装し、Apache により機能拡張されている IBM
HTTP Server
IBM HTTP Server は、IBM WebSphere Application Server ソフトウェアに同梱されてい
ます。また、個別に購入することもできます。IBM HTTP Server の詳細については、以
下の Web サイトを参照してください。
www.ibm.com/software/webservers/httpservers
WebSphere Application Server の詳細については、以下の Web サイトを参照してくださ
い。
www.ibm.com/software/webservers/appserv
Netscape、Apache、IBM の各 Web サーバに必要なソフトウェア
3 層構成における Netscape Web Server 上で Red Brick JDBC プロキシ サーブレット
を使用するには、その Web サーバに JRun サーブレット エンジンをインストールする
必要があります。
Apache HTTP Server または IBM HTTP Server 上で Red Brick JDBC プロキシ サーブ
レットを使用するには、その Web サーバに Apache JServ サーブレット エンジンをイ
ンストールする必要があります。
Netscape Web サーバへの JRun のインストール
JRun は、サーバ側で動作する Java 開発および導入用エンジンです。JRun を使用する
ことにより、サーバ側 Java の機能を Web アプリケーションに追加できます。
JRun とその関連マニュアルは、以下の Web サイトからインストールできます。
www.macromedia.com/downloads
Netscape 用の JRun コネクタをインストールするには、jRun に付属している Connector
ウィザードを使用します。
Apache HTTP Server または IBM HTTP Server への JServ のインストー
ル
Apache HTTP Server 上または IBM HTTP Server 上で JDBC プロキシ サーブレット
を使用するには、Apache JServ をインストールする必要があります。JServ は Pure
66
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
Java サーブレット エンジンであり、個別の要求サーバとして動作します。 Apache
JServ は、以下の Web サイトからダウンロードできます。
http://java.apache.org/jserv/dist/
JServ のインストール方法については、ご使用の Web サーバのマニュアル、または
Web サイト (http://java.apache.org) を参照してください。
Red Brick JDBC プロキシ サーブレットのインストール
このセクションでは、以下の HTTP サーバに Red Brick JDBC HTTP プロキシ サーブ
レットをインストールする方法について説明します。
v UNIX 上で動作する Apache HTTP Server または IBM HTTP Server
v Windows NT 上で動作する Apache HTTP Server または IBM HTTP Server
Netscape Web Server に JDBC プロキシ サーブレットをインストールする方法につい
ては、以下の Web サイトにある Netscape のマニュアルを参照してください。
http://enterprise.netscape.com/docs/
Apache HTTP Server または IBM HTTP Server へのサーブレットのインス
トール (UNIX)
UNIX のみ
プロキシ サーブレットをインストールする前に、ご使用の Web サーバのマニュアルを
読み、サーバ固有の要件を満たしているか確認してください。プロキシ サーブレットを
インストールするには、以下の手順を実行します。
1. Web サーバ構成における、プロキシ サーブレットに対するエイリアスとディレクト
リを定義します。
JDBC ドライバは、クライアントからの HTTP 要求を以下のプロキシ サーブレット
に指定します。
http://your-web-server:port/pathname/RBWProtocol
RBWProtocol はプロキシ サーブレット、pathname はプロキシ サーブレットへのパ
スです。サーブレットを正しく構成する方法については、使用する Web サーバのマ
ニュアルを参照してください。
2. RBWProtocol.class、SocketState.class、ConnectionPool.class、
TraceFile.class、Errors.class の各ファイルを、ステップ 1 で定義したサーブレ
ット ディレクトリにコピーします。
これらのクラス ファイルは、JDBC 製品パッケージがインストールされると、ディ
レクトリ proxy に格納されます。
第 4 章 Red Brick JDBC ドライバ: はじめに
67
3. 必要に応じて、デフォルトのサーブレット プロパティを変更します。変更するに
は、サーブレット プロパティ ファイルを修正します。以下のエントリを追加しま
す。
servlet.RBWProtocol.initArgs=<comma separated list of name=value pairs>
以下に例を示します。
servlet.RBWProtocol.intiArgs=logfilename=/programs/ApacheGroup/ApacheJServ/logs
/RBWProtocol.log,logging=on,maxconnections=50,timeout=180
UNIX のみ の終り
Apache HTTP Server または IBM HTTP Server へのサーブレットのインス
トール (Windows)
Windows のみ
プロキシ サーブレットをインストールする前に、ご使用の Web サーバのマニュアルを
読み、サーバ固有の要件を満たしているか確認してください。プロキシ サーブレットを
インストールするには、以下の手順を実行します。
1. Web サーバ構成における、プロキシ サーブレットに対するエイリアスとディレクト
リを定義します。
JDBC ドライバは、クライアントからの HTTP 要求を以下のプロキシ サーブレット
に指定します。
http://your-web-server:port/pathname/RBWProtocol
RBWProtocol はプロキシ サーブレット、pathname はプロキシ サーブレットへのパ
スです。サーブレットを正しく構成する方法については、使用する Web サーバのマ
ニュアルを参照してください。
2. RBWProtocol.class、SocketState.class、ConnectionPool.class、
TraceFile.class、 Errors.class の各ファイルを、ステップ 1 で定義したサーブレ
ット ディレクトリにコピーします。
これらのクラス ファイルは、JDBC 製品パッケージがインストールされると、ディ
レクトリ proxy に格納されます。
3. 必要に応じて、デフォルトのサーブレット プロパティを変更します。変更するに
は、ファイル zone.properties を修正します。
ファイル zone.properties の中で、サーブレット初期化パラメータを指定する記述
を検出し、servlet.RBWProtocol.initArgs=<名前と値のペアをコンマで区切ったリスト>
を追加します。
以下の例はサーブレット初期化パラメータの構文です。
68
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
servlet.[classname].initArgs=[name]=[value],[name]=[value],...
デフォルト値はありません。
たとえば以下のプロパティは、クラス名によって呼び出される各サーブレットの初期
化パラメータを定義しています。
servletservlet,RBWProtocol.intiArgs=logfilename=C:¥ProgramFiles¥ApacheGroup
¥ApacheJServ¥logs¥RBWProtocol.log,logging=on,maxconnections=50,timeout=180
Windows のみ の終り
サーブレットのプロパティ
サーブレットを使用する場合、初期化パラメータを指定する機能など、いくつかの構成
作業を行う必要があります。以下のテーブルは、サーブレットのプロパティの一覧で
す。
サーブレットのプロパティ
説明
logfilename
ログ記録が有効になっている場合、このフ
ァイルにログ データが書き込まれます。
サーブレットによって処理されたコマンド
の高レベルのログが記録されます。このプ
ロパティは、オンかオフのどちらかに設定
します。デフォルト値はオフです。
アクティブな接続の最大数です。
分単位の値です。サーブレットへの接続数
が上限に達したときに新しい接続要求が発
生した場合、このタイムアウト時間を経過
してもアイドル状態にある接続が解除さ
れ、空いたスロットが接続要求元クライア
ントに割り当てられます。
logging
maxconnections
timeout
HTTP プロキシの指定
JDBC プロキシ サーブレットの構成が完了したら、アプレットまたはアプリケーション
の URL の末尾に以下の指定を追加します。
PROXY=http://webserver-host:port-number
以下に例を示します。
jdbc:rbw:protocol:123.45.67.89:1533/testdb/?UID=john&PID=test&
PROXY=http://9.87.65.432:9000
第 4 章 Red Brick JDBC ドライバ: はじめに
69
jdbc:rbw:protocol は Red Brick JDBC Driver の URL、
123.45.67.89:1533/testdb/?UID=john&PID=test はデータベース サーバに対する接続情
報、PROXY は Red Brick JDBC Driver がサポートしている接続プロパティです。
一部の Web サーバでは、Web サーバが起動されたとき、またはアプレット/アプリケー
ション接続オブジェクトの URL の中で Web サーバが初めて参照されたときに、プロ
キシがロードされます。
プロキシ サーブレットの詳細については、以下の Web サイトを参照してください。
v www.javasoft.com
v www.apache.org
70
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
第 5 章 Red Brick JDBC Driver を使用したプログラミング
この章では、JDBC API を使用して以下の処理を行うための基本的なプログラミング情
報について説明します。
v Red Brick JDBC Driver を介して IBM Red Brick Warehouse データベースに接続す
る。
v データベースのデータを要求する。
v データベースから戻された結果を処理する。
接続の確立
IBM Red Brick Warehouse データベースからデータを取得するには、事前にそのデータ
ベースとの接続を確立しておく必要があります。 JDBC 2.0 では、接続を確立する手段
として以下の 2 つの方法があります。
v まず、DriverManager クラスを使用して Red Brick JDBC Driver の Driver クラスを
ロードおよび登録し、次に、DriverManager.getConnection() メソッドを使用してデータ
ベースとの接続を確立します。
JDBC 1.x を使用する場合、データベースとの接続を確立する手段はこの方法に限ら
れます。 71 ページの『DriverManager クラスを使用して接続を確立する』を参照し
てください。
v Java Naming and Directory Interface (JNDI) とともに javax.sql.DataSource インタフェ
ースを実装します。
JDBC 2.0 を使用する場合は、この方法がより適切です。 76 ページの『DataSource
オブジェクトを介したデータベース接続』を参照してください。
DriverManager クラスを使用して接続を確立する
DriverManager クラスを使用して IBM Red Brick Warehouse データベースとの接続を確
立するには以下の手順を実行します。
1. Red Brick JDBC Driver をロードします。
2. 特定のデータベースへの接続を作成します。
Red Brick JDBC Driver のロード
このドライバをロードするには、以下のコード例のように Class.forName() メソッドを
使用します。このコード例は、demo1.java プログラムの一部です。
try
{
Class.forName("redbrick.jdbc.RBWDriver");
© Copyright IBM Corp. 1996, 2004
71
}
catch (Exception e)
{
System.out.println("Error: failed to load Redbrick JDBC driver");
// e.printStackTrace();
return;
}
Class.forName() メソッドは、Red Brick JDBC Driver が実装する Driverクラスである
RBWDriver をロードします。 RBWDriver クラスはドライバのインスタンスを作成し、
DriverManager クラスに登録します。
ドライバのロードが終了すると、データベースに接続できます。
Windows のみ
Microsoft Internet Explorer で表示するアプレットを作成する場合、プラットフォームの
非互換性に伴う問題を回避するため、Red Brick JDBC Driver を明示的に登録しなけれ
ばならないことがあります。
ドライバを明示的に登録するには DriverManager.registerDriver() メソッドを使用しま
す。次はそのコードの例です。
DriverManager.registerDriver((Driver)Class.forName(
"redbrick.jdbc.RBWDriver").newInstance());
Windows のみ の終り
接続の作成
DriverManager.getConnection() メソッドを使用して、データベースへの接続を作成しま
す。このメソッドによって Connection オブジェクトが作成されます。後でこのオブジ
ェクトを使用して、SQL 文の作成、SQL 文のデータベースへの送信、および結果の処
理を行います。
DriverManager クラスはどのドライバが使用可能かを管理し、対応するドライバとデー
タベースの間の接続要求を処理します。 getConnection() メソッドの url パラメータは
データベースの URL で、サブプロトコル (データベース コネクティビティ機構)、デ
ータベース識別子、およびプロパティの一覧を指定します。 getConnection() メソッドの
2 つ目のパラメータである property はプロパティの一覧です。プロパティ リストの指
定方法の例については、74 ページの『Properties クラスによる接続プロパティの指定』
を参照してください。
以下の例は、testDB というデータベースに接続するデータベース URL を示していま
す。
jdbc:rbw:protocol:123.45.67.89:5050/testDB/?UID=testuser&PWD=testpasswd
72
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
次のセクションでは、データベース URL 構文の詳細について説明します。
以下のコードの例は Red Brick JDBC Driver を使用して testDB データベースに接続す
る方法を示しています。分かりやすく説明するため、プログラムがコマンド行から実行
されているときに、url 変数がパラメータとして渡されると想定しています。
try
{
conn = DriverManager.getConnection(url);
}
catch (SQLException e)
{
System.out.println("ERROR: failed to connect!");
System.out.println("ERROR: " + e.getMessage());
// e.printStackTrace();
return;
}
データベース URL のフォーマット:
Red Brick JDBC Driver は、以下のフォーマ
ットの URL をサポートしています。
jdbc:rbw:protocol:[{ip-address|host-name}:
port-number][/dbName/][?UID=user&PWD=password][&name=value]...
上記の構文の説明は以下のとおりです。
v 中括弧 ({}) と縦線 (|) の組み合わせは変数に複数の選択肢があることを表します。
v イタリック の文字列は変数の値を表します。
v 大括弧 ([]) はオプションの値を表します。
v 括弧で囲まれていない語句や記号は必須の変数です (例: jdbc:rbw:protocol)。
重要: データベース URL では空白のスペースは使用できません。
第 5 章 Red Brick JDBC Driver を使用したプログラミング
73
データベース URL の変数部分については、以下のテーブルを参照してください。
データベース URL 変数 必須
ip-addresshost-name
はい
説明
データベース サーバを実行しているコンピュー
タの IP アドレスまたはホスト名
IP アドレスの例は 123.45.67.89
ホスト名の例は [email protected]。
port-number
はい
データベース サーバのポート番号。
database
はい
接続先のデータベースの名前。
UID=user
はい
データベースに接続するユーザの名前。
PWD=password
はい
user によって指定されたユーザのパスワード
name=value
いいえ
name 変数に含まれる Red Brick 接続プロパテ
ィの value を指定する名前−値ペア。 name 変
数は大文字と小文字を区別しません。
Red Brick JDBC Driver は、データベース URL
または接続プロパティの一覧から Red Brick 接
続プロパティを読み込みます。サポートされる
Red Brick 接続プロパティの一覧については、
ページ 75 のテーブルを参照してください。
重要: IBM Red Brick Warehouse バージョン 6.3 は、3 つのポート番号を使用します。
この 3 つとは、指定されたポート番号、および rbw.config ファイルのローカル
の各 SERVER エントリに対する 2 つのポート番号です。たとえば、rbw.config
ファイル内に RB_HOST SERVER 5050 というエントリがある場合、ポート
5050、5051、5052 が使用されます。これらのポートの 1 つが他のアプリケーシ
ョンにすでに割り当てられている場合、データベース サーバは正しく起動しませ
ん。
URL では以下の部分のみが必須です。
jdbc:rbw:protocol
他の値はすべて Properties クラスを使用して指定できます。
Properties クラスによる接続プロパティの指定:
Red Brick JDBC Driver は、接
続データベース URL の名前−値ペア、または接続プロパティの一覧のいずれかのみを
使用して、Red Brick 接続プロパティを読み込みます。ドライバはユーザの環境にかか
わらず接続プロパティを設定します。サポートされる Red Brick 接続プロパティの一覧
は、75 ページの『サポートされる Red Brick 接続プロパティ』を参照してください。
74
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
接続データベース URL の名前−値ペアに Red Brick 接続プロパティを指定する方法に
ついては、73 ページの『データベース URL のフォーマット』を参照してください。
プロパティ一覧を使用して Red Brick 接続プロパティを指定するには、
java.util.Properties クラスを使用してプロパティの一覧を作成します。このプロパティ一
覧には、UID および PWD などの Red Brick 接続プロパティが指定されることもあり
ます。プロパティ一覧を作成できたら、これを DriverManager.getConnection() に 2 つ目
のパラメータとして渡します。この場合、URL にプロパティ一覧を指定する必要はあり
ませんが、1 つ目のパラメータとして、データベース URL を指定してください。
以下の例の DriverManager.getConnection() メソッドは、データベース URL とプロパテ
ィ リストという 2 つのパラメータを指定します。この例では、72 ページの『接続の作
成』の例に類似した接続が作成されます。
try
{
Class.forName("redbrick.jdbc.RBWDriver");
}
catch (Exception e)
{
System.out.println("ERROR: failed to load Red Brick JDBC Driver .");
}
try
{
Properties pr = new Properties();
pr.put("DATABASE","aroma");
conn = DriverManager.getConnection(newUrl, pr);
}
catch (SQLException e)
{
System.out.println("ERROR: failed to connect!");
}
サポートされる Red Brick 接続プロパティ
以下のテーブルは、Red Brick JDBC Driver がサポートする Red Brick 接続プロパティ
の一覧です。
第 5 章 Red Brick JDBC Driver を使用したプログラミング
75
サポートされる Red Brick
接続プロパティ
説明
UID
データベースのユーザ名。
PWD
データベース パスワード。
DATABASE
論理データベース名。
SERVER
IBM Red Brick Warehouse を実行しているコンピュータの
ホスト名。
PORT
IBM Red Brick Warehouse を実行しているポート番号。
PROXY
3 層接続のゲートウェイ アドレス
HTTP プロトコルの場合
http://webhost:port/
暗号化をサポートする HTTPS プロトコルの場合
https://webhost:port/
この URL にはデフォルトで拡張子 servlet/RBWProtocol
が追加されます。このため、サーブレットのエイリアスは
常に servlets ディレクトリを参照する必要があります。ま
た、RBWProtocol サーブレットは servlets ディレクトリに
存在している必要があります。
CLIENT_LOCALE
サポートされているロケールの 1 つを使用できます。
DataSource オブジェクトを介したデータベース接続
JDBC 2.0 では、Class.forName() および DriverManager.getConnection() の各メソッドを
使用するのではなく、DataSource オブジェクトを使用してデータベースと接続する方
が、アプリケーション コードのポートと保守が簡単です。
v DataSource オブジェクトを使用してデータベースと接続する場合は、アプリケーショ
ンでは、宛先データベースの論理名のみが必要です。
論理名を使用して、宛先データベースを調べ、そのデータベースとの接続に必要な
JDBC ドライバの名前を調べます。この結果、アプリケーションでコードを変更しな
くても、JDBC ドライバの名前と宛先データベースの名前をサーバ上で変更できま
す。
v Class.forName()、および DriverManager.getConnection() の各メソッドを使用して、デ
ータベースと接続する場合、アプリケーションでは、JDBC ドライバのハードコード
された名前、およびデータベースのハードコードされた URL が必要になります。
76
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
DataSource オブジェクトを通してアプリケーションがデータベースと接続する場合は、
接続する前に、システム管理者が、Java Naming and Directory Interface (JNDI) に
DataSource オブジェクトを登録する必要があります。 DataSource オブジェクトを JNDI
サービス プロバイダに登録する方法、および DataSource オブジェクトを使用してデー
タベースに接続する方法については、「JDBC API Tutorial and Reference, Second
Edition」を参照してください。
アプリケーションでは、 DataSource オブジェクトを通してデータベースと接続する場
合に、以下のコードを使用できます。
// Get an initial JNDI context for locating the driver and
// database
Context ctext = new InitialContext();
// Get a DataSource object for the driver and database
// associated with a logical name
DataSource ds =
(DataSource)ctext.lookup("jdbc/logical_name_for_DB");
// Now, get the connection
Connection conn = ds.getConnection("username","password");
Red Brick Datasource Administrator ツールを利用すると、DataSource オブジェクトの作
成と管理を簡素化できます。詳細については、 102 ページの『データ ソース
Administrator ツール』 を参照してください。
第 5 章 Red Brick JDBC Driver を使用したプログラミング
77
サポートされている Connection メソッド
DriverManager クラス、または DataSource オブジェクトを使用するいずれの場合でも、
IBM Red Brick Warehouse との接続を確立すると、ユーザ セッションを表す
Connection オブジェクトを取得します。その後、Connection オブジェクトを使用して、
データベースに送信する要求を定義し、この要求をデータベースに送信します。
Red Brick JDBC Driver は、Connection インタフェースの以下のメソッドをサポートし
ています。
サポートされている Connection メソッド
void clearWarnings()
void close()
createStatement() 文
createStatement(int resultSetType, int resultSetConcurrency) 文
制約事項: resultSetType に設定できるのは TYPE_FORWARD_ONLY のみ、
resultSetConcurrency に設定できるのは CONCUR_READ_ONLY のみです。
boolean getAutoCommit()
String getCatalog()
DatabaseMetaData getMetaData()
int getTransactionIsolation()
SQLWarning getWarnings()
boolean isClosed()
boolean isReadOnly()
String nativeSQL(String sql)
PreparedStatement prepareStatement(String sql)
PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency)
制約事項: resultSetType に設定できるのは TYPE_FORWARD_ONLY のみ、
resultSetConcurrency に設定できるのは CONCUR_READ_ONLY のみです。
void setReadOnly(boolean readOnly)
78
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
サポートされている DataSource メソッド
Red Brick JDBC Driver は、javax.sql.DataSource インタフェースのメソッドをすべてサ
ポートしています。ただし、以下のメソッドは除きます。
[Unsupported:] public void setLoginTimeout(int seconds)
さらに、Red Brick JDBC Driver が javax.sql.DataSource を実装すると、以下のテーブル
に示すように、標準データ ソースと接続プロパティに getXXX() メソッドと setXXX()
メソッドを使用できます。この getXXX() メソッドと setXXX() メソッドは、javax.sql
に実装されています。
javax.sql.DataSource および
javax.sql.DataSource および
javax.sql.ConnectionPoolDataSource の javax.sql.ConnectionPoolDataSource の
setXXX() メソッド
getXXX() メソッド
public String getDatabaseName()
public
public
public
public
public
public
public
public
public
String getDescription()
void String getHostName()
String getLocale()
String getPassword()
int getPortNumber()
String getProxy()
String getTraceFile()
String getTraceLevel()
String getUser()
public void
database)
public void
public void
public void
public void
public void
public void
public void
public void
public void
setDatabaseName(String
setDescription(String description)
setHostName(String hostName)
setLocale(String clientLocale)
setPassword(String passwd)
setPortNumber(int port)
setProxy(String proxy)
setTraceFile(String traceFile)
setTraceLevel(String traceLevel)
setUser(String userName)
第 5 章 Red Brick JDBC Driver を使用したプログラミング
79
サポートされている ConnectionPoolDataSource メソッド
Red Brick JDBC Driver は、javax.sql.ConnectionPoolDataSource インタフェースのメソッ
ドをすべてサポートしています。さらに、ドライバが javax.sql.ConnectionPoolDataSource
を実装すると、標準データ ソースと接続プロパティに getXXX() と setXXX() の各メソ
ッドを使用できます。またドライバは、前のセクションのテーブルに示されるとおり
javax.sql.DataSource インタフェース内のこれらのメソッドも実装しています。
サポートされている PooledConnection メソッド
Red Brick JDBC Driver は、javax.sql.PooledConnection インタフェースのメソッドをす
べてサポートしています。
サポートされている ConnectionEventListener メソッド
Red Brick JDBC Driver は、javax.sql.ConnectionEventListener インタフェースで定義され
ている以下の 2 つのメソッドをサポートしています。
public void connectionClosed(connectionEvent event)
public void connectionErrorOccured(connectionEvent event)
80
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
データベースのメタデータへのアクセス
DatabaseMetaData インタフェースのメソッドは、データベースに関するメタデータを戻
します。このデータにアクセスするには、データベースの IBM Red Brick Warehouse
ACCESS_SYSINFO タスクの許可を受けている必要があります。
DatabaseMetaData インタフェースは、多数のメソッドを含んでいます。以下のテーブル
に、Red Brick JDBC Driver にサポートされていないメソッドを示します。これらのメ
ソッドは実装されていますが、戻り値は NULL または FALSE です。
サポートされていない DatabaseMetaData メソッド
ResultSet getCatalogs()
ResultSet getProcedureColumns(String catalog, String schemaPattern, String
procedureNamePattern, String columnNamePattern)
ResultSet getProcedures(String catalog, String schemaPattern, String procedureNamePattern)
ResultSet getSchemas()
ResultSet getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[]
types)
boolean supportsBatchUpdates()
schema および catalog のパラメータが指定された、サポートされている
DatabaseMetaData メソッドを使用する場合には、どちらのパラメータにも NULL 値を
割り当てる必要があります。
第 5 章 Red Brick JDBC Driver を使用したプログラミング
81
データベースへのアクセス
このセクションでは、Red Brick JDBC Driver を使用して、データベースにアクセス
し、結果を処理する方法を説明します。
文の実行
Statement オブジェクトは、SQL 文をデータベースに送信します。また、文オブジェク
トを作成して、SQL 文に対応した適切な方法で実行します。以下のコードは、
Connection.createStatement() メソッドを使用して文オブジェクトを作成する方法を示して
います。
Statement stmt = conn.createStatement();
SELECT 文では、executeQuery() メソッドを使用して、Statement オブジェクトのクエリ
をデータベースに送信します。テーブルを作成、または変更する文の場合は
executeUpdate() を使用します。
以下の例では、まず、1 つの列が指定されている testTable テーブルに、行を 1 行挿入
します。その後、このテーブルに対して SELECT 文を実行します。
int updateCount = stmt.executeUpdate("insert into testTable values(12);");
ResultSet results = stmt.executeQuery("select * from testTable;");
while (results.next()) {
int no = results.getInt(1);
System.out.println(no);
}
results.close();
stmt.close();
前述の例と同様に、SQL 文の結果の処理が終了したら、必ず Statement.close() メソッド
を使用して、この文を実行した Statement オブジェクトを明示的にクローズします。こ
の結果、この SQL 文に割り当てられたリソースの割当てが解除されます。
82
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
サポートされている Statement メソッド
Red Brick JDBC Driver は、Statement インタフェースの主なメソッドをサポートしてい
ます。以下のテーブルに、サポートされていない メソッドを示します。これらのメソッ
ドは実装されていますが、戻り値は NULL または FALSE です。
サポートされていない Statement メソッド
void addBatch(String sql)
void clearBatch()
int[] executeBatch()
int getFetchSize()
void setFetchDirection(int direction)
void setFetchSize(int rows)
void setMaxFieldSize(int max)
ドライバは Statement.execute() メソッドの一部をサポートしています。 Red Brick の実
装では、Statement.execute() は 1 つの ResultSet オブジェクトのみ戻します。 JDBC 2.0
API 仕様では、Statement.execute() は、複数の ResultSet オブジェクトを戻すこともでき
ます。
ResultSet オブジェクトでのクエリ結果の受信
SELECT 文の結果は ResultSet オブジェクトが受け取ります。対応する getXXX() メソ
ッドを使用して、各行の列の値を検索します。 ResultSet.next() メソッドを使用して、以
下の行を検索します。 ResultSet.previous() メソッドは、JDBC 2.0 で適用されるため、
Red Brick JDBC Driver ではサポートしていません。
リザルト セットの処理が終了したら、ResultSet.close() メソッドを使用して、明示的
に、ResultSet オブジェクトをクローズし、このオブジェクトに確定されたリソースの割
当てを解除します。
第 5 章 Red Brick JDBC Driver を使用したプログラミング
83
サポートされている ResultSet メソッド
Red Brick JDBC Driver は、以下のテーブルに示す ResultSet メソッドをサポートして
います。
サポートされている ResultSet メソッド
void clearWarnings()
void close()
int findColumn(String columnName)
すべての getAsciiStream() メソッド
制約事項: 文字 (CHAR) 型データでのみサポートされています。
BigDecimal getBigDecimal(int columnIndex)
BigDecimal getBigDecimal(int columnIndex, int scale) (Deprecated)
BigDecimal getBigDecimal(String columnName)
BigDecimal getBigDecimal(String columnName, int scale) (Deprecated)
すべての getBoolean() メソッド
すべての getByte() メソッド
すべての getCharacterStream() メソッド
int getConcurrency()
String getCursorName()
すべての getDate() メソッド
すべての getDouble() メソッド
すべての getFloat() メソッド
すべての getInt() メソッド
すべての getLong() メソッド
ResultSetMetaData getMetaData()
Object getObject(int columnIndex)
Object getObject(String columnName)
int getRow()
すべての getShort() メソッド
Statement getStatement()
すべての getString() メソッド
84
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
サポートされている ResultSet メソッド
すべての getTime() メソッド
Java の Time クラスの制限により、ドライバは、正確な値を取得できません。たとえ
ば、列の型が Time (4) で、入力する値が 12:13:12.1234 の場合、使用できる time オブ
ジェクトは 12:13:12 のみです。これは、Java の制限であり、getString() メソッドは、
Time 列型に応じて 12:13:12.1234 を戻すように拡張されています。
すべての getTimestamp() メソッド
int getType()
すべての getUnicodeStream() メソッド
(廃止予定)
制約事項: 文字 (CHAR) 型データでのみサポートされています。
SQLWarning getWarnings()
boolean next()
boolean wasNull()
サポートされている ResultSetMetaData メソッド
ResultSetMetaData オブジェクトを使用すると、ResultSet の列の型とプロパティに関す
る情報を取得できます。Red Brick JDBC Driver は、ResultSetMetaData インタフェース
のメソッドをすべてサポートしています。ただし、以下のメソッドは除きます。
String getCatalogName(int column)
このメソッドは実装されていますが、戻り値は空の文字列 (″″) のみです。これは、IBM
Red Brick Warehouse でカタログがサポートされていないためです。
PreparedStatement オブジェクトを使用したクエリの例
PreparedStatement オブジェクトを使用すると、同じ SQL 文をパラメータを変えて何度
も実行できます。また、このオブジェクトはパラメータのない文にも使用できます。
以下の例では、PreparedStatement オブジェクトを使用して、入力パラメータが 1 つある
SELECT 文を実行する方法を示します。
try
{ PreparedStatement pstmt = conn.prepareStatement(
"Select * from T where ColA = ?;");
pstmt.setInt(1, 11);
ResultSet r = pstmt.executeQuery();
while(r.next())
{
short i = r.getShort(1);
第 5 章 Red Brick JDBC Driver を使用したプログラミング
85
System.out.println("Select: column ColA = " + i);
}
r.close();
pstmt.close();
}
catch (SQLException e)
{
System.out.println("ERROR: " + e.getMessage());
}
前述の例と同様に、PreparedStatement オブジェクトを使用して SQL 文を実行したら、
必ず結果の処理が終了した時点で、PreparedStatement.close() メソッドを使用して、明示
的に PreparedStatement オブジェクトをクローズします。この結果、この SQL 文に割り
当てられたリソースの割当てが解除されます。
Red Brick JDBC Driver がサポートする getXXX() のメソッドについては、88 ページの
『サポートされている ResultSet.getXXX() メソッド』を参照してください。
サポートされている PreparedStatement メソッド
Red Brick JDBC Driver は、PreparedStatement インタフェースの大半のメソッドをサポ
ートしています。以下のテーブルに、サポートされていない メソッドを示します。これ
らのメソッドは実装されていますが、戻り値は NULL または FALSE です。
サポートされていない PreparedStatement メソッド
void setBinaryStream(int parameterIndex, InputStream x, int length)
void setBytes(int parameterIndex, byte[] x)
void setClob(int i, Clob x)
void setRef(int i, Ref x)
void setUnicodeStream(int parameterIndex, InputStream x, int length)
データ型のマッピング
このセクションでは Java プログラムで定義されているデータ型と、IBM Red Brick
Warehouse データベースでサポートされるデータ型の間のマッピングについて述べま
す。
IBM Red Brick Warehouse データ型と JDBC データ型のマッピング
データベース製造元が異なると、サポートされる SQL のデータ型も異なるため、JDBC
API では、java.sql.Types クラスで一般的な SQL データ型のセットが定義されていま
す。 JDBC API を使用してデータベースに接続する Java プログラムでは、一般的な
SQL 型を基準とする JDBC API データ型を使用します。
86
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
以下のテーブルは、各 JDBC API データ型がマップされるデータ型を示します。
JDBC API データ型
Red Brick データ型
配列 (ARRAY) 型
大桁整数 (BIGINT)
型
2 進数 (BINARY) 型
ビット (BIT) 型
BLOB 型
文字 (CHAR) 型
CLOB 型
日付 (DATE) 型
10 進数 (DECIMAL)
型
ディスティンクト
(DISTINCT) 型
実数 (DOUBLE) 型
サポートなし
サポートなし
実数 (FLOAT) 型
整数 (INTEGER) 型
整数 (INTEGER) 型
JAVA_OBJECT
ロング可変長バイナリ
(LONGVARBINARY)
型
ロング可変長文字
(LONGVARCHAR) 型
10 進数 (NUMERIC)
型
その他 (OTHER) 型
小桁実数 (REAL) 型
コメント
サポートなし
サポートなし
サポートなし
文字 (CHAR) 型
サポートなし
日付 (DATE) 型
10 進数 (DECIMAL) 型
サポートなし
実数 (DOUBLE PRECISION)
型、実数 (FLOAT) 型
実数 (DOUBLE PRECISION)
型、実数 (FLOAT) 型
整数 (INTEGER) 型
シリアル (SERIAL) 型
Java 整数 (INTEGER) 型に
Red Brick シリアル (SERIAL)
型が含まれているかどうか検
出する場合は、
ResultSetMetaData.is
AutoIncrement() メソッドを呼
び出すことができます。
データ型がシリアル (SERIAL)
型の場合、
ResultSetMetaData.isAuto
Increment() は true を戻しま
す。
サポートなし
サポートなし
サポートなし
10 進数 (DECIMAL) 型
サポートなし
小桁実数 (REAL) 型
第 5 章 Red Brick JDBC Driver を使用したプログラミング
87
JDBC API データ型
Red Brick データ型
REF
小桁整数
(SMALLINT) 型
STRUCT
時刻 (TIME) 型
タイムスタンプ
(TIMESTAMP) 型
小桁整数 (TINYINT)
型
可変長バイナリ
(VARBINARY) 型
可変長文字
(VARCHAR) 型
サポートなし
小桁整数 (SMALLINT) 型
コメント
サポートなし
時刻 (TIME) 型
タイムスタンプ (TIMESTAMP)
型
小桁整数 (TINYINT) 型
サポートなし
可変長文字 (VARCHAR) 型
重要: IBM Red Brick Warehouse では拡張データ型はサポートされていません。
サポートされている ResultSet.getXXX() メソッド
データベースからプログラムにデータを転送するには、ResultSet.getXXX() メソッドを
使用します。たとえば、文字 (CHAR) 型の列に格納されているデータを取得するには、
ResultSet.getString() メソッドを使用します。
以下のテーブルに、Red Brick JDBC Driver がサポートしている ResultSet.getXXX() メ
ソッドを示します。また、java.sql.Types クラスで定義された標準 JDBC API データ型
と、これらのメソッドが対話する方法も示します。前述のテーブルに示したように、
JDBC データ型は Red Brick データ型へマッピングされます。
このテーブルでは、Red Brick JDBC アプリケーションが特定 JDBC データ型の値を取
得するのに使用する推奨 getXXX() メソッドは、セル内の太字フォントの大文字 X で
識別されています。太字でない小文字の x は、getXXX() メソッドが、特定データ型で
使用される場合に、例外をスローせずに、その範囲を超える値を切り捨てることを示し
ます。たとえば、getByte() は、Java 小桁正数 (TINYINT) 型の列の値を取得する推奨メ
ソッドです。 getByte() を使用しても、Java 整数 (INTEGER) 型の列の値を取得できま
す。ただし、最初のバイトを超える非ゼロ値は失われ、このとき例外は生成されませ
ん。
88
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
時刻 (TIME) 型
タイムスタンプ (TIMESTAMP) 型
x
x
x
x
x
x
x
x
x
X
x
x
x
x
1
x
X
x
1
x
getTimestamp()
x
1
x
getAsciiStream()
(deprecated)
x
x
getUnicodeStream()
x
x
getCharacterStream()
x
x
x
x
x
getDouble()
getBigDecimal()
getBoolean()
getString()
2
x
x
x
x
x
x
x
x
X
x
x
x
x
x
x
X
X
x
x
x
x
x
x
X
x
x
x
x
x
x
X
x
x
x
x
x
X
x
x
x
x
x
x
X
x1
x
x
1
x
1
x
1
x
1
x
1
x
1
x
1
x
x
x
x
X
getDate()
x
x
x
x
x
x
x
getTime()
getObject()
x
x
x
x
x
x
x
可変長文字 (VARCHAR) 型
x
getFloat()
x
文字 (CHAR) 型
x
x
10 進数 (NUMERIC) 型
x
getLong()
10 進数 (DECIMAL) 型
x
x
実数 (DOUBLE) 型
x
getInt()
実数 (FLOAT) 型
x
x
小桁実数 (REAL) 型
x
getShort()
整数 (INTEGER) 型
x
X
getByte()
小桁整数 (SMALLINT) 型
x
getXXX() メソッド
小桁整数 (TINYINT) 型
日付 (DATE) 型
java.sql の JDBC API データ型
x
x
X
x
X
x
x2
x
1
列値内のバイト数が、getXXX() メソッドで予測されたバイト数と一致しない場合、
SQLException が生成されます。たとえば、複数の文字が指定された文字 (CHAR) 型列
で getByte() を使用すると、このメソッドは、値を切り捨てるのではなく、例外をスロ
ーします。
2
時刻 (TIME) 型およびタイムスタンプ (TIMESTAMP) 型のスケール値を取得するに
は、getString() メソッドを使用する必要があります。
第 5 章 Red Brick JDBC Driver を使用したプログラミング
89
SQLException クラスによるエラー処理
Java プログラムでは、エラーの処理に JDBC API の SQLException クラスを使用しま
す。
Red Brick JDBC Driver か、データベース サーバのどちらかでエラーが生じると
SQLException が発生します。 SQLException クラスの以下のメソッドを使用して、エラ
ー メッセージのテキスト、エラー コード、および SQLSTATE 値を検索します。
v getMessage()
エラーの内容を戻します。 SQLException は java.util.Throwable クラスからこのメソ
ッドを継承します。
v getErrorCode()
データベース サーバ、またはエラー コードに対応する整数値を戻します。
v getSQLState()
SQLSTATE 値を説明する文字列を戻します。この文字列は X/O pen SQLSTATE 規
則に従います。
Red Brick JDBC Driver が生成するエラー メッセージ、および全データベース メッセ
ージの一覧については、「メッセージおよびコード リファレンス ガイド」を参照して
ください。
次に、try-catch ブロックを使用して Red Brick JDBC Driver やデータベース サーバの
エラーを検出するための SQLException クラスの使用方法の例を示します。
try
{
PreparedStatement pstmt = conn.prepareStatement(
"Select * from T where ColA = ?;");
pstmt.setInt(1, 11);
ResultSet r = pstmt.executeQuery();
while(r.next())
{
short i = r.getShort(1);
System.out.println("Select: column ColA = " + i);
}
r.close();
pstmt.close();
}
catch (SQLException e)
{
System.out.println("ERROR: " + e.getMessage());
}
90
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
グローバル化対応
グローバル化によって、ユーザが所在する国やユーザの言語に関係なくソフトウェアを
開発し、これを複数の国や地域で使用できるようにローカライズできます。 Red Brick
JDBC Driver では、ロケールやコード セットの異なるデータベースへのアクセスを可能
にすることにより、Java JDK 1.2 の国際化機能を拡張します。
グローバル化対応
Java には、グローバル アプリケーションの開発に対応した API のセットが豊富に装備
されています。これらグローバル化に対応した API は Unicode 2.0 のコード セットに
基づいているため、テキスト、数字、日付、通貨、ユーザ定義のオブジェクトを、どの
国の表記方法にも対応させることができます。
グローバル化対応 API は以下の 3 つのパッケージに集約されています。
v java.text パッケージには、ロケールを区別してテキストを扱うためのクラスやイン
タフェースが収録されています。
v java.io パッケージには、Unicode 以外の文字データをインポート、エクスポートす
るための新規のクラスが収録されています。
v java.util パッケージにはロケール クラス、ローカライゼーション サポート クラ
ス、および日付と時刻を扱う新規クラスが収録されています
JDK グローバル化対応の詳細については、以下の Web サイトを参照してください。
http://java.sun.com/
このサイトで globalization を検索してください。
警告: JDK ロケールと JDK コード セットは相互依存しません。これらを常に意識的に
対応させる必要があります。たとえば、日本のロケールである ja_JP を選択した
場合、SJIS コード セットが最適であることを示す Java メソッドは存在しませ
ん。
IBM Red Brick Warehouse ロケール サポート
Java ではグローバルにクライアント ロケールを指定することはできません。デフォル
トのクライアント ロケールを使用するか、I18N 関連メソッドごとにパラメータとして
ロケールを指定する必要があります。Red Brick JDBC Driver は、接続パラメータとし
て CLIENT_LOCALE を指定します。 CLIENT_LOCALE が指定されていない場合は、
Locale.getDefault() で獲得されたデフォルトのロケールを使用します。
CLIENT_LOCALE は、データベースのロケール指定とは異なり、言語とテリトリに関す
る情報のみを含み、コード ページやソート順などに関する情報は含みません。データベ
ースのロケールは、rbw.config ファイルのエントリで指定されます。たとえば、デフォ
ルト ロケール設定は以下のようになります。
第 5 章 Red Brick JDBC Driver を使用したプログラミング
91
NLS_LOCALE LOCALE English_UnitedStates.US-ASCII@Binary
フォーマットは以下のようになります。
language_territory.code_page@sort_order
CLIENT_LOCALE は、データベースに接続されているクライアントのロケールを指定す
る接続パラメータのオプションです。ロケールを指定する場合、フォーマットは
<language_code>_<country_code> となり、language_code には小文字 2 文字のコード、
country_code には大文字 2 文字のコードを指定します。
Red Brick JDBC Driver は CLIENT_LOCALE を使用して、対応するエラー メッセージ
ファイルのみを選択します。たとえば、値が ja_JP であれば、日本語のエラー メッセ
ージ ファイルが選択されます。
クライアント ツールのロケールはアプリケーションによって指定されるプロパティから
決定できます。上記のフォーマットでは、CLIENT_LOCALE がプロパティのエントリで
す。
以下のテーブルに、Red Brick JDBC Driver がサポートしているロケールを示します。
サポートされているロケール
ar_SA
be_BY
bg_BG
ca_ES
cs_CZ
da_DK
de_AT
de_AT_EURO
de_CH
de_DE
de_DE_EURO
el_GR
en_AU
en_CA
en_GB
en_ZA
es_AR
es_CL
es_ES
es_ES_EURO
es_MX
92
et_EE
en_US
fi_FI
fi_FI_EURO
fr_BE
fr_BE_EURO
fr_CA
fr_CH
fr_FR
fr_FR_EURO
hr_HR
hu_HU
it_CH
it_IT
it_IT_EURO
iw_IL
ja_JP
ko_KR
lt_LT
lv_LV
mk_MK
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
nl_BE
nl_BE_EURO
nl_NL
nl_NL_EURO
no_NO
pt_BR
pt_PT
pt_PT_EURO
ro_RO
ru_RU
sh_YU
sk_SK
sl_SL
sq_AL
sr_YU
th_TH
tr_TR
uk_UA
zh_CN
zh_TW
場合により、日付、または数字をデータベースのロケールのフォーマットからクライア
ントのロケールのフォーマットに変換するために、データベースのロケールに相当する
Java ロケール名の取得が必要になることがあります。 rbw.config ファイルに指定さ
れ、RBW_OPTIONS テーブルの DB_LOCALE オプションから取得されるデータベース
のロケールは GlobalC 形式です。 Java がサポートする、GlobalC ロケール コードに相
当するエンコード方法については、 105 ページの『Java 対応エンコードの GlobalC コ
ードへの変換』を参照してください。
取消し処理
JDBC の仕様では、保留中の操作を取り消す機能である、取消し処理をサポートしま
す。アプリケーションの概念としては、同じ Statement オブジェクトまたは ResultSet
オブジェクトは、複数のスレッドを並行して使用する必要はありません。ただし、クエ
リの取消し中、この文オブジェクトは、複数のスレッドで並行して共有でき、
Statement.cancel() の実行に使用できます。
プロセスは以下の方法でクエリを非同期に取り消すことができます。主プロセスがスレ
ッドのインスタンスを生成して、これを Statement オブジェクトに渡し、起動します。
クエリはこのスレッドによって実行されます。
ThreadQueryRunner threadQueryRunner
= new ThreadQueryRunner(
statement, sbuffQuery.toString() );
threadQueryRunner.start();
これにより主プロセスが System.in を読み取って、取消し要求を意味するキー操作があ
ったかどうかを判断できます。キー操作を読み取り、以下のように、文の取消しメソッ
ドを呼び出します。
statement.cancel();
重要: 処理された取消し要求が後続の取消し処理に対するものである場合は、この関数
は何も処理を行わずに戻されます。
取消し処理の例については、demo ディレクトリのサンプル プログラム、
JDBCTestCancelApplet.java を参照してください。
スカラ関数
Red Brick JDBC Driver は数値、文字列、時刻、日付、システム、および変換のスカラ
関数をサポートします。スカラ関数のセマンティクスの詳細については X/Open CLI 仕
様の 「SQL Escape Syntax in Statement Objects」を参照してください。以下のテーブル
はサポートされている数値、文字列、時刻と日付、およびシステム関数の一覧です。
第 5 章 Red Brick JDBC Driver を使用したプログラミング
93
数値関数の名前
関数からの戻り値
ABS(number)
CEILING(number)
FLOOR(number)
LOG(float)
EXP(float)
SIGN(number)
SQRT(float)
number の絶対値
最小の整数 >= number
最大の整数 >= number
float の自然対数
float の対数関数
number が <0 の場合、-1。 number が = 0 の
場合、0。 number が > 0 の場合、1。
float の平方根
文字列関数の名前
関数からの戻り値
CONCAT(string1, string2)
LCASE(string)
LEFT(string, count)
UCASE(string)
string2 を string1 に追加して形成される文字列
string の大文字の文字をすべて小文字に変換
string の左端から count 文字数分を切り出した
文字列
末尾の空白を除く string の文字数
先頭の空白を除く string の文字列
string の右端から count 文字数分を切り出した
文字列
末尾の空白を除く string の文字列
string の start 番めの文字から length 文字数番
めまでを切り出した文字列
string の小文字の文字をすべて大文字に変換
時刻日付関数の名前
関数からの戻り値
CURDATE()
CURTIME()
DAYNAME(date)
DAYOFMONTH(date)
現在の日付を表す日付値
現在の現地時間を表す時間値
date の曜日を表す文字列
date がその月の何日目かを表す 1 から 31 ま
での整数
date がその週の何日目かを表す 1 から 7 まで
の整数
date がその年の何日目かを表す 1 から 366 ま
での整数
time 中の時間の要素を表す 0 から 23 までの
整数
time 中の分の要素を表す 0 から 59 までの整
数
date 中の月の要素を表す 1 から 12 までの整
数
現在の日付と時刻を表すタイムスタンプの値
date 中の月の名前を表す文字列
LENGTH(string)
LTRIM(string)
RIGHT(string, count)
RTRIM(string)
SUBSTRING(string, start, length)
DAYOFWEEK(date)
DAYOFYEAR(date)
HOUR(time)
MINUTE(time)
MONTH(date)
NOW()
MONTHNAME(date)
94
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
時刻日付関数の名前
関数からの戻り値
QUARTER(date)
YEAR(date)
date がその年の第何四半期かを表す 1 から 4
までの整数。 1 は 1 月から 3 月 31 日ま
で。
time 中の秒の要素を表す 0 から 59 までの整
数
interval の count 数を timestamp に加えて計算
したタイムスタンプ。interval は
SQL_TSI_FRAC_SECOND、SQL_TSI_SECOND、
SQL_TSI_MINUTE、SQL_TSI_HOUR、
SQL_TSI_DAY、SQL_TSI_WEEK、
SQL_TSI_MONTH、SQL_TSI_QUARTER また
は SQL_TSI_YEAR のいずれか 1 つ。
timestamp1 の値を timestamp2 が上回る差の
interval の数値を表す整数。 interval は
SQL_TSI_FRAC_SECOND、SQL_TSI_SECOND、
SQL_TSI_MINUTE、SQL_TSI_HOUR、
SQL_TSI_DAY、SQL_TSI_WEEK、
SQL_TSI_MONTH、SQL_TSI_QUARTER また
は SQL_TSI_YEAR のいずれか 1 つ。正常終
了時に、TIMESTAMPDIFF() は値 61 を戻しま
すが、対応する Red Brick SQL datediff() 関数
は -61 を戻します。この違いは、2 つの異なる
標準に準拠したために生じます。IBM Red
Brick Warehouse (datediff()) は Microsoft ODBC
規格を実装しており、Red Brick JDBC Driver
は JDBC 規格に準拠しています。
date がその年の何週目かを表す 1 から 53 ま
での整数
date 中の年の要素を表す整数
システム関数の名前
関数からの戻り値
IFNULL(expression, value)
expression が NULL の場合は value、expression
が NULL でない場合は expression
DBMS のユーザ名
SECOND(time)
TIMESTAMPADD(interval, count,
timestamp)
TIMESTAMPDIFF(interval, timestamp1,
timestamp2)
WEEK(date)
USER( )
第 5 章 Red Brick JDBC Driver を使用したプログラミング
95
変換関数の名前
関数からの戻り値
CONVERT(value, SQLtype)
SQLtype に変換される値。SQLtype は
CHAR、
VARCHAR、DATE、TIME、FLOAT、REAL、
INTEGER、TIMESTAMP、DECIMAL、
SQL_CHAR、SQL_VARCHAR、SQL_DATE、
SQL_TIME、SQL_FLOAT、SQL_REAL、
SQL_INTEGER、SQL_TIMESTAMP、
SQL_DECIMAL のいずれか 1 つ。
ドライバでどの関数がサポートされているかを調べるには、metadata メソッドを呼び出
します。たとえば、以下の呼び出しでは、サポートされている数値、文字列、およびシ
ステムの各関数の一覧を取得できます。
String funcList = dbmd.getNumericFunctions();
String funcList = dbmd.getStringFunctions();
String funcList = dbmd.getSystemFunctions();
トランザクション処理
Red Brick JDBC Driver では、接続は常に AutoCommit モードで行われます。 IBM
Red Brick Warehouse では、COMMIT および ROLLBACK 機能はサポートされていな
いため、COMMIT、ROLLBACK、または setAutoCommit() 関数は無視されます。
ドライバのバージョン番号の取得
Red Brick JDBC Driver の Version X.Y を検索する場合、JDBC API の
Driver.getMajorVersion() メソッドおよび DatabaseMetaData.getDriverMajorVersion() メソ
ッドが値 X を戻します。また、Driver.getMinorVersion() メソッドおよび
DatabaseMetaData.getDriverMinorVersion() メソッドが値 Y を戻します。
サンプル コード ファイル
このセクションでは、Red Brick JDBC Driver に付属するコードの例題を一覧にまとめ
て説明します。例題は以下のディレクトリに格納されています。
UNIX のみ
$JDBC_DRIVER_HOME/demo
$JDBC_DRIVER_HOME は、Red Brick JDBC Driver がインストールされているディレクト
リへのパスです。
96
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
Windows のみ
%RB_JDBC_HOME%¥demo
%JDBC_DRIVER_HOME% は、Red Brick JDBC Driver がインストールされているディレクト
リへのパスです。
Windows のみ の終り
demo ディレクトリにある README ファイルには、さまざまなデモンストレーション フ
ァイル、および例題の実行方法が説明されています。
以下のテーブルでは、コードの例を一覧にまとめ、Java プログラムの名前をあげて、プ
ログラムの動作を簡単に説明します。
第 5 章 Red Brick JDBC Driver を使用したプログラミング
97
デモンストレーション
プログラム名
98
説明
DateSelect.java
ロケール固有の日付フォーマットを使用。関連ファイ
ルと手順の一覧については、README ファイルを参照し
てください。
demo1.java
Red Brick JDBC Driver を使用してサンプル テーブル
を作成し、パラメータを割り当てた SQL 文
(java.sql.PreparedStatement) を使用してデータを格納し
ます。
demo2.java
簡単な SQL クエリ (SELECT *...) を実行し、
ResultSetMetaData とリザルト セットのナビゲーション
方法を使用して結果をテーブルの形式に表示します。
demo3.java
接続するデータベースのメタデータ情報 (データベース
名、バージョン、テーブルなど) を取得します。
demo4.java
プロパティ一覧を使用してデータベース サーバに接続
します。
demo5.java
データベースに接続してクエリを実行する Java アプレ
ットです。
demo6.java
demo1.java が作成したテーブルを削除します。
JDBCTestCancelApplet.java
Red Brick JDBC Driver の取消し処理能力をテストしま
す。
JDBCTestQueryProcessing.java
文の実行方法を説明し、それがクエリか更新かを判断
します。クエリの場合、そのリザルト セットを表示し
ます。更新の場合、その更新カウントを表示します。
JR.java
RMI 接続による Red Brick JDBC Driver の使用方法を
説明します。関連ファイルと手順の一覧については、
README ファイルを参照してください。
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
第 6 章 Red Brick JDBC ツール
Red Brick JDBC Driver をインストールすると、以下に示す GUI 形式の JDBC ツール
もインストールされます。
v JDBC データ ソース アドミニストレータ (rbdsadmin) - JDBC データ ソースを定義
および管理するためのプログラム
v JDBC Ping (rbjping) - Red Brick データベースへの接続状態を検査するためのプログ
ラム
どちらのツールも、UNIX プラットフォームの場合はディレクトリ
$JDBC_DRIVER_HOME/tools、Windows プラットフォームの場合はディレクトリ
%JDBC_DRIVER_HOME%¥tools にインストールされます。
この章では、この 2 つのツールの概要とセットアップ要件について説明します。この章
は以下の 3 つのセクションに分かれています。
v 環境設定
v データ ソース Administrator ツール
v JDBC Ping ツール
各ツールの使用方法の詳細については、ツールを起動し、[Help] メニューの
[Contents] をクリックしてください。
© Copyright IBM Corp. 1996, 2004
99
環境設定
JDBC ツールを使用するには、以下のファイルが Java の環境変数 CLASSPATH で指定
されている必要があります。この環境変数の設定方法については、61 ページを参照して
ください。
jndi.jar
JNDI API。http://java.sun.com/products/jndi からダウンロードでき
ます。
jdbc2_0-stdext.jar
JDBC 2.0 Standard Extension。http://java.sun.com/products/jdbc か
らダウンロードできます。
File System Context Service Provider が含まれている jar ファイ
ルまたは LDAP Service Provider が含まれている jar ファイル。
どちらのファイルも
http://java.sun.com/products/jndi/serviceproviders.html からダウンロ
ードします。
このファイルは、fscontext.jar または ldap.jar とともにダウンロ
ードされます。
fscontext.jar または
ldap.jar
providerutil.jar
データ ソース Administrator ツールを使用してデータ ソースを保存または管理するに
は、事前にファイル java.home/lib/jndi.properties の中で JNDI サービス プロバイ
ダを定義しておく必要があります。(jndi.properties ファイルを作成するには、ディレ
クトリ java.home/lib に対する書込み権限が必要です。) このファイルは、サービス
プロバイダの場所 (File System Context の URL または LDAP の URL)、ファクトリ
クラス名、認証タイプなどの情報を定義するものです。
jndi.properties ファイルの内容を変更するには:
1. データ ソース アドミニストレータを起動します。
2. [Edit] メニューの [Properties] をクリックします。
3. JNDI File System Context Server または JNDI LDAP Server に関する以下のフィー
ルドの値を指定し、[Save] をクリックします。
JNDI File System Context Server:
[JNDI Server URL]
file:///directory_path 例: file:///temp (UNIX の
場合)
[JNDI Service Provider]
com.sun.jndi.fscontext.RefFSContextFactory (リスト ボッ
クスから選択)
ディレクトリ jdbc および jdbc/pool は、[JNDI Server URL] で指定したディレクトリ
の下に作成されます。
100
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
JNDI LDAP Server:
[JNDI Server URL]
ldap://host_pc_name:host_port/o=root_DN
host_pc_name:host_portは LDAP サーバの場所、
root_DN は LDAP ディレクトリ ツリーのルートの名
前です。
[JNDI Service Provider]
com.sun.jndi.ldap.LdapCtxFactory (リスト ボックスから
選択)
[Authentication]
simple
[Username]
LDAP ユーザー名。例: cn=Directory Manager
[Password]
LDAP のパスワード
JDBC ツールでは、LDAP サーバのデータ ソース命名規則がサポートされています。こ
の命名規則では、名前と値のペアをコンマで区切り、名前と値は等号で区切ります。以
下に例を示します。
cn=ds0
cn=ds1, ds=MaryDS
cn=ds2, ou=pool, ou=jdbc
2 つ目と 3 つ目の例のように LDAP データ ソース名に複数の名前/値のペアが含まれ
ている場合には、対応する LDAP ディレクトリ (ds=MaryDS、ou=pool および ou=jdbc)
が LDAP サーバに存在している必要があります。これらの LDAP ディレクトリが存在
していない場合には、データ ソース アドミニストレータからエラーが戻されます。
JNDI プロパティの保存と取得
データ ソース Administrator ツールを使用した場合、以下のファイルに対してデータ
ソースのプロパティが排他的に読み書きされます。
$JAVA_HOME/jre/lib/jndi.properties
Red Brick JDBC Driver (redbrick.jar) によって使用される Java コードでは、以下の
優先順位に従ってプロパティの取得方法がより包括的に定義されています。
1. コンストラクタに設定されたプロパティ
2. アプレットのパラメータ
3. システム プロパティ
4. ファイル jndi.properties の中で設定されたプロパティ
このような優先順位になっているため、たとえば Web サーバで設定されたシステム プ
ロパティは、ファイル jndi.properties の中で設定された値よりも優先されます。
第 6 章 Red Brick JDBC ツール
101
データ ソース Administrator ツール
管理者はこのツールを利用して、JDBC アプリケーションで使用するデータ ソース オ
ブジェクトを作成および管理できます。アプリケーションでは、
DriverManager.getConnection() メソッドを使用する代わりにこれらのデータ ソースを介
してデータベースに接続できます。
このツールを起動するには、UNIX プラットフォームの場合はシェル スクリプト
rbdsadmin.sh、Windows プラットフォームの場合はファイル rbdsadmin.bat を実行し
ます。以下のウィンドウが表示されます。
このツールでは、プールされたデータ ソースおよびプールされていないデータ ソース
に対して、追加、削除、編集、ping コマンド発行の各操作を行うことができます。これ
らの機能の詳細については、オンライン ヘルプを参照してください。
102
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
JDBC Ping ツール
JDBC Ping ツールは、Red Brick データベースへの接続状態を検査します。このツール
を起動するには、UNIX プラットフォームの場合はシェル スクリプト rbjping.sh、
Windows プラットフォームの場合はファイル rbjping.bat を実行します。以下のウィ
ンドウが表示されます。
このツールは、データベース セッション中、またはデータベースに接続する前の状態の
いずれにおいても使用できます。この Ping ツールでは、以下の 3 つの指定のいずれか
に基づいて、Red Brick サーバが稼動しているかどうかを検査します。
v 完全な JDBC URL
v 事前に定義された JDBC データ ソース
v データベース サーバ情報
詳細については、オンライン ヘルプを参照してください。
第 6 章 Red Brick JDBC ツール
103
104
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
付録. Java 対応エンコードの GlobalC コードへの変換
IBM Red Brick Warehouse ロケールは GlobalC フォーマットで指定します。以下のテ
ーブルでは、GlobalC ロケール コードに相当するJava 対応エンコードを説明します。
日付や数値をデータベースのロケールのフォーマットからクライアントのロケールのフ
ォーマットに変換する場合などに、Java ロケール コードが必要になる場合がありま
す。
Java
GlobalC
ASCII
ISO8859_1
ISO8859_2
ISO8859_3
ISO8859_4
ISO8859_5
ISO8859_6
ISO8859_7
ISO8859_8
ISO8859_9
Big5
Cp037
Cp1006
Cp1025
Cp1026
Cp1046
Cp1097
Cp1098
Cp1112
Cp1122
Cp1123
Cp1124
Cp1250
Cp1251
Cp1252
Cp1253
Cp1254
Cp1255
Cp1256
Cp1257
Cp1258
Cp1381
US-ASCII
Latin1
ISO-8859-2
ISO-8859-3
ISO-8859-4
ISO-8859-5
ISO-8859-6
ISO-8859-7
ISO-8859-8
ISO-8859-9
MS950
IBM037
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
MS1250
MS1251
MS1252
MS1253
MS1254
MS1255
MS1256
MS1257
MS1258
N/A
© Copyright IBM Corp. 1996, 2004
105
106
Java
GlobalC
Cp1383
Cp273
Cp277
Cp278
Cp280
Cp284
Cp285
Cp297
Cp33722
Cp420
Cp424
Cp437
Cp500
Cp737
Cp775
Cp838
Cp850
Cp852
Cp855
Cp857
Cp860
Cp861
Cp862
Cp863
Cp864
Cp865
Cp866
Cp868
Cp869
Cp870
Cp871
Cp874
Cp875
Cp918
Cp921
Cp922
Cp930
Cp933
Cp935
Cp937
Cp939
Cp942
Cp948
Cp949
N/A
IBM273
N/A
N/A
IBM280
N/A
IBM285
IBM297
N/A
N/A
N/A
N/A
IBM500
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
MS874
N/A
N/A
N/A
N/A
IBM930
N/A
IBM935
IBM937
N/A
N/A
N/A
MS949
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
Java
GlobalC
Cp950
Cp964
Cp970
EUC_CN
EUC_JP
EUC_KR
EUC_TW
GBK
ISO2022CN
ISO2022CN_CNS
ISO2022CN_GB
ISO2022JP
ISO2022KR
JIS0201
JIS0208
JIS0212
KOI8_R
MS874
MacArabic
MacCentralEurope
MacCroatian
MacCyrillic
MacDingbat
MacGreek
MacHebrew
MacIceland
MacRoman
MacRomania
MacSymbol
MacThai
MacTurkish
MacUkraine
SJIS
UTF8
N/A
N/A
MS950
N/A
N/A
MS936
JapanEUC
MS949
EUC-TW
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
MS874
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
MS932
UTF-8
ISO-8859-15
MS1361
付録. Java 対応エンコードの GlobalC コードへの変換
107
108
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
特記事項
本書は米国 IBM が提供する製品およびサービスについて作成したものであり、本書に
記載の製品、サービス、または機能が日本においては提供されていない場合がありま
す。日本で利用可能な製品、サービス、および機能については、日本 IBM の営業担当
員にお尋ねください。本書で IBM 製品、プログラム、またはサービスに言及していて
も、その IBM 製品、プログラム、またはサービスのみが使用可能であることを意味す
るものではありません。これらに代えて、IBM の知的所有権を侵害することのない、機
能的に同等の製品、プログラム、またはサービスを使用することができます。ただし、
IBM 以外の製品とプログラムの操作またはサービスの評価および検証は、お客様の責任
で行っていただきます。
IBM は、本書に記載されている内容に関して特許権 (特許出願中のものを含む) を保有
している場合があります。本書の提供は、お客様にこれらの特許権について実施権を許
諾することを意味するものではありません。実施権についてのお問い合わせは、書面に
て下記宛先にお送りください。
〒106-0032
東京都港区六本木 3-2-31
IBM World Trade Asia Corporation
Licensing
以下の保証は、国または地域の法律に沿わない場合は、適用されません。 IBM および
その直接または間接の子会社は、本書を特定物として現存するままの状態で提供し、商
品性の保証、特定目的適合性の保証および法律上の瑕疵担保責任を含むすべての明示も
しくは黙示の保証責任を負わないものとします。国または地域によっては、法律の強行
規定により、保証責任の制限が禁じられる場合、強行規定の制限を受けるものとしま
す。
この情報には、技術的に不適切な記述や誤植を含む場合があります。本書は定期的に見
直され、必要な変更は本書の次版に組み込まれます。 IBM は予告なしに、随時、この
文書に記載されている製品またはプログラムに対して、改良または変更を行うことがあ
ります。
本書において IBM 以外の Web サイトに言及している場合がありますが、便宜のため
記載しただけであり、決してそれらの Web サイトを推奨するものではありません。そ
れらの Web サイトにある資料は、この IBM 製品の資料の一部ではありません。それ
らの Web サイトは、お客様の責任でご使用ください。
IBM は、お客様が提供するいかなる情報も、お客様に対してなんら義務も負うことのな
い、自ら適切と信ずる方法で、使用もしくは配布することができるものとします。
© Copyright IBM Corp. 1996, 2004
109
本プログラムのライセンス保持者で、(i) 独自に作成したプログラムとその他のプログラ
ム(本プログラムを含む)との間での情報交換、および (ii) 交換された情報の相互利用
を可能にすることを目的として、本プログラムに関する情報を必要とする方は、下記に
連絡してください。
IBM Corporation
J35/G4
555 Bailey Avenue
San Jose, CA 95141-1003
U.S.A.
本プログラムに関する上記の情報は、適切な使用条件の下で使用することができます
が、有償の場合もあります。
本書で説明されているライセンス・プログラムまたはその他のライセンス資料は、IBM
所定のプログラム契約の契約条項、IBM プログラムのご使用条件、またはそれと同等の
条項に基づいて、 IBM より提供されます。
この文書に含まれるいかなるパフォーマンス・データも、管理環境下で決定されたもの
です。そのため、他の操作環境で得られた結果は、異なる可能性があります。一部の測
定が、開発レベルのシステムで行われた可能性がありますが、その測定値が、一般に利
用可能なシステムのものと同じである保証はありません。さらに、一部の測定値が、推
定値である可能性があります。実際の結果は、異なる可能性があります。お客様は、お
客様の特定の環境に適したデータを確かめる必要があります。
IBM 以外の製品に関する情報は、その製品の供給者、出版物、もしくはその他の公に利
用可能なソースから入手したものです。IBM は、それらの製品のテストは行っておりま
せん。したがって、他社製品に関する実行性、互換性、またはその他の要求については
確証できません。 IBM 以外の製品の性能に関する質問は、それらの製品の供給者にお
願いします。
IBM の将来の方向または意向に関する記述については、予告なしに変更または撤回され
る場合があり、単に目標を示しているものです。
表示されている IBM の価格は IBM が小売り価格として提示しているもので、現行価
格であり、通知なしに変更されるものです。卸価格は、異なる場合があります。
本書には、日常の業務処理で用いられるデータや報告書の例が含まれています。より具
体性を与えるために、それらの例には、個人、企業、ブランド、あるいは製品などの名
前が含まれている場合があります。これらの名称はすべて架空のものであり、名称や住
所が類似する企業が実在しているとしても、それは偶然にすぎません。
著作権使用許諾:
本書には、様々なオペレーティング・プラットフォームでのプログラミング手法を例示
するサンプル・アプリケーション・プログラムがソース言語で掲載されています。お客
110
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
様は、サンプル・プログラムが書かれているオペレーティング・プラットフォームのア
プリケーション・プログラミング・インターフェースに準拠したアプリケーション・プ
ログラムの開発、使用、販売、配布を目的として、いかなる形式においても、IBM に対
価を支払うことなくこれを複製し、改変し、配布することができます。このサンプル・
プログラムは、あらゆる条件下における完全なテストを経ていません。従って IBM
は、これらのサンプル・プログラムについて信頼性、利便性もしくは機能性があること
をほのめかしたり、保証することはできません。お客様は、IBM のアプリケーション・
プログラミング・インターフェースに準拠したアプリケーション・プログラムの開発、
使用、販売、配布を目的として、いかなる形式においても、IBM に対価を支払うことな
くこれを複製し、改変し、配布することができます。
それぞれの複製物、サンプル・プログラムのいかなる部分、またはすべての派生的創作
物にも、次のように、著作権表示を入れていただく必要があります。
© IBM 2004. このコードの一部は、IBM Corp. のサンプル・プログラムから取られ
ています。 © Copyright IBM Corp. 1996-2004. All rights reserved.
この情報をソフトコピーでご覧になっている場合は、写真やカラーの図表は表示されな
い場合があります。
特記事項
111
商標
AIX
IBM Informix SE
C-ISAM
Client SDK
Cloudscape
Cloudsync
DB2
DB2 Universal Database
Distributed Relational Database Architecture
Dynamic Connect
Foundation.2000
IBM
IBM Informix
IBM Informix 4GL
IBM Informix Connect
IBM Informix Data Blade Module
IBM Informix Driver for JDBC
IBM Informix Dynamic Scalable Architecture(DSA)
IBM Informix Dynamic Server
IBM Informix Enterprise Gateway Manager
(Enterprise Gateway Manager)
IBM Informix Extended Parallel Server
IBM Informix SQL
i.Financial Services
InformiXML
J/Foundation
MaxConnect
NUMA-Q
Object Translator
OS/2
OS/390
OS/400
RedBack
Red Brick
SystemBuilder
U2
UniData
UniVerse
Wintegrate
Java およびすべての Java 関連の商標およびロゴは、Sun Microsystems, Inc. の米国およ
びその他の国における商標または登録商標です。
Windows、Windows NT、および Excel は、Microsoft Corporation の米国およびその他の
国における商標です。
UNIX は、The Open Group がライセンスしている米国およびその他の国における登録
商標です。
他の会社名、製品名およびサービス名などはそれぞれ各社の商標または登録商標です。
112
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
索引
日本語, 数字, 英字, 特殊文字の
順に配列されています。なお, 濁
音と半濁音は清音と同等に扱わ
れています。
RBWDriver 72
ResultSet 83
ResultSetMetaData
85
SQLException 90
Types 86
ケース、テクニカル サポートによる
[ア行]
アプレット
データベースへのアクセス
追跡 viii
65
Microsoft Internet Explorer で表示
72
Red Brick JDBC Driver の使用
72
インタフェース 71
エラー処理、JDBC
クラスとインタフェース (続き)
90
オンライン マニュアル
xi
[カ行]
カスタマ サポート vii
環境変数 vi
CLASSPATH 61
ODBC アプリケーションに対する
設定 47
キーワード
構文ダイアグラム vi
クライアント TMU
インストール 4
説明 2
クラスとインタフェース
接続 72
ドライバ 72, 96
文 82
ConnectionEventListener 80
ConnectionPoolDataSource 79
DatabaseMetaData 81, 96
DataSource 71, 76
DriverManager 55, 71, 72
PooledConnection 80
PreparedStatement 85
Properties 75
© Copyright IBM Corp. 1996, 2004
コード セット、ロケールとの同期
91
コード例
JDBC 96
ODBC 49
コア SQL 文法 31
構文ダイアグラム
キーワード
変数 vi
vi
[サ行]
サンプル プログラム
JDBC 96
ODBC 49
システムの要件 v
Client Connector Pack 3
JDBC ドライバ 2
ODBC ドライバ 2
準拠、Red Brick ODBC Driver 11
スカラ関数
JDBC 93
ODBC 32
スレッド セーフ ODBC ドライバ
39, 40
スレッド セーフ ODBClib SDK 41
接続属性
Red Brick ODBC Driver でサポー
ト 17
接続プロパティ 74
設定 75
CLIENT_LOCALE 91
PROXY 76
接続プロパティ (続き)
Red Brick JDBC Driver でサポー
ト 75
ソフトウェアの要件 v
[タ行]
ツール、Red Brick JDBC 99
データ ソース アドミニストレー
タ、JDBC 99
データ ソース、ODBC
UNIX の .odbc.ini ファイルで設
定 45
Windows システム上で設定 6
データ型
Red Brick ODBC Driver によるマ
ッピング 36
Red Brick ODBC Driver 変換関数
35
Red Brick と JDBC のマッピング
86
データベース、リモート アクセス
オプション (JDBC) 65
データベースに接続する URL 構文
(JDBC) 73
データベースへの接続
DataSource オブジェクトを使用
76
DataSource のコード例 77
DriverManager クラスの使用 71
DriverManager のコード例 73,
75
データベースへのリモート アクセス
(JDBC) 65
テクニカル サポート vii
ドライバ インタフェース 72
getMajorVersion() メソッド 96
getMinorVersion() メソッド 96
Red Brick JDBC Driver のバージ
ョン番号の取得 96
トラブルシューティング viii
113
トランザクション処理
取消し処理
メソッド (続き)
96
93
タフェースを使用したアクセス
[ハ行]
15
パラメータの配列 18
パラメータ配列 18
日付/時刻関数、ODBC
プロキシ サーブレット
33
65
変数、構文ダイアグラム
ポート番号 (JDBC) 74
6
vi
[マ行]
Connect ODBC SDK
要件、ソフトウェア
v
トされているメソッド 78
ConnectionEventListener インタフェー
ス
リモート データベース アクセス
65
サポートされているメソッド
xi
コード セットとの同期 91
Java エンコードから GlobalC へ
のマッピング 105
IBM Red Brick Warehouse のリス
ト ix
rbw.config ファイルでの指定
80
ConnectionPoolDataSource インタフェ
ース 79
サポートされている getXXX() メ
ソッドと setXXX() メソッド
79
サポートされているメソッド 80
91
Red Brick JDBC Driver でのサポ
ート 91
71, 76
Connection.createStatement() 82
DatabaseMetaData.
getDriverMajorVersion() 71, 96
DatabaseMetaData.
getDriverMinorVersion() 96
DriverManager.getConnection() 71,
72, 75, 76
DriverManager.registerDriver() 72
Driver.getMajorVersion() 96
Driver.getMinorVersion() 96
PreparedStatement.close() 86
ResultSetMetaData.isAutoIncrement()
ResultSet.close() 83
ResultSet.getString() 85
ResultSet.getTime() 85
ResultSet.getXXX() 88
ResultSet.next() 83
ResultSet.previous() 83
Statement.cancel() 93
Statement.close() 82
Statement.executeQuery() 82
Statement.executeUpdate() 82
37, 48
Connection インタフェース 72
createStatement() メソッド 82
Red Brick JDBC Driver でサポー
[ラ行]
xi
5
3
CLIENT_LOCALE 接続プロパティ
91
ユーザ
種類 v
連絡先情報
ロケール
メソッド
Class.forName()
開始
[ヤ行]
ファイアウォール、データベース ア
クセス 65
太字 vi
114
81
トール
Client Connector Pack のインストー
ル
エラー メッセージ
廃止予定関数、ODBC
マニュアル
オンライン
Client Connector Pack のアンインス
Statement.execute() 83
メタデータ、DatabaseMetaData イン
D
A
Apache HTTP Server
66
C
C コンパイラ
Red Brick ODBClib SDK Driver
でサポート 38
CLASSPATH 環境変数
設定 61
87 JDBC ツール使用時に必要 100
Class.forName() メソッド 71, 76
Client Connector Pack
アンインストール 6
インストール 3
インストール エラー メッセージ
5
コンポーネント 1
システムの要件 3
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
DatabaseMetaData インタフェース
81
サポートされているメソッド 81
getDriverMajorVersion() メソッド
96
getDriverMinorVersion() メソッド
96
Red Brick JDBC Driver のバージ
ョン番号の取得 96
DataDirect Technologies Connect
ODBC SDK 37, 48
DataSource インタフェース 71, 76
Red Brick JDBC Driver でサポー
トされているメソッド 79
Driver Manager での Red Brick
JDBC Driver の登録 72
DriverManager クラス 55, 71, 72
接続の確立 71
getConnection() メソッド 71, 72,
75, 76, 102
DriverManager クラス (続き)
JNDI LDAP Server
Ping ツール (続き)
101
Red Brick JDBC Driver の登録
72
jndi.jar ファイル 100
jndi.properties ファイル
registerDriver() メソッド
JRun エンジン、インストール 66
JServ サーブレット エンジン、イン
72
ストール
F
fscontext.jar ファイル
100
GlobalC、Java ロケール エンコード
のマッピング 105
H
65,
IBM HTTP Server
66
close() メソッド
LDAP Server、JNDI 101
LDAP Service Provider 100
ldap.jar ファイル
PROXY 接続プロパティ
100
R
Microsoft Internet Explorer、アプレッ
トの表示 72
rbdsadmin プログラム 99
rbjping プログラム 99
RBPing、定義 1
RBWDriver クラス
Java Naming and Directory Interface
(JNDI) 71, 77
Java 仮想マシン 61
JDBC API 53
JDBC Ping ツール 99
JDBC 接続プロパティの設定 75
JDBC ツール 99
JDBC データ型、サポート対象 87
JDBC ドライバ 2
JDBC ドライバ、種類 55
JDBC ドライバのグローバル化対応
91
JDBC ドライバの国際化サポート
91
JDBC プロキシ サーブレット
インストール 67
3 層構成 56
jdbc2_0-stdext.jar ファイル 100
JNDI File System Context
Server 100
環境属性 17
ODBC Driver でサポートされている
記述子関数 19
ODBC Driver でサポートされている
記述子ヘッダ フィールドとレコー
ド フィールド 19
ODBC Driver でサポートされている
システム関数 34
ODBC Driver でサポートされている
診断フィールド 22
ODBC Driver でサポートされている
文属性 17
ODBC 関数、ODBC 3.0 で廃止予定
15
ODBC ドライバ 9
ODBClib SDK 37, 51
P
Ping ツール
JDBC 99
86
76
M
ODBC 2.x として動作、
SQL_ATTR_ODBC_VERSION で設
80
86
Properties クラス 75
properties ファイル、JNDI 100
providerutil.jar ファイル 100
定 11
ODBC Driver でサポートされている
J
サポートされているメソッド
PreparedStatement インタフェース
クエリの実行 85
サポートされているメソッド
O
I
ODBC 1
PooledConnection インタフェース
67
L
G
HTTP プロキシ サーブレット
69
100
72
rbw.config ファイル
ポート番号 74
ロケールの指定 91
rb_ctmu プログラム
2
Red Brick JDBC Driver
アプレットでの使用
インストール 57
63, 72
概要 59
サポートされている DataSource
メソッド 79
サポートされているデータ型 87
サンプル コード ファイル 96
システムの要件 2
数値関数 94
スカラ関数 93
接続プロパティ 74, 75
説明 55
データ型マッピング 86
登録 72
トランザクション処理 96
取消し処理 93
バージョン番号の取得 96
日付/時刻関数 94, 95
ファイル 59
ポート番号 74
文字列関数 94
ロード 71
索引
115
Red Brick JDBC Driver (続き)
ResultSet インタフェース (続き)
ロケール サポート 91
Connection メソッド 78
サポートされているメソッド
close() メソッド 83
DataSource オブジェクトを使用し
getString() メソッド
たデータベース接続
85
getTime() メソッド
76, 77
DriverManager を使用したデータ
ベース接続 73, 75
uninstall プログラム
84
サポート対象
88
Red Brick JDBC Driver のインスト
ール 57
Red Brick JDBC Driver のロード
next() メソッド 83
previous() メソッド 83
ResultSetMetaData インタフェース
71
Red Brick ODBC Driver
アプリケーション、環境変数の設
サポートされているメソッド 85
isAutoIncrement() メソッド 87
RISQL エントリ ツールと RISQL レ
定
ポーター、説明
47
記述子関数 19
記述子ヘッダ/レコード フィール
ド 19
コア SQL 文法のサポート 31
サポートされている環境属性 17
サポートされている関数 11
サンプル プログラム
システム関数 34
システムの要件
診断フィールド
49
10
22
数値関数 33
スカラ関数 32
接続属性 17
説明 1, 9
データ型変換関数 35
データ型マッピング 36
日付/時刻関数 33
文属性 17
文字列関数 32
要件 2
API に準拠 11
Red Brick ODBClib SDK 37, 51
環境変数 47
コンパイルとリンク 40
使用 38
情報タイプの戻り値 48
ソフトウェア ファイル 39
ヘッダ ファイル 40
ライブラリ ファイル 40
C コンパイラ 38
ResultSet インタフェース 83
116
1
RISQL レポーター、説明
91
uninstall プログラム
Client Connector Pack
Setup ユーティリティ
説明 3
ファイルをコピー 3
SQL 文、JDBC を使用したデータベ
31
SQLException クラス
エラー処理 90
サポートされているメソッド 90
SQLGetInfo
ODBC Driver でサポートされて
いる情報タイプ 22
Statement インタフェース
サポートされているメソッド 83
データベースへの SQL 文の送信
82
cancel() メソッド 93
close() メソッド 82
executeQuery() メソッド 82
executeUpdate() メソッド 82
execute() メソッド 83
T
Types クラス
一般的な SQL データ型
86
IBM Red Brick Warehouse: クライアント インストールおよび接続ガイド
6
63
W
WebSphere Application Server
[特殊文字]
.odbc.ini ファイル
サンプル 46
ODBC データ ソース
2
S
ースへの送信 82
SQL 文法のサポート
Unicode
JDBC ドライバ
制限 85
getXXX() メソッド
63
U
45
66
򔻐򗗠򙳰
Printed in Japan
GC88-9939-00
Fly UP