...

SQL Server - PowerBuilder

by user

on
Category: Documents
82

views

Report

Comments

Transcript

SQL Server - PowerBuilder
デー タ ベース と の接続
InfoMaker®
11.5
DOCUMENT ID: DC37791-01-1150-01
LAST REVISED: September 2008
Copyright © 2008 by Sybase, Inc. All rights reserved.
本書は Sybase ソ フ ト ウ ェ アの付属マニ ュ アルで あ り 、 新 し いマニ ュ アル ま たはテ ク ニ カル ノ ー ト で特に示 さ れないかぎ
り 、 後続の リ リ ース に も 付属 し ます。 こ のマニ ュ アルの内容は、 予告な く 変更 さ れ る こ と があ り ますが、 Sybase,Inc. お よ
びその関連会社では内容の変更に関 し て一切の責任を負い ません。 こ のマニ ュ アルに記載 さ れてい る ソ フ ト ウ ェ アは ラ イ
セ ン ス契約に基づいて提供 さ れ る も のであ り 、 無断で使用す る こ と はで き ません。
予定 し た ソ フ ト ウ ェ アの リ リ ース日にのみア ッ プグ レー ド を提供 し ます。 本書に記載 さ れてい る 内容は、 Sybase, Inc. お よ
びその関連会社の書面に よ る 事前許可を得ずに、 電子的、 機械的、 手作業、 光学的、 ま たはその他のいかな る 手段に よ っ
て も 複製、 転載、 翻訳す る こ と を禁 じ ます。
Sybase の商標は Sybase の商標ページ のサイ ト http://www.sybase.com/detail?id=1011207 に記載 さ れてい ます。 記載の Sybase お よ
びマー ク は Sybase, Inc の商標です。 ® はア メ リ カ合衆国におけ る 登録商標を示 し ます。
Java お よ びすべての Java ベース のマー ク は、 米国お よ び他国におけ る Sun Microsystems, Inc. の商標ま たは登録商標です。
Unicode お よ び Unicode の ロ ゴは Unicode, Inc. の登録商標です。
本書で記載 さ れてい る 上記以外の社名お よ び製品名は、 各社の商標ま たは登録商標の場合があ り ます。
本書に記載 さ れてい る 内容は、 将来予告な し に変更す る こ と があ り ます。 ま た、 本 ソ フ ト ウ ェ アお よ び説明書を使用 し た
こ と に よ る 損害、 ま たは第三者か ら のいかな る 請求について も 、 サ イ ベース株式会社、 その親会社であ る 米国法人 Sybase,
Inc. ま たはその関連会社は、 一切の責任を負わない も の と し ます。
目次
本書について .................................................................................................................................. ix
第1部
デー タ ベース接続に関する作業
第1章
デー タ ベース と の接続について ............................................................................ 3
デー タ ベース と の接続の手順 .......................................................... 3
InfoMaker でのデー タ ア ク セス方法................................................. 5
EAS Demo DB へのア ク セス ........................................................... 6
デー タ ベース プ ロ フ ァ イルの使い方............................................... 6
デー タ ベース プ ロ フ ァ イルの作成について ............................. 7
デー タ ベース プ ロ フ ァ イルの作成 ......................................... 10
次のス テ ッ プ .................................................................................. 12
第2部
標準デー タ ベース イ ン タ フ ェ ースの使い方
第2章
ODBC イ ン タ フ ェ ース ............................................................................................. 15
ODBC イ ン タ フ ェ ースについて .................................................... 15
ODBC と は ?........................................................................... 16
InfoMaker での ODBC の使い方 ............................................. 17
ODBC 接続の コ ンポーネ ン ト ................................................. 17
ODBC ド ラ イバの種類 ............................................................ 19
ODBC ド ラ イバの合致レ ベル ................................................. 21
ODBC ド ラ イバの入手 ............................................................ 23
ODBC ド ラ イバに関するヘルプ情報を入手するには ............. 23
ODBC デー タ ソ ースの準備 .......................................................... 24
ODBC デー タ ソ ースの定義 .......................................................... 25
InfoMaker がデー タ ソ ースへのア ク セスに必要な フ ァ イル... 25
同一デー タ に対する複数のデー タ ソ ースの定義.................... 28
ODBC ド ラ イバに関するオ ン ラ イ ンヘルプの表示................. 28
ODBC ト ラ ン ス レー タ の選択 ................................................. 29
ODBC イ ン タ フ ェ ースの定義 ........................................................ 30
Sybase SQL Anywhere .................................................................. 30
デー タ ベース と の接続
iii
目次
SQL Anywhere でサポー ト し ているバージ ョ ン .....................
SQL Anywhere の基本ソ フ ト ウ ェ ア コ ンポーネ ン ト .............
SQL Anywhere デー タ ソ ース を使用する ための準備.............
SQL Anywhere デー タ ソ ースの定義......................................
Transact-SQL の特殊な timestamp カ ラ ムのサポー ト ...........
次のス テ ッ プ ...........................................................................
31
31
32
33
35
36
第3章
JDBC イ ン タ フ ェ ース .............................................................................................. 37
JDBC イ ン タ フ ェ ースについて ..................................................... 37
JDBC と は ? ............................................................................ 37
JDBC 接続の コ ンポーネ ン ト .................................................. 38
JDBC レ ジ ス ト リ エ ン ト リ ..................................................... 40
JDBC でサポー ト し ているバージ ョ ン .................................... 41
サポー ト し ている JDBC デー タ 型.......................................... 41
JDBC イ ン タ フ ェ ース を使用する ための準備................................ 41
JDBC イ ン タ フ ェ ースの定義......................................................... 43
第4章
OLE DB イ ン タ フ ェ ース ......................................................................................... 45
OLE DB イ ン タ フ ェ ースについて ................................................. 45
OLE DB と は ? ........................................................................ 46
OLE DB 接続の コ ンポーネ ン ト .............................................. 48
OLE DB デー タ プ ロバイ ダの入手.......................................... 49
サポー ト し ている OLE DB のバージ ョ ン ............................... 49
OLE DB イ ン タ フ ェ ース を使用する ための準備............................ 50
OLE DB イ ン タ フ ェ ースの定義 ..................................................... 52
第3部
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースの使い方
第5章
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースの使い方 ................................ 57
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースについて ...................... 57
デー タ ベース イ ン タ フ ェ ース接続の コ ンポーネ ン ト ................... 58
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースの使い方 ...................... 59
第6章
Adaptive Server Enterprise の使い方 ........................................................... 63
サポー ト し ている Adaptive Server のバージ ョ ン ......................... 63
サポー ト し ている Adaptive Server デー タ 型 ................................ 64
Adaptive Server の基本ソ フ ト ウ ェ ア コ ンポーネ ン ト .................. 67
Adaptive Server デー タ ベース を使用する ための準備 ................... 67
Adaptive Server デー タ ベース イ ン タ フ ェ ースの定義 .................. 70
Open Client のセキ ュ リ テ ィ サービ ス........................................... 71
Open Client のセキ ュ リ テ ィ サービ ス と は ?.......................... 71
iv
InfoMaker
目次
第7章
第8章
デー タ ベース と の接続
Open Client のセキ ュ リ テ ィ サービ ス を
使用する ための条件 .........................................................
セキ ュ リ テ ィ サービ スの DBParm パラ メ ー タ ......................
Open Client のデ ィ レ ク ト リ サービ スの使い方 ............................
Open Client のデ ィ レ ク ト リ サービ ス と は ?..........................
Open Client のデ ィ レ ク ト リ サービ ス を
使用する ための条件 .........................................................
Open Client のデ ィ レ ク ト リ サービ ス を
使用する場合のサーバ名の指定 .......................................
デ ィ レ ク ト リ サービ スの DBParm パラ メ ー タ ......................
Adaptive Server ス ト ア ド プ ロ シージ ャ における
PRINT 文の使い方............................................................
デー タ ベース間の結合に基づ く レポー ト の作成............................
Adaptive Server デー タ ベースにおける
ス ト ア ド プ ロ シージ ャのイ ン ス ト ール ...........................
InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ プ ト と は ? .............
ス ク リ プ ト の実行方法 ............................................................
77
78
81
Informix の使い方 ......................................................................................................
サポー ト し ている Informix のバージ ョ ン ......................................
サポー ト し ている Informix デー タ 型 .............................................
Informix の DateTime デー タ 型 ...............................................
Informix の Time デー タ 型.......................................................
Informix の Interval デー タ 型...................................................
I10 イ ン タ フ ェ ースでサポー ト し ている機能 ................................
Unicode デー タ へのア ク セス ..................................................
InfoMaker カ タ ロ グ テーブルへのオーナーの割 り 当て ..........
長いオブ ジ ェ ク ト 名のサポー ト ..............................................
イ ンデ ッ ク スの名前変更.........................................................
SQL ス テー ト メ ン ト キ ャ ッ シ ュ ............................................
ロ ッ クせずに イ ンデ ッ ク スの作成 と 削除................................
カ ラ ム レ ベルの暗号化 ...........................................................
ユーザ定義ルーチ ン での複数の OUT パ ラ メ ー タ の使い方 ....
Informix の基本 ソ フ ト ウ ェ ア コ ンポーネ ン ト ...............................
Informix デー タ ベース を使用する ための準備 ................................
Informix デー タ ベース イ ン タ フ ェ ースの定義...............................
サーバ名の指定 .......................................................................
85
86
86
87
87
88
88
89
90
90
90
91
91
92
92
93
95
96
71
72
73
74
74
75
76
77
77
85
Microsoft SQL Server の使い方 ....................................................................... 97
サポー ト し ている SQL Server のバージ ョ ン ................................ 97
サポー ト し ている SQL Server デー タ 型 ....................................... 98
Microsoft SQL Server の基本ソ フ ト ウ ェ ア コ ンポーネ ン ト ......... 99
SQL Server デー タ ベース を使用する ための準備 ........................ 100
v
目次
第9章
SQL Server デー タ ベース イ ン タ フ ェ ースの定義.......................
MSS や OLE DB デー タ ベース イ ン タ フ ェ ースか ら の移行........
SQL Server 2005 の機能..............................................................
SQL Server 2008 の機能..............................................................
新 し いデー タ ベース パ ラ メ ー タ ...........................................
SQL Server 2008 の新 し いデー タ 型のサポー ト ...................
T-SQL の拡張機能.................................................................
未サポー ト の SQL Server 2008 の機能 ................................
SNC イ ン タ フ ェ ース使用時の注意事項.......................................
102
103
106
107
107
108
113
115
115
Oracle の使い方........................................................................................................
サポー ト し ている Oracle のバージ ョ ン ......................................
サポー ト し ている Oracle デー タ 型 .............................................
Oracle の基本 ソ フ ト ウ ェ ア コ ンポーネ ン ト ...............................
Oracle デー タ ベース を使用する ための準備 ................................
Oracle デー タ ベース イ ン タ フ ェ ースの定義 ...............................
Oracle サーバの接続記述子の指定........................................
デー タ ソ ース と し ての Oracle ス ト ア ド プ ロ シージ ャ の
使い方.............................................................................
Oracle ス ト ア ド プ ロ シージ ャ と は? ...................................
Oracle ス ト ア ド プ ロ シージ ャ で可能な作業 ........................
Oracle で結果集合を返すス ト ア ド プ ロ シージ ャ の使い方...
ラ ージ オブ ジ ェ ク ト 出力パラ メ ー タ の使用 .........................
Oracle ユーザ定義デー タ 型の使い方 ...........................................
ORA ド ラ イバに よ る Oracle 11g の機能のサポー ト ...................
117
117
118
121
122
127
127
第4部
デー タ ベース接続に関する作業
第 10 章
デー タ ベース接続の管理 ......................................................................................
デー タ ベース と の接続について ...................................................
デー タ ベース と の接続 タ イ ミ ン グ ........................................
デー タ ベース プ ロ フ ァ イルの使い方....................................
デー タ ベース と の接続 .................................................................
デー タ ベース プ ロ フ ァ イルの選択 .......................................
接続時の処理.........................................................................
デー タ ベース プ ロ フ ァ イルでのパスワー ド の指定 ..............
デー タ ベース プ ロ フ ァ イルの管理 ..............................................
デー タ ベース プ ロ フ ァ イルの共有 ..............................................
共有デー タ ベース プ ロ フ ァ イルについて.............................
共有デー タ ベース プ ロ フ ァ イルの設定 ................................
共有デー タ ベース プ ロ フ ァ イルを使用 し た接続..................
ロー カルで共有デー タ ベース プ ロ フ ァ イルを変更する .......
vi
128
128
129
129
132
133
135
141
141
142
143
144
144
146
147
147
148
149
149
150
151
InfoMaker
目次
共有デー タ ベース プ ロ フ ァ イルの管理 ................................
デー タ ベース プ ロ フ ァ イルのイ ンポー ト と エ ク スポー ト ..........
InfoMaker 拡張属性シ ス テム テーブルについて..........................
デー タ ベースへの初めてのロ グ イ ン .....................................
InfoMaker 拡張属性シ ス テム テーブルの表示 ......................
拡張属性シ ス テム テーブルの内容 .......................................
シ ス テム テーブルへのア ク セスの制御 ................................
152
153
154
154
155
157
158
第 11 章
接続パ ラ メ ー タ の追加設定.................................................................................
接続パラ メ ー タ を設定する ための基本手順.................................
DB プ ロ フ ァ イル設定 ダ イ ア ログボ ッ ク スについて ...................
デー タ ベース パ ラ メ ー タ の設定 ..................................................
開発環境でのデー タ ベース パラ メ ー タ の設定 .....................
デー タ ベース環境設定項目の設定 ...............................................
開発環境でのデー タ ベース環境設定項目の設定...................
161
161
162
163
163
164
164
第 12 章
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ン グ...........................
ト ラ ブルシ ュ ーテ ィ ング ツールの概要 .......................................
デー タ ベース ト レース ツールの使い方 ......................................
デー タ ベース ト レース ツール..............................................
デー タ ベース ト レース ツールの起動...................................
デー タ ベース ト レース ツールの停止...................................
デー タ ベース ト レース ログの使い方...................................
デー タ ベース ト レース ログのサン プル ...............................
ODBC ド ラ イバ マネージ ャ ト レース ツールの使い方 ...............
ODBC ド ラ イバ マネージ ャ ト レース ..................................
ODBC ド ラ イバ マネージ ャ ト レースの起動 .......................
ODBC ド ラ イバ マネージ ャ ト レースの停止 .......................
ODBC ド ラ イバ マネージ ャ ト レース ログの表示 ................
ODBC ド ラ イバ マネージ ャ ト レース ログのサン プル .........
JDBC ド ラ イバ マネージ ャ ト レース ツールの使い方 ................
JDBC ド ラ イバ マネージ ャ ト レース ...................................
JDBC ド ラ イバ マネージ ャ ト レースの起動 ........................
JDBC ド ラ イバ マネージ ャ ト レースの停止 .........................
JDBC ド ラ イバ マネージ ャ ト レース ログの表示 .................
171
171
172
172
176
177
178
180
181
181
182
184
185
185
186
186
187
189
189
デー タ ベース と の接続
vii
目次
第5部
付録
付録 A
PBODB115 初期設定フ ァ イルへの関数の追加 .......................................
PBODB115 初期設定 フ ァ イルについて ......................................
PBODB115.INI への関数の追加...................................................
既存のセ ク シ ョ ンへの関数の追加 ........................................
新 し いセ ク シ ョ ンへの関数の追加 ........................................
193
193
194
194
197
索引 ............................................................................................................................................. 201
viii
InfoMaker
本書について
対象 と する読者
こ のマニ ュ アルは、 InfoMaker® を使用 し てデー タ ベース に接続す
る 開発者やエ ン ド ユーザ を 対象 と し て い ま す。 読者が使用す る
デー タ ベー ス に詳 し く 、 ま た、 接続に必要なサーバや ク ラ イ ア ン
ト の ソ フ ト ウ ェ アがすでに イ ン ス ト ール さ れてい る も の と し てい
ます。
目的
こ のマニ ュ アルでは、標準ま たはネ イ テ ィ ブ デー タ ベース イ ン タ
フ ェ ー ス を使用 し て InfoMaker でデー タ ベー ス に接続す る 方法に
ついて解説 し てい ます。デー タ ベース接続のための準備、定義、接
続の方法のほか、 メ ン テナン ス や ト ラ ブルシ ュ ーテ ィ ン グの方法
について説明 し てい ま す。 こ れ ら の操作を行 う 手順の概要につい
ては、 3 ページの 「基本的な接続手順」 を参照 し て く だ さ い。
関連マニ ュ アル
サポー ト さ れてい る デー タ ベース イ ン タ フ ェ ース、 DBParm パ ラ
メ ー タ 、 デー タ ベー ス 環境設定項目の詳細については、 オ ン ラ イ
ン ヘルプのデー タ ベース接続に関す る セ ク シ ョ ン を参照 し て く だ
さ い。 InfoMaker
の す べ て の マ ニ ュ ア ル の 一 覧 に つ い て は、
InfoMaker の 『入門』 マニ ュ アルを参照 し て く だ さ い。
そのほかの参考資料
製品に関す る そ の ほ か の詳細情報につい て は、 InfoMaker DVD、
N D ソ フ ト ウ ェ ア Web サ イ ト 、お よ び Sybase 製品マニ ュ アル Web
サ イ ト (英語) を参照 し て く だ さ い。
デー タ ベース と の接続
•
InfoMaker DVD には、製品マニ ュ アルが収め ら れてい ます。製
品マニ ュ アルは、 PDF 形式で提供 し てい ます。 PDF フ ァ イ ル
を読んだ り 、 印刷 し た り す る には、 Adobe Acrobat Reader が必
要です。 Adobe Acrobat Reader は、 Adobe Web サ イ ト か ら 無料
でダ ウ ン ロ ー ド す る こ と がで き ます。
•
N D ソ フ ト ウ ェ ア Web サ イ ト には、標準の Web ブ ラ ウ ザでア
ク セ ス す る こ と がで き る オ ン ラ イ ン版のマ ニ ュ アルが あ り ま
す。 こ の Web サ イ ト では、 PDF お よ び HTML 形式でマニ ュ ア
ルを見 る こ と がで き ます。
•
Sybase 製品マニ ュ アル Web サ イ ト (英語) は標準の Web ブ ラ
ウ ザか ら ア ク セ ス で き ます。 製品マニ ュ アルのほか、 EBF/ メ
ン テナン ス、技術文書、 ケース マネジ メ ン ト 、解決済みのケー
ス、ニ ュ ース グループ、お よ び Sybase 開発者ネ ッ ト ワー ク (英
語) への リ ン ク があ り ます。
ix
Sybase 製品マニ ュ アル Web サ イ ト (英語) には、 製品マニ ュ アル の
サイ ト http://www.sybase.com/support/manuals/ か ら ア ク セ ス で き ます。
表記規則
こ のマニ ュ アルでは、 以下の表記規則を使用 し ます。
例
説明
Retrieve と Update
左記の フ ォ ン ト が説明文で使用 さ れてい る 場合、以下
を表す
• コ マ ン ド 名、 関数名、 メ ソ ッ ド 名
• キー ワー ド (true、 false、 null な ど)
• デー タ 型 (Integer 型、 Char 型な ど)
• デー タ ベース カ ラ ム名 (emp_id、 f_name な ど)
変数 (variable) ま たは
フ ァ イ ル名(file name)
• ユーザ定義オブジ ェ ク ト (dw_emp、 w_main な ど)
説明文 と 構文の説明で使用 さ れ て い る 場合、 斜体
フ ォ ン ト は次のいずれか を表す
• 変数 (myCounter な ど)
• 代入が必要な入力テ キ ス ト 部分 (pblname.pbd な
ど)
[フ ァ イ ル|上書 き 保
存]
dw_1.Update()
• フ ァ イ ル と パ ス名
メ ニ ュ ー名 と メ ニ ュ ー項目は単純な テ キ ス ト で表
示 さ れ る 。 「|」 は、 選択の移動の仕方 メ ニ ュ ーを
示す。た と えば、「フ ァ イ ル|上書 き保存」 は、「[フ ァ
イ ル] メ ニ ュ ーか ら [上書き 保存] を選択す る」 と
同じ
左記の フ ォ ン ト は以下のいずれか を示す
• ダ イ ア ロ グボ ッ ク ス ま たは コ マ ン ド ラ イ ンに入
力す る情報
• サンプル ス ク リ プ ト の一部
• サンプル出力の一部
サポー ト について
x
「サポー ト ハン ド ブ ッ ク 」 を参照 し て く だ さ い。
InfoMaker
第
1
部
デー タ ベース接続に関する作
業
第 1 部では、 InfoMaker でのデー タ 接続について解説 し ま
す。 InfoMaker 開発環境でデー タ ベースに接続す る方法を
理解する こ と がで き ます。
第 1 章
デー タ ベース と の接続について
こ の章について
こ の章では、InfoMaker 開発環境でデー タ ベース に接続す る ための
概念や手順について、 その概要を解説 し ます。
内容
項目
デー タ ベース と の接続の手順
InfoMaker でのデー タ ア ク セ ス方法
EAS Demo DB へのア ク セ ス
デー タ ベース プ ロ フ ァ イ ルの使い方
次の ス テ ッ プ
ページ
3
5
6
6
12
デー タ ベース と の接続の手順
こ のマニ ュ アルでは、InfoMaker 開発環境におけ る デー タ ベースへ
の接続方法について解説 し ます。
基本的な接続手順
デー タ ベース と の接続
以下の表に、 接続手順の概略、 それぞれの ス テ ッ プの内容や参照
先を示 し ます。
3
デー タ ベース と の接続の手順
表 1-1: 基本的な接続手順
ステ ッ プ
1
概要
(オプシ ョ ン) InfoMaker に
お け る デー タ ベー ス 接続
の概要
2
InfoMaker でデー タ ソ ース
やデー タ ベース に初めて
接続す る 前に、 デー タ
ソ ースやデー タ ベース を
使用す る ための準備
内容
必要に応 じ て、 InfoMaker が
ど の よ う に デー タ ベー ス に
接続す る か に つ い て 学習す
る
接続に必要な ネ ッ ト ワ ー ク 、
デー タ ベース サーバ、お よ び
デー タ ベー ス ク ラ イ ア ン ト
ソ フ ト ウ ェアをインス ト ー
ル し 、 デー タ ベース に接続で
き る こ と を確認する
参照先
第 1 章 ( こ の章)
ODBC デー タ ソ ース について
は、 第 2 章 「ODBC イ ン タ
フ ェース」
JDBC デー タ ソ ース について
は、 第 3 章 「JDBC イ ン タ
フ ェース」
OLE DB デー タ ソ ース につい
ては、 第 4 章 「OLE DB イ ン タ
フ ェース」
ネ イ テ ィ ブ デー タ ベース イ ン
タ フ ェース については、 第 5
章 「ネ イ テ ィ ブ デー タ ベース
イ ン タ フ ェース の使い方」
3
4
5
デー タ ア ク セ ス に必要 な
ド ラ イ バ、デー タ ベース プ
ロ バ イ ダ、 ま たはネ イ テ ィ
ブ デー タ ベー ス イ ン タ
フ ェ ー ス を イ ン ス ト ール
する
デー タ ソ ー ス の定義
(ODBC 接続 と 一部の OLE
DB ド ラ イ バの場合)
デー タ ベース イ ン タ
フ ェ ース の定義
ODBC ド ラ イ バ、 OLE DB 使用す る プ ラ ッ ト フ ォ ー ム で
デー タ プ ロ バ イ ダ、 ま たはネ サ ポー ト さ れ る デー タ ベー ス
イ テ ィ ブ デー タ ベー ス イ ン イ ン タ フ ェ ー ス な ど につい て
タ フ ェ ー ス を イ ン ス ト ール は、 オ ン ラ イ ン ヘルプ の 「サ
する
ポ ー ト し て い る デー タ ベー ス
イ ン タ フ ェース」
ODBC 経由 で ア ク セ ス す る ODBC デー タ ソ ース について
デー タ ソ ー ス に必要 な 設定 は、 第 2 章 「ODBC イ ン タ
を作成す る
フ ェース」
デー タ ベー ス プ ロ フ ァ イ ル ODBC デー タ ソ ース について
を作成す る
は、 第 2 章 「ODBC イ ン タ
フ ェース」
JDBC デー タ ソ ース について
は、 第 3 章 「JDBC イ ン タ
フ ェース」
OLE DB デー タ ソ ース につい
ては、 第 4 章 「OLE DB イ ン タ
フ ェース」
6
4
デー タ ソ ー ス ま た はデー
タ ベース と の接続
InfoMaker か ら デー タ に ア ク
セ スす る
ネ イ テ ィ ブ デー タ ベース イ ン
タ フ ェース については、 第 5
章 「ネ イ テ ィ ブ デー タ ベース
イ ン タ フ ェース の使い方」
第 10 章 「デー タ ベース接続の
管理」
InfoMaker
第1章
ステ ッ プ
7
8
概要
(オ プ シ ョ ン) 接 続 パ ラ
メ ー タ の追加設定
(オプ シ ョ ン) デー タ ベー
ス 接続 に 関す る ト ラ ブ ル
シ ュ ーテ ィ ン グ
内容
必要に応 じ て、 デー タ ベース
接続を円滑に し た り 、 使用す
る イ ン タ フ ェ ー ス でサポー
ト さ れ て い る DBMS 固有の
機能 を 利用 し た り す る た め
にデー タ ベー ス パ ラ メ ー タ
やデー タ ベー ス 環境 を 設定
する
必要に応 じ て、 ト レース ツー
ルを使用 し て、 接続に関す る
ト ラ ブルシ ュ ーテ ィ ン グ を
行う
デー タ ベース と の接続について
参照先
操作手順については、 第 11 章
「接続パ ラ メ ー タ の追加設定」
デー タ ベース パ ラ メ ー タ お よ
びデー タ ベース環境設定の解
説については、 オン ラ イ ン ヘ
ルプ
第 12 章 「デー タ ベース接続に
関す る ト ラ ブルシ ュ ーテ ィ ン
グ」
InfoMaker でのデー タ ア ク セス方法
InfoMaker 開発環境では、 以下の方法でデー タ にア ク セ ス で き ます。
標準デー タ ベース イ
ン タ フ ェ ース
•
ODBC、 JDBC、 ま たは OLE DB な ど の標準デー タ ベース イ ン タ
フ ェース を経由す る 方法
•
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ース を経由す る 方法
標準デー タ ベース イ ン タ フ ェース は、 標準準拠 ド ラ イ バ (ODBC お よ
び JDBC の場合)、 ま たはデー タ プ ロ バ イ ダ (OLE DB の場合) を経由
し てデー タ ベース と 通信 し ます。 標準準拠 ド ラ イ バ ま たはデー タ プ ロ
バ イ ダは、 標準の API に よ っ て定義 さ れ る 抽象的な関数呼び出 し を、
それぞれのデー タ ベー ス が解釈で き る 関数呼び出 し に変換 し ます。 標
準デー タ ベース イ ン タ フ ェース を使用す る には、 まず標準の API と 適
切な ド ラ イ バ ま たはデー タ プ ロ バ イ ダ を イ ン ス ト ールす る 必要が あ
り ます。 次に、 InfoMaker セ ッ ト ア ッ プ プ ロ グ ラ ム で、 DBMS にア ク
セ スす る のに使 う 標準デー タ ベース イ ン タ フ ェース を選択 し 、 イ ン ス
ト ールす る 必要があ り ます。
InfoMaker は、現時点で以下の標準 イ ン タ フ ェース をサポー ト し てい ま
す。
デー タ ベース と の接続
•
Open Database Connectivity (ODBC)
•
Java Database Connectivity (JDBC)
•
Microsoft 社製 Universal Data Access Component OLE DB
5
EAS Demo DB へのア ク セス
ネ イ テ ィ ブ デー タ
ベース イ ン タ フ ェ ー
ス
ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス は直接接続でデー タ ベー ス
と 通信 し ま す。 デー タ ベー ス と の通信には そ のデー タ ベー ス の ネ イ
テ ィ ブな API を使い ます。
ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を経由 し てデー タ にア ク セ
スす る には、 自分のサ イ ト のサーバや ク ラ イ ア ン ト ワ ー ク ス テーシ ョ
ンに、 適切なデー タ ベース ソ フ ト ウ ェ ア を あ ら か じ め イ ン ス ト ール し
ます。 次に、 InfoMaker セ ッ ト ア ッ プ プ ロ グ ラ ム で、 DBMS にア ク セ
スす る ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ース を選択 し 、 イ ン ス ト ー
ル し ます。
た と えば、 Sybase Adaptive Server® Enterprise のサーバお よ び ク ラ イ ア
ン ト ソ フ ト ウ ェ アが イ ン ス ト ール さ れてい る 場合は、 Adaptive Server
Enterprise デー タ ベース イ ン タ フ ェ ース を イ ン ス ト ール し て、そのデー
タ ベース にア ク セ ス し ます。
ほかの製品に付属の
InfoMaker
お使いの InfoMaker がほかの製品に付属 し て い たバージ ョ ン の場合、
デー タ ベース接続機能についての詳細はヘルプ を参照 し て く だ さ い。
EAS Demo DB へのア ク セス
InfoMaker には EAS Demo DB と い う ス タ ン ド ア ロ ンの SQL Anywhere®
デー タ ベー ス が付属 し てい ます。 こ のデー タ ベー ス は、 セ ッ ト ア ッ プ
プ ロ グ ラ ム で こ のオプシ ョ ン の選択を ク リ ア し ない限 り 、 自動的に イ
ン ス ト ール さ れます。 InfoMaker のチ ュ ー ト リ アルを使用す る 際に、 こ
の EAS Demo DB 内のテーブルへア ク セ スす る こ と にな り ます。
ア ク セ スす る 際に SQL Anywhere ODBC ド ラ イ バを使用す る ので、SQL
Anywhere デー タ ベース は ODBC デー タ ソ ース と みな さ れ ます。
デー タ ベース プ ロ フ ァ イルの使い方
デー タ ベース プ ロ
フ ァ イル と は?
6
デー タ ベー ス プ ロ フ ァ イ ルは、 InfoMaker 開発環境で、 特定のデー タ
ベース と の接続を定義す る シ ス テ ム レ ジ ス ト リ に格納 さ れてい る 、 パ
ラ メ ー タ セ ッ ト です。デー タ ベース プ ロ フ ァ イ ルはデー タ 接続ご と に
作成す る 必要があ り ます。
InfoMaker
第1章
実行で き る作業
詳細について
デー タ ベース と の接続について
デー タ ベース プ ロ フ ァ イ ルを使用す る と 、InfoMaker 開発環境でのデー
タ ベースへの接続管理が容易にな り ます。 た と えば、 デー タ ベース プ
ロ フ ァ イ ルに よ っ て、 以下の操作がで き ます。
•
デー タ ベース プ ロ フ ァ イ ルを選択 し て、 デー タ ベース に接続 し た
り 、 別のデー タ ベース に切 り 替え た り す る
•
デー タ ベース プ ロ フ ァ イ ルを編集 し て、 接続を カ ス タ マ イ ズす る
•
ア ク セ スす る 必要がな く な っ たデー タ ベース プ ロ フ ァ イ ルを削除
する
•
データ ベース プ ロ フ ァ イ ルを イ ンポー ト およ びエ ク ス ポー ト し て、
接続パ ラ メ ー タ を共有す る
デー タ ベース プ ロ フ ァ イ ルの使い方については、第 10 章 「デー タ ベー
ス接続の管理」 を参照 し て く だ さ い。
デー タ ベース プ ロ フ ァ イルの作成について
デー タ ベース ペ イ ン タ を使用 し たデー タ ベース プ ロ フ ァ イルの作成
デー タ ベー ス ペ イ ン タ は、 オプシ ョ ン の InfoMaker のペ イ ン タ です。
デー タ ベース ペ イ ン タ を イ ン ス ト ールす る と 、デー タ ベース ペ イ ン タ
のオブジ ェ ク ト ビ ュ ーか ら デー タ ベー ス プ ロ フ ァ イ ル を作成す る こ
と も で き ます。 ただ し 、 デー タ ベース ペ イ ン タ を開いてプ ロ フ ァ イ ル
を定義 し た り 、 デー タ ベース に接続 し た り す る 場合は、 DB プ ロ フ ァ イ
ル ダ イ ア ロ グ ボ ッ ク ス を使用 し た場合に比べて使用す る シ ス テ ム リ
ソ ース が多 く な り ます。
デー タ ベース と の接続
7
デー タ ベース プ ロ フ ァ イルの使い方
DB プ ロ フ ァ イル ダ イ
ア ログボ ッ ク ス
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス では、 イ ン ス ト ール済みのデー
タ ベー ス イ ン タ フ ェ ー ス お よ び定義済みデー タ ベー ス プ ロ フ ァ イ ル
が、 ナビ ゲー ト し やすい ツ リ ー形式で表示 さ れ ます。 デー タ ベース プ
ロ フ ァ イ ルの作成、 編集、 お よ び削除は、 こ のダ イ ア ロ グ ボ ッ ク ス で
行い ます。
InfoMaker セ ッ ト ア ッ プ プ ロ グ ラ ム を実行す る と 、
HKEY_LOCAL_MACHINE レ ジ ス ト リ キーの PowerBuilder® セ ク シ ョ
ンの Vendors リ ス ト が更新 さ れ、 イ ン ス ト ールす る イ ン タ フ ェ ース が
追加 さ れ ます。 DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス には、 Vendors
リ ス ト に入っ てい る イ ン タ フ ェース が表示 さ れます。
Vendors リ ス ト の格納場所
PowerBuilder と InfoMaker は HKEY_LOCAL_MACHINE\SOFTWARE
の Sybase\PowerBuilder\11.5\Vendors キーを使用 し ます。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス を使用 し てデー タ ベー ス に接続
し た り プ ロ フ ァ イ ルを管理 し た り す る 方法については、 第 10 章 「デー
タ ベース接続の管理」 を参照 し て く だ さ い。
DB プ ロ フ ァ イル設定
ダ イ ア ログボ ッ ク ス
8
各デー タ ベース イ ン タ フ ェ ース には、 それぞれ独自の DB プ ロ フ ァ イ
ル設定 ダ イ ア ロ グ ボ ッ ク ス が あ り 、 イ ン タ フ ェ ー ス 固有の接続パ ラ
メ ー タ を設定で き ます。 た と えば、 Adaptive Server Enterprise ASE イ ン
タ フ ェ ー ス を イ ン ス ト ール し 、 DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス
でそれを選択 し て [新規作成] を ク リ ッ ク す る と 、 DB プ ロ フ ァ イ ル設
定 - Adaptive Server Enterprise ダ イ ア ロ グボ ッ ク ス が表示 さ れ、 こ の イ
ン タ フ ェース に適用す る 接続オプシ ョ ン の設定が示 さ れ ます。
InfoMaker
第1章
デー タ ベース と の接続について
InfoMaker で利用で き ない [プ レ ビ ュ ー] タ ブ
PowerScript® 接続構文は InfoMaker には適用 さ れ ません。 し たが っ て、
InfoMaker の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス には、
PowerScript 接続構文を ス ク リ プ ト に コ ピーす る ための [プ レ ビ ュ ー]
タ ブが含まれてい ません。
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス では、 関連す る 接続パ ラ
メ ー タ が同 じ タ ブ ページ に グ ループ化 さ れ、 チ ェ ッ ク ボ ッ ク ス、 ド
ロ ッ プダ ウ ン リ ス ト 、 お よ びテ キ ス ト ボ ッ ク ス を使 う こ と で値が設定
し やす く な っ てい ます。 基本 (必須) 接続パ ラ メ ー タ は、 [接続] タ ブ
上で設定 し 、 追加接続オプシ ョ ン (DBParm パ ラ メ ー タ と SQLCA プ ロ
パテ ィ ) はほかの タ ブ ページで設定 し ます。
DB プ ロ フ ァ イル設定
ダ イ ア ログボ ッ ク スの
値の指定
デー タ ベース イ ン タ フ ェース に よ っ ては、 DB プ ロ フ ァ イ ル設定 ダ イ
ア ロ グ ボ ッ ク ス のすべて の ボ ッ ク ス に値 を 入力す る 必要は あ り ま せ
ん。 プ ロ フ ァ イ ル名だけ を入力 し て [OK] ボ タ ン を ク リ ッ ク す る と 、
デー タ ベースへの接続の際に、InfoMaker は必要な追加情報を求め る ダ
イ ア ロ グ ボ ッ ク ス を順番に表示 し ます。
こ の接続情報には次の内容があ り ます。
ユーザ ID ま たは ロ グ イ ン ID
デー タ ベース と の接続
9
デー タ ベース プ ロ フ ァ イルの使い方
パ ス ワー ド ま たは ロ グ イ ン パ ス ワー ド
デー タ ベース名
サーバ名
デー タ ベース に よ っ ては、 プ ロ フ ァ イ ル名の指定だけでは、 InfoMaker
が接続に必要な追加情報を判断で き ない場合があ り ます。 その よ う な
デー タ ベース イ ン タ フ ェ ース の場合は、 DB プ ロ フ ァ イ ル設定 ダ イ ア
ロ グボ ッ ク ス に表示 さ れ る ボ ッ ク ス に、 適切な値を入力 し ます。
使用す る 接続に対 し て入力が必要な値についての詳細は、 使用す る イ
ン タ フ ェース の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス で[ヘルプ]
ボ タ ン を ク リ ッ ク し て参照 し て く だ さ い。
デー タ ベース プ ロ フ ァ イルの作成
デー タ ベー ス イ ン タ フ ェ ー ス の新 し いデー タ ベー ス プ ロ フ ァ イ ル を
作成す る には、 デー タ ベー ス 接続に使用す る イ ン タ フ ェ ー ス 用に DB
プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス を設定 し なければな り ません。
v
デー タ ベース イ ン タ フ ェ ースに対応するデー タ ベース プ ロ フ ァ イルを作成す
る
1
パ ワ ーバーの [DB プ ロ フ ァ イ ル] ボ タ ン を ク リ ッ ク し ます。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が開 き 、 イ ン ス ト ール済み
のデー タ ベース イ ン タ フ ェース が一覧表示 さ れ ます。 特定の イ ン
タ フ ェース用に定義 さ れてい る デー タ ベース プ ロ フ ァ イ ルを表示
す る には、 イ ン タ フ ェース名の左の正符号 (+) を ク リ ッ ク す る か、
イ ン タ フ ェ ース名を ダブル ク リ ッ ク し て リ ス ト を展開 し ます。
2
イ ン タ フ ェ ー ス 名を選択 し て [新規作成] ボ タ ン を ク リ ッ ク し ま
す。
選択 し た イ ン タ フ ェ ー ス 用の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ
ボ ッ ク ス が表示 さ れ ます。 た と えば、 SYC イ ン タ フ ェ ース を選択
し た場合、 表示 さ れ る ダ イ ア ロ グ ボ ッ ク ス は DB プ ロ フ ァ イ ル設
定 - Adaptive Server Enterprise ダ イ ア ロ グ ボ ッ ク ス です。
10
InfoMaker
第1章
デー タ ベース と の接続について
ク ラ イ ア ン ト ソ フ ト ウ ェ アおよび イ ン タ フ ェ ースのイ ン ス ト ールが必要
イ ン タ フ ェース用の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス を
表示す る には、 必要な ク ラ イ ア ン ト ソ フ ト ウ ェ アお よ びネ イ テ ィ
ブ デー タ ベース イ ン タ フ ェース が適切に イ ン ス ト ール さ れ、 正 し
く 設定 さ れていなければな り ません。 使用す る デー タ ベース イ ン
タ フ ェ ー ス に固有の操作については、 それぞれの イ ン タ フ ェ ー ス
の章を参照 し て く だ さ い。
3
[接続] タ ブで、 プ ロ フ ァ イ ル名を入力 し 、 使用す る イ ン タ フ ェ ー
ス で接続に必要な基本パ ラ メ ー タ の値を指定 し ます。
イ ン タ フ ェ ー ス の基本接続パ ラ メ ー タ お よ び指定す る 値について
の詳細は、 [ヘルプ] ボ タ ン を ク リ ッ ク し て参照 し て く だ さ い。
DBMS 識別名について
デー タ ベー ス プ ロ フ ァ イ ルに DBMS 識別子 を指定す る 必要はあ
り ません。 イ ン ス ト ール済みのデー タ ベース イ ン タ フ ェ ース のプ
ロ フ ァ イ ルを新規作成す る と 、InfoMaker に よ っ て正 し い DBMS 接
続構文が自動的に生成 さ れ ます。
4
(オプシ ョ ン) ほかの タ ブ ページで、追加接続オプシ ョ ン (DBParm
パ ラ メ ー タ お よ び SQLCA プ ロ パテ ィ ) の値を指定 し ます。 こ れ ら
のオプシ ョ ン を設定す る と 、 イ ン タ フ ェ ー ス がサポー ト し てい る
DBMS 固有の機能を最大限に活かす こ と がで き ます。
イ ン タ フ ェ ー ス の追加接続パ ラ メ ー タ お よ び指定す る 値について
の詳細は、 [ヘルプ] ボ タ ン を ク リ ッ ク し て参照 し て く だ さ い。
5
[OK] ボ タ ン を ク リ ッ ク し て変更を保存 し 、 DB プ ロ フ ァ イ ル設定
ダ イ ア ロ グ ボ ッ ク ス を閉 じ ま す。 ダ イ ア ロ グ ボ ッ ク ス を閉 じ ない
で特定の タ ブ ページ の変更 を保存す る には、 [更新] ボ タ ン を ク
リ ッ ク し ます。
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス が表示 さ れ、 該当す る イ ン
タ フ ェ ース名の下に新 し いプ ロ フ ァ イ ル名がハ イ ラ イ ト 表示 さ れ
ます。 デー タ ベース プ ロ フ ァ イ ルの値は
HKEY_CURRENT_USER\Software\Sybase\PowerBuilder\11.5\
DatabaseProfiles\PowerBuilder 内のシ ス テ ム レ ジ ス ト リ に保存 さ れ
ます。
デー タ ベース と の接続
11
次のス テ ッ プ
レ ジ ス ト リ の項目を参照 し た り 、 153 ページの 「デー タ ベー ス プ
ロ フ ァ イ ルの イ ン ポー ト と エ ク ス ポー ト 」 に記載 さ れてい る プ ロ
フ ァ イ ルのエ ク ス ポー ト を行っ た り し て、 変更 し た文字列を確認
す る こ と がで き ま す。 デ フ ォ ル ト では、 NewLogic パ ラ メ ー タ は
True に設定 さ れ ます。 こ の設定は、パ ス ワ ー ド を Unicode エ ン コ ー
デ ィ ン グで暗号化す る こ と を指定 し てい ます。
次のス テ ッ プ
ODBC デー タ ソ ース を使用す る ための準備や定義については、 第 2 章
「ODBC イ ン タ フ ェ ース」 を参照 し て く だ さ い。
JDBC デー タ ベー ス イ ン タ フ ェ ース を使用す る ための準備や定義につ
いては、 第 3 章 「JDBC イ ン タ フ ェース」 を参照 し て く だ さ い。
OLE DB デー タ プ ロ バ イ ダ を使用す る ための準備や定義については、
第 4 章 「OLE DB イ ン タ フ ェース」 を参照 し て く だ さ い。
ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を使用す る ための準備や定
義については、 第 5 章 「ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ース の使
い方」 を参照 し て く だ さ い。
12
InfoMaker
第
2
部
標準デー タ ベース イ ン タ
フ ェ ースの使い方
第 2 部では、標準デー タ ベース イ ン タ フ ェ ース を使用 し て
ア ク セ スするデー タ ベース接続を セ ッ ト ア ッ プお よび定義
する方法について説明 し ます。
第 2 章
ODBC イ ン タ フ ェ ース
こ の章について
こ の章では、 ODBC イ ン タ フ ェ ー ス の概要について説明 し 、 デー
タ ソ ー ス を 使用す る ための準備、 デー タ ソ ー ス の定義、 お よ び
ODBC デー タ ソ ー ス プ ロ フ ァ イ ルの定義の し か たについて解説
し ます。 ま た、 Sybase SQL Anywhere ODBC ド ラ イ バの使い方につ
いて も 解説 し ます。
内容
詳細について
項目
ODBC イ ン タ フ ェース について
ODBC デー タ ソ ース の準備
ODBC デー タ ソ ース の定義
ODBC イ ン タ フ ェース の定義
Sybase SQL Anywhere
ページ
15
24
25
30
30
こ の章では、各 ODBC デー タ ソ ース を使用す る ための準備 と 定義
に関す る 一般的な内容について説明 し ます。 詳細については、 以
下を参照 し て く だ さ い。
•
28 ページの 「ODBC ド ラ イ バに関す る オ ン ラ イ ンヘルプの表
示」 で説明 さ れてい る よ う に、 ODBC ド ラ イ バの各ベン ダが
提供す る オ ン ラ イ ン ヘルプ を使用 し て く だ さ い。 こ のヘルプ
にはデー タ ソ ー ス を使用す る 上での重要な内容が含ま れてい
ます。
•
ODBC デー タ ソ ース に接続す る 方法を解説 し たテ ク ニ カル ド
キ ュ メ ン ト があ る か ど う か を確認 し て く だ さ い。
接続に関す る 新 し い情報は、 Sybase サポー ト と ダウ ン ロー ド のサ
イ ト http://www.sybase.com/support か ら 入手で き ます。
ODBC イ ン タ フ ェ ースについて
InfoMaker では、 さ ま ざ ま な ODBC デー タ ソ ース にア ク セ ス で き
ます。 こ の節では、ODBC イ ン タ フ ェース を使用 し て InfoMaker か
ら ODBC デー タ ソ ース に接続す る 方法について解説 し ます。
デー タ ベース と の接続
15
ODBC イ ン タ フ ェ ースについて
ODBC と は ?
ODBC API
Open Database Connectivity (ODBC) と は、 Microsoft 社に よ っ て開発
さ れた標準アプ リ ケーシ ョ ン プ ロ グ ラ ム用 イ ン タ フ ェ ー ス (API) で
す。 ODBC を使用す る と 、 1 つのアプ リ ケーシ ョ ン か ら 、 ODBC に準
拠す る ド ラ イ バ を 備え た複数のデー タ ソ ー ス に ア ク セ ス す る こ と が
で き ます。 こ の場合、 SQL (Structured Query Language) を標準のデー
タ ア ク セ ス言語に使用 し ます。
ODBC API では、 以下の内容が定義 さ れてい ます。
•
デー タ ソ ースへの接続、 SQL 文の実行、 お よ び結果の取得を行 う
ODBC 関数呼び出 し ラ イ ブ ラ リ
•
DBMS に接続 し て ロ グ イ ンす る ための標準的な方法
•
X/Open と SQL Access Group (SAG) の CAE 仕様 (1992) に基づ
く SQL 構文
•
デー タ 型の標準表記法
•
エ ラ ー コ ー ド の標準セ ッ ト
ODBC デー タ ソ ース
へのア ク セス
InfoMaker の よ う に ODBC イ ン タ フ ェ ー ス を備え た アプ リ ケーシ ョ ン
は、ODBC ド ラ イ バを サポー ト す る デー タ ソ ース にア ク セ ス で き ます。
ODBC デー タ ソ ース ド ラ イ バは、ODBC 関数が実装 さ れたダ イ ナ ミ ッ
ク リ ン ク ラ イ ブ ラ リ (DLL) です。 アプ リ ケーシ ョ ンは、 特定のデー
タ ソ ース にア ク セ スす る ために、そのデー タ ソ ース に対応す る ODBC
ド ラ イ バを起動 し ます。
Unicode デー タ へのア
ク セス
InfoMaker は、 ODBC イ ン タ フ ェース を使用 し て、 ANSI/DBCS お よ び
Unicode の両方のデー タ ベース のデー タ に接続、 保存、 検索す る こ と が
で き ますが、 Unicode と ANSI/DBCS 間でのデー タ 変換を行い ません。
文字デー タ ま たは コ マ ン ド テ キ ス ト がデー タ ベー ス に送信 さ れ る と 、
InfoMaker は Unicode 文字列 を 送信 し ま す。 デー タ が正 し く Unicode
デー タ と し て保存 さ れ る こ と を ド ラ イ バが保証す る 必要が あ り ま す。
InfoMaker は文字デー タ を検索す る と き 、デー タ は Unicode であ る と 仮
定 し ます。
Unicode デー タ ベー ス は、 文字セ ッ ト が Unicode 形式 (UTF-8、 UTF16、 UCS-2、 UCS-4 な ど) に設定 さ れ る デー タ ベース の こ と です。 すべ
てのデー タ は、 Unicode 形式でなければな ら ず、 デー タ ベース に保存 さ
れ る デー タ は、 暗黙的に ま たは明示的に Unicode デー タ に変換 さ れな
ければな り ません。
16
InfoMaker
第2章
ODBC イ ン タ フ ェ ース
文字セ ッ ト と し て ANSI (ま たは DBCS) を使用す る デー タ ベー ス は、
Unicode デー タ を格納す る 特殊なデー タ 型を使用す る こ と があ り ます。
こ れ ら のデー タ 型を持つカ ラ ムは、 Unicode デー タ だけ を格納 し ます。
その よ う な カ ラ ム に保存 さ れ る デー タ は、 明示的に Unicode に変換 さ
れ る 必要があ り ます。 こ の変換はデー タ ベース サーバ ま たは ク ラ イ ア
ン ト が処理す る 必要があ り ます。
InfoMaker での ODBC の使い方
実行で き る作業
InfoMaker では以下の ODBC 接続機能を使用で き ます。
•
SQL Anywhere ODBC ド ラ イ バお よ び ODBC イ ン タ フ ェ ース を使
用 し て、 SQL Anywhere ス タ ン ド ア ロ ン デー タ ベース (EAS Demo
DB を含む) に接続す る
•
ロ ーカルな SQL Anywhere デー タ ベース を作成お よ び削除す る
詳 し い手順については、 『ユーザーズ ガ イ ド 』 マニ ュ アルを参照 し
て く だ さ い。
•
レベル 1 以上の ODBC 準拠の ド ラ イ バを使用 し てデー タ にア ク セ
スす る
23 ページの 「ODBC ド ラ イ バの入手」 を参照 し て く だ さ い。
•
Microsoft の ODBC デー タ ソ ース ア ド ミ ニ ス ト レー タ を使用 し て
ODBC デー タ ソ ース を定義す る
25 ページの 「ODBC デー タ ソ ース の定義」 を参照 し て く だ さ い。
ODBC 接続の コ ンポーネ ン ト
ODBC の接続方法
InfoMaker か ら ODBC デー タ ソ ース にア ク セ スす る 場合、 デー タ ソ ー
ス に到達す る ま でにい く つかの レ イ ヤ を経由 し ます。 それぞれの レ イ
ヤは、 接続におけ る 独立 し た コ ン ポーネ ン ト であ り 、 コ ン ポーネ ン ト
ご と に提供 し てい る ベン ダが違 う 可能性があ り ます。
ODBC は標準 API であ る ため、 InfoMaker ではど の よ う な ODBC デー
タ ソ ース のア ク セ ス に も 、 共通の イ ン タ フ ェース が使用 さ れ ます。 ド
ラ イ バが ODBC に準拠 し て いれば、 InfoMaker で ODBC ド ラ イ バ マ
ネージ ャ に対す る ODBC イ ン タ フ ェース を経由 し て、 その ド ラ イ バに
ア ク セ ス で き ます。 開発環境 と ODBC イ ン タ フ ェース は、 アプ リ ケー
シ ョ ン コ ン ポーネ ン ト と し て、 一緒に動作 し ます。
デー タ ベース と の接続
17
ODBC イ ン タ フ ェ ースについて
図 2-1 では、 ODBC 接続の一般的な コ ン ポーネ ン ト を示 し ます。
図 2-1: ODBC 接続の コ ンポーネ ン ト
コ ンポーネ ン ト の説明
18
表 2-1 に、 図に示 さ れた各 ODBC コ ン ポーネ ン ト の提供元 と その概要
を示 し ます。
InfoMaker
第2章
ODBC イ ン タ フ ェ ース
表 2-1: ODBC 接続 コ ンポーネ ン ト の提供元 と 動作
コ ンポーネ ン ト
アプ リ ケーシ ョ ン
提供元
Sybase 社
ODBC ド ラ イ バ マ
ネージ ャ
Microsoft 社
ド ラ イバ
ド ラ イ バ ベン ダ
デー タ ソ ース
DBMS ま たは
デー タ ベース ベ
ンダ
動作内容
ODBC 関数を呼び出 し 、 SQL 文の発
行、カ タ ロ グ情報の要求、デー タ ソ ー
ス が返す結果な ど を取得す る
InfoMaker では、 ど の ODBC デー タ
ソ ース に対 し て も 共通の ODBC イ ン
タ フ ェース が使用 さ れ る
アプ リ ケーシ ョ ン のために、 ド ラ イ
バの イ ン ス ト ール、ロ ー ド 、ア ン ロ ー
ド をす る
ODBC 関数の呼び出 し を処理 し 、
SQL リ ク エ ス ト を特定のデー タ
ソ ースへ発行 し 、 アプ リ ケーシ ョ ン
にその結果を返す
必要に応 じ 、 アプ リ ケーシ ョ ン が発
行 し た リ ク エ ス ト は、 バ ッ ク エ ン ド
デー タ ベー ス が サ ポ ー ト す る SQL
構文に変換 さ れ る (詳細については、
次の 「ODBC ド ラ イ バの種類」 を参
照)
アプ リ ケーシ ョ ン のためにデー タ の
保管や管理をする 。デー タ ソ ース は、
ア ク セ ス す る デー タ 、 デー タ を管理
し てい る DBMS、 オペレーテ ィ ン グ
シ ス テ ム の ほ か、 場合に よ っ て は、
DBMS にア ク セ スす る ためのネ ッ ト
ワー ク ソ フ ト ウ ェ アか ら 構成 さ れ る
ODBC ド ラ イバの種類
InfoMaker か ら ODBC デー タ ソ ース に接続す る と 、 ODBC ド ラ イ バか
ら 、 単一層 (single-tier) ま たは複数層 (multiple-tier) と い う 単語を含
む メ ッ セージが表示 さ れます。 こ れ ら の用語は ODBC 標準で定義 さ れ
た も ので、 以下の 2 種類の ド ラ イ バを意味 し てい ます。
単一層 ド ラ イバ
デー タ ベース と の接続
単一層 ODBC ド ラ イ バでは、 ODBC 関数 と SQL 文の両方が処理 さ れ
ます。 つま り 、 単一層 ド ラ イ バには、 デー タ ソ ース フ ァ イ ル と カ タ ロ
グ テーブルを管理す る ために必要なデー タ ア ク セ ス ソ フ ト ウ ェ アが
含まれてい ます。 Microsoft Access ド ラ イ バが、 単一層 ODBC ド ラ イ バ
の例です。
19
ODBC イ ン タ フ ェ ースについて
図 2-2: 単一層 ODBC ド ラ イバ
複数層 ド ラ イバ
複数層 ODBC ド ラ イ バでは、 ODBC 関数が処理 さ れますが、 処理に当
た っ ては、 SQL 文がデー タ ベース エ ン ジ ンに送 ら れます。 単一層 ド ラ
イ バ と は異な り 、 複数層 ド ラ イ バには、 直接デー タ を管理す る ための
デー タ ア ク セ ス ソ フ ト ウ ェ アが含まれ ません。
Sybase SQL Anywhere ド ラ イ バが、 複数層 ODBC ド ラ イ バの例です。
20
InfoMaker
第2章
ODBC イ ン タ フ ェ ース
図 2-3: 複数層 ODBC ド ラ イバ
ODBC ド ラ イバの合致レ ベル
InfoMaker Enterprise を使用す る 場合、 DBMS ベン ダな ど Sybase 以外か
ら 入手 し た ODBC ド ラ イ バを使用 し て、 デー タ にア ク セ ス で き ます。
ほかのベン ダか ら ODBC ド ラ イ バを入手 し た場合は、 あ る 特定の適合
条件 (合致 レ ベル) を 満た さ な い と 、 InfoMaker で正 し く 動作 し ま せ
ん。 こ の節では、 入手 し た ド ラ イ バが こ れ ら の条件を満た し てい る か
ど う か を確認す る 方法について解説 し ます。
デー タ ベース と の接続
21
ODBC イ ン タ フ ェ ースについて
ODBC 合致レベル と は ?
InfoMaker では、ODBC に準拠 し た ド ラ イ バを備え た さ ま ざ ま なデー タ
ソ ース にア ク セ ス で き ます。 し か し ODBC ド ラ イ バはそれぞれ異な る
ベン ダが提供 し てお り 、 ド ラ イ バに よ っ てサポー ト し てい る 機能が大
き く 違っ てい る こ と があ り ます。
ODBC イ ン タ フ ェ ース の標準的な準拠レベルを明確に し 、 ま た、 アプ
リ ケーシ ョ ン ベン ダ側では、 必要 と す る 機能が ド ラ イ バか ら 提供 さ れ
てい る か ど う か を判断で き る よ う にす る ために、 ODBC は、 以下の 2
つの領域で、 ODBC ド ラ イ バの合致レベルを定義 し てい ます。
サポー ト し てい る ODBC 関数呼び出 し について定義 し ます。
•
API
•
SQL 文法
サポー ト し てい る SQL 文や SQL デー タ 型について定義
し ます。
ODBC では、 機能の多 さ に応 じ て API 合致レベルが 3 種類定義 さ れて
い ます。
API 合致レ ベル
v
•
コ ア ISO Call Level Interface (CLI) と X/Open CLI 仕様に対応す る
一連の機能を実現す る コ ア API のセ ッ ト です。
•
レ ベル 1 コ ア API 機能に、 OLTP リ レーシ ョ ナル DBMS で通常使
用可能ない く つかの拡張機能が追加 さ れてい ます。
•
レ ベル 2 コ ア API やレベル 1 API の機能に、 い く つかの拡張機能
が追加 さ れてい ます。
適切な ODBC ド ラ イバ API 合致レ ベル
•
SQL 合致レ ベル
InfoMaker では、 レベル 1 以上の API 合致レベルを満た し てい る
ODBC ド ラ イ バを使用す る こ と をお勧め し ます。ただ し 、InfoMaker
では、 コ ア API 合致レベルを満た し てい る ド ラ イ バ も 動作 し ます。
ODBC では、機能の多 さ に応 じ て SQL 文法の合致レベルが 3 種類定義
さ れてい ます。
•
最小 SQL 文法 ODBC の基本合致レベルを満たす SQL 文 と デー タ
型のセ ッ ト です。
22
•
コ ア SQL 文法 最小 SQL 文法に、X/Open と SAG CAE 仕様 (1992)
にほぼ対応す る デー タ 型 と ス テー ト メ ン ト が追加 さ れてい ます。
•
拡張 SQL 文法 最小 SQL 文法や コ ア SQL 文法に、DBMS 共通の拡
張 SQL をサポー ト す る デー タ 型 と ス テー ト メ ン ト が追加 さ れてい
ます。
InfoMaker
第2章
v
ODBC イ ン タ フ ェ ース
適切な ODBC ド ラ イバ SQL 合致レ ベルは
•
InfoMaker では、 コ ア SQL 文法以上の SQL 合致レベルを満た し て
い る ODBC ド ラ イ バ を 使 用 す る こ と を お 勧 め し ま す。 ま た、
InfoMaker では最小 SQL 文法の SQL 合致レベルを満た し てい る ド
ラ イ バ も 動作 し ます。
ODBC ド ラ イバの入手
InfoMaker で は、 Sybase 以 外 の ベ ン ダ か ら 入 手 し た Level 1 以 上 の
ODBC 準拠の任意の ド ラ イ バを使用 し てデー タ にア ク セ スす る こ と も
で き ま す。 ほ と ん ど の場合、 こ れ ら の ド ラ イ バは InfoMaker で動作 し
ます。
ODBC ド ラ イバに関するヘルプ情報を入手するには
InfoMaker で使用す る ODBC ド ラ イ バに関す る 最新かつ正確な情報を
得 る には、 以下に示す方法でヘルプ情報を入手 し ます。
ヘルプの内容
ODBC デー タ ソ ー ス ア ド
ミ ニ ス ト レー タ
ド ラ イ バ の ODBC 設定 の
ダ イ ア ロ グ ボ ッ ク スへの入
力
SQL Anywhere の使い方
Sybase 社以外のベン ダで入
手 し た ODBC ド ラ イ バ
ODBC 接続に関す る ト ラ ブ
ルシ ュ ーテ ィ ン グ
操作
それぞれの タ ブの [ヘルプ] ボ タ ン を ク リ ッ ク
し ます。
ド ラ イ バの ODBC 設定のダ イ ア ロ グ ボ ッ ク ス
で [ヘルプ] ボ タ ン (存在する 場合) を ク リ ッ
ク し ます。
SQL Anywhere のマニ ュ アルを参照 し て く だ さ
い。
その ド ラ イ バについ て のマ ニ ュ アル を 参照 し
て く だ さ い。
ODBC デー タ ソ ースへの接続方法を解説 し た
テ ク ニ カル ド キ ュ メ ン ト があ る か ど う か確認
し て く だ さ い。
接続に関す る 新 し い情報は、 Sybase サポー ト と
ダウ ン ロー ド のサイ ト
http://www.sybase.com/support か ら 取得で き ま
す。
デー タ ベース と の接続
23
ODBC デー タ ソ ースの準備
ODBC デー タ ソ ースの準備
ODBC デー タ ソ ース に接続す る ためには、 まず、 使用す る デー タ ソ ー
ス を準備 し ます。 デー タ ソ ー ス を準備す る こ と に よ り 、 InfoMaker か
ら そ のデー タ ソ ー ス に接続 し て、 デー タ が利用で き る よ う に な り ま
す。
InfoMaker を起動 し 、 デー タ ソ ース を定義 し て接続す る 前に、
InfoMaker の外部の環境でデー タ ソ ース を準備 し てお き ます。 各デー
タ ソ ース に よ っ て必要な条件は異な り ますが、 一般に、 デー タ ソ ー
ス を準備す る には以下の手順を実行 し ます。
v
InfoMaker で使用する ODBC デー タ ソ ース を準備する
1
デー タ ソ ース に接続す る ためにネ ッ ト ワー ク ソ フ ト ウ ェ アが必
要な場合は、 こ れがサ イ ト と ク ラ イ ア ン ト マシ ン に正 し く イ ン ス
ト ール さ れ、 設定 さ れてい る こ と を確認 し ます。
2
デー タ ベース ソ フ ト ウ ェ アが必要な場合は、 こ れが自分のマシ ン
と ネ ッ ト ワー ク サーバに正 し く イ ン ス ト ール さ れ、 設定 さ れてい
る こ と を確認 し ます。
3
必要なデー タ フ ァ イ ルが自分のマシ ン と ネ ッ ト ワ ー ク サーバに
あ る こ と を確認 し ます。
4
ア ク セ スす る テーブル と カ ラ ムの名前が、 標準 SQL 命名規約に
従っ てい る こ と を確認 し ます。
テーブル と カ ラ ム の名前には、 ス ペー ス やデー タ ベー ス 固有の予
約語を使用 し ないで く だ さ い。 DBMS の大文字 と 小文字を区別す
る オプ シ ョ ン に注意 し て く だ さ い。 InfoMaker か ら ア ク セ ス す る
テーブルやカ ラ ム の名前は、 すべて大文字で設定す る のが最 も 適
切です。
24
5
デー タ ベー ス の必要に応 じ て、 ア ク セ ス す る テーブルに固有の イ
ンデ ッ ク ス を指定 し ます。
6
InfoMaker のセ ッ ト ア ッ プ プ ロ グ ラ ム で、 以下を両方 と も イ ン ス
ト ール し ます。
•
目的のデー タ ソ ース にア ク セ スす る ODBC ド ラ イ バ
•
ODBC イ ン タ フ ェース
InfoMaker
第2章
ODBC イ ン タ フ ェ ース
ODBC デー タ ソ ースの定義
ODBC デー タ ソ ース にア ク セ スす る ためには、そのデー タ ソ ース に対
応 し た ODBC ド ラ イ バが必要です。ODBC デー タ ソ ース を定義す る 際
には、 ODBC ド ラ イ バか ら デー タ ソ ース に接続す る ために必要な情報
を入力 し ます。 ODBC デー タ ソ ース の定義を、 デー タ ソ ース の設定ま
たは コ ン フ ィ グ レーシ ョ ン と 言 う こ と があ り ます。
使用す る デー タ ソ ー ス の準備を終え た ら 、 Microsoft の ODBC デー タ
ソ ー ス ア ド ミ ニ ス ト レ ー タ ユーテ ィ リ テ ィ を使用 し て、 そのデー タ
ソ ース を定義す る 必要があ り ます。 こ のユーテ ィ リ テ ィ は Windows の
コ ン ト ロ ール パネルま たは InfoMaker のデー タ ベース ペ イ ン タ か ら ア
ク セ ス で き ます。
こ の節の残 り の部分で は、 InfoMaker の開発環境か ら ODBC デー タ
ソ ース にア ク セ スす る ために必要な、 ODBC デー タ ソ ース を定義す る
方法について解説 し ます。
InfoMaker がデー タ ソ ースへのア ク セスに必要な フ ァ イル
InfoMaker か ら ODBC デー タ ソ ース にア ク セ スす る 場合、 ODBC イ ン
タ フ ェ ースや ODBC ド ラ イ バを操作 し て接続をす る ために、 複数の初
期設定フ ァ イ ル と レ ジ ス ト リ エ ン ト リ が必要にな り ます。
PBODB115 初期設定フ ァ イル
内容
PBODB115.INI は、 Sybase\Shared\PowerBuilder デ ィ レ ク ト リ に イ ン ス
ト ール さ れ ます。 ユーザが初めて InfoMaker を起動 し た と き に、 こ の
フ ァ イ ルがユーザのプ ロ フ ァ イ ル フ ォ ルダ (た と えば、
C:\Documents and Settings\username 配下) の Local Settings\Application
Data\Sybase\InfoMaker 11.5 に コ ピー さ れます。 InfoMaker を実行す る
と き に こ の コ ピーが使用 さ れ ます。 InfoMaker では、 PBODB115.INI を
使用 し て、 ODBC API 呼び出 し でサポー ト さ れないバ ッ ク エ ン ド
DBMS の拡張機能へのア ク セ ス を管理 し ます。 拡張機能の例には、
SQL 構文や DBMS 固有の関数呼び出 し が挙げ ら れ ます。
編集
通常、PBODB115.INI を編集す る 必要はあ り ません。 し か し 場合に よ っ
ては、 バ ッ ク エ ン ド DBMS の PBODB115.INI に関数を追加す る 必要が
あ り ます。 必ず、 元の コ ピーではな く ユーザ プ ロ フ ァ イ ル フ ォ ルダに
あ る コ ピーを編集 し て く だ さ い。
詳 し い手順については、 付録 「PBODB115 初期設定フ ァ イ ルへの関数
の追加」 を参照 し て く だ さ い。
デー タ ベース と の接続
25
ODBC デー タ ソ ースの定義
ODBCINST レ ジ ス ト リ エ ン ト リ
内容
ODBCINST 初期設定情報は、
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI レ ジ
ス ト リ キーにあ り ます。 ODBC 準拠 ド ラ イ バを イ ン ス ト ールす る と 、
その ド ラ イ バの記述に関 し て ODBCINST.INI が自動的に更新 さ れま
す。
こ の記述内容は以下の と お り です。
編集
•
ド ラ イ バに関連付け ら れた DBMS ま たはデー タ ソ ース
•
ド ラ イ バ と セ ッ ト ア ッ プ DLL の ド ラ イ ブお よ びデ ィ レ ク ト リ
(デー タ ソ ース に よ っ ては、 ド ラ イ バ と セ ッ ト ア ッ プ DLL が同 じ
も のがあ り ます)
•
ド ラ イ バ固有のそのほかの接続パ ラ メ ー タ
接続情報を変更す る ために、 レ ジ ス ト リ キーを直接編集す る 必要はあ
り ません。 ド ラ イ バが ODBCINST.INI レ ジ ス ト リ キーの中の情報を使
用す る 場合、 ド ラ イ バを イ ン ス ト ールす る と 、 キーは自動的に更新 さ
れます。 Sybase 社が提供す る ド ラ イ バだけでな く 、 ほかのベン ダが提
供す る ド ラ イ バであ っ て も 、 レ ジ ス ト リ サブキーは同 じ よ う に更新 さ
れます。
ODBC レ ジ ス ト リ エ ン ト リ
内容
ODBC 初期設定情報は、
HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI レ ジ ス ト リ
キーにあ り ます。 特定の ODBC ド ラ イ バに対応す る デー タ ソ ース を
定義す る と き 、 ODBC 設定のダ イ ア ロ グ ボ ッ ク ス で指定 し た値が、 ド
ラ イ バに よ っ て ODBC.INI レ ジ ス ト リ キーに書 き 込まれます。
ODBC.INI キ ーは、 定義 さ れ て い る デー タ ソ ー ス に指定 さ れ た サ ブ
キーを含んでい ます。 各サブキーは、 ODBC 設定のダ イ ア ロ グ ボ ッ ク
ス のそのデー タ ソ ース に対 し て指定 さ れた値が記述 さ れてい ます。 こ
の値はデー タ ソ ース に よ っ て異な り ますが、 一般に以下の内容が格納
さ れ ます。
26
•
デー タ ベース
•
ド ラ イバ
•
オプシ ョ ンの記述
•
DBMS 固有の接続パ ラ メ ー タ
InfoMaker
第2章
編集
ODBC イ ン タ フ ェ ース
接続情報を変更す る ために、 ODBC サブキーを直接編集す る 必要はあ
り ません。 その代わ り に、 ODBC デー タ ソ ース ア ド ミ ニ ス ト レー タ な
ど の、 ODBC デー タ ソ ース を定義 し 、 ODBC コ ン フ ィ グ レーシ ョ ン を
自動的に更新す る こ と を目的 と し て設計 さ れた ODBC 管理ツールを使
用 し ます。
デー タ ベース プ ロ フ ァ イル レ ジ ス ト リ エ ン ト リ
内容
全デー タ ソ ース のデー タ ベース プ ロ フ ァ イ ルは、
HKEY_CURRENT_USER\SOFTWARE\Sybase\PowerBuilder\11.5\
DatabaseProfiles の レ ジ ス ト リ に格納 さ れてい ます。
編集
接続情報を変更す る ために、 プ ロ フ ァ イ ルを直接編集す る 必要はあ り
ません。 こ れ ら の フ ァ イ ルは、 InfoMaker が ODBC デー タ ソ ース定義
の一部 と し てデー タ ベース プ ロ フ ァ イ ルを作成す る と き に、 自動的に
更新 さ れ ます。
InfoMaker において、DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス のプ ロ
フ ァ イ ルを編集 し た り 、 DB 環境設定 ダ イ ア ロ グ ボ ッ ク ス に入力 し た
り す る こ と に よ っ て、 レ ジ ス ト リ に格納 さ れ る ほかの接続パ ラ メ ー タ
を指定す る こ と も で き ます (詳 し い手順については、 第 11 章 「接続パ
ラ メ ー タ の追加設定」 を参照 し て く だ さ い)。
例
以下の例は、 EAS Demo DB デー タ ソ ース に対す る デー タ ベース プ ロ
フ ァ イ ルの一部を示 し てい ます。
DBMS=ODBC
DBParm=ConnectString='DSN=EAS Demo DB V115
DB;UID=dba;PWD=00c61737'
Prompt=0
こ の レ ジ ス ト リ エ ン ト リ の例で示 さ れて い る よ う に、 ODBC デー タ
ソ ース に対応す る デー タ ベース プ ロ フ ァ イ ルの中で、 最 も 重要な値は
以下の と お り です。
•
デー タ ベース と の接続
DBMS の値(ODBC)か ら 、デー タ ソ ースへの接続に ODBC
イ ン タ フ ェース を使用 し てい る こ と が示 さ れ ます。
DBMS
27
ODBC デー タ ソ ースの定義
•
DBParm ConnectString DBParm パ ラ メ ー タ の値は、 ODBC デー タ
ソ ー ス への接続 を コ ン ト ロ ール し ま す。 接続文字列に は、 DSN
(デー タ ソ ース名) の値を指定 し ます。 DSN の値に よ っ て接続 し た
いデー タ ソ ース が ODBC に指定 さ れ ます。デー タ ベース プ ロ フ ァ
イ ル を 選択 し てデー タ ソ ー ス に接続す る 場合、 ODBC に よ っ て
ODBC.INI レ ジ ス ト リ キーの中か ら 、 プ ロ フ ァ イ ルで指定 さ れた
デー タ ソ ース名に対応 し たサブキーが検索 さ れ ます。 次に、 サブ
キーの情報に基づいて、 必要な ラ イ ブ ラ リ が ロ ー ド さ れ、 デー タ
ソ ース に接続 さ れ ます。 接続文字列には、 接続に必要な UID (ユー
ザ ID) 値お よ び PWD (パ ス ワー ド ) 値を入れ る こ と も で き ます。
同一デー タ に対する複数のデー タ ソ ースの定義
InfoMaker で ODBC デー タ ソ ー ス を 定義す る と き には、 それぞれの
デー タ ソ ース名を固有に し ます。 し か し 、 デー タ ソ ース名が固有であ
れば、 同 じ デー タ にア ク セ スす る デー タ ソ ース を複数定義で き ます。
た と えば、 デー タ ソ ース は、 C:\SQL Anywhere\SALES.DB にあ る SQL
Anywhere デー タ ベース であ る と し ます。 アプ リ ケーシ ョ ン ご と に、 別
のパ ス ワー ド やユーザ ID な ど、こ のデー タ ベース にア ク セ スす る ため
の接続パ ラ メ ー タ を個別に指定 し ま す。 ま た、 使用す る パ ス ワ ー ド と
ユーザ ID がアプ リ ケーシ ョ ン ご と に異な っ てい る と し ます。
こ の よ う な場合、 同一のデー タ ベース (C:\SQL Anywhere\SALES.DB)
に対 し て Sales1 と Sales2 と い う 2 つの ODBC デー タ ソ ース を定義 し
て、 パ ス ワ ー ド と ユーザ ID を別々に指定 し ま す。 ど ち ら かのデー タ
ソ ー ス用に作成 し たプ ロ フ ァ イ ルを使用 し てデー タ ソ ー ス に接続すれ
ば、 違 う 接続パ ラ メ ー タ を使用 し て同 じ デー タ にア ク セ ス で き ます。
図 2-4: 2 つのデー タ ソ ース を使用 し てデー タ ベースにア ク セスする方法
ODBC ド ラ イバに関する オ ン ラ イ ンヘルプの表示
InfoMaker の ODBC ド ラ イ バに関す る オ ン ラ イ ン ヘルプは、 ド ラ イ バ
ベン ダに よ っ て提供 さ れ ます。ヘルプ情報の内容は以下の と お り です。
28
InfoMaker
第2章
ODBC イ ン タ フ ェ ース
•
ODBC 設定のダ イ ア ロ グボ ッ ク ス に入力 し て、 デー タ ソ ース を定
義す る 方法
•
ODBC ド ラ イ バを定義 し てデー タ ソ ース にア ク セ スす る 方法
ODBC ド ラ イバに関するオ ン ラ イ ンヘルプ
ODBC ド ラ イ バの ODBC 設定のダ イ ア ロ グ ボ ッ ク ス か ら 以下の手順を
実行す る と 、 ベン ダ提供のオ ン ラ イ ン ヘルプ を表示で き ます。
v
ODBC ド ラ イバに関するオ ン ラ イ ン ヘルプ を表示する
•
ド ラ イ バの ODBC 設定のダ イ ア ロ グボ ッ ク ス の [ヘルプ] ボ タ ン
を ク リ ッ ク し ます。
ODBC 設定の ダ イ ア ロ グ ボ ッ ク ス 内の各機能 を 説明す る ヘルプ
ウ ィ ン ド ウ が表示 さ れます。
ODBC ト ラ ン ス レー タ の選択
ODBC ト ラ ン ス レー
タ とは ?
一部の ODBC ド ラ イ バでは、 デー タ ソ ース を定義す る 際に、 ト ラ ン ス
レー タ を指定で き ます。 ODBC ト ラ ン ス レー タ は、 アプ リ ケーシ ョ ン
と デー タ ソ ース と の間で受け渡 さ れ る デー タ を変換す る DLL です。一
般に、デー タ を あ る 文字セ ッ ト か ら 別の文字セ ッ ト に変換す る ために、
ト ラ ン ス レー タ を使用 し ます。
必要な操作
以下の手順で、 ODBC ド ラ イ バの ト ラ ン ス レー タ を選択 し ます。
v
ODBC ド ラ イバで使用する ト ラ ン ス レー タ を選択する
1
ド ラ イ バの ODBC 設定のダ イ ア ロ グボ ッ ク ス で、 ト ラ ン ス レー タ
の選択 ダ イ ア ロ グボ ッ ク ス を表示 し ます。
ト ラ ン ス レー タ の選択 ダ イ ア ロ グ ボ ッ ク ス を表示す る 方法は、 ド
ラ イ バ と Windows のプ ラ ッ ト フ ォ ーム に よ っ てそれぞれ異な り ま
す。 ド ラ イ バの ODBC 設定のダ イ ア ロ グ ボ ッ ク ス で [ヘルプ] ボ
タ ン を ク リ ッ ク し て、 ト ラ ン ス レー タ の選択 ダ イ ア ロ グボ ッ ク ス
を表示す る 手順を参照 し て く だ さ い。
ト ラ ン ス レー タ の選択 ダ イ ア ロ グ ボ ッ ク ス に ど の ト ラ ン ス レー タ
が表示 さ れ る かは、 ODBCINST.INI レ ジ ス ト リ キーの値に よ っ て
決ま り ます。
2
デー タ ベース と の接続
[使用可能な ト ラ ン ス レー タ ] リ ス ト ボ ッ ク ス か ら 使用す る ト ラ ン
ス レー タ を選択 し ます。
29
ODBC イ ン タ フ ェ ースの定義
ト ラ ン ス レー タ の選択 ダ イ ア ロ グ ボ ッ ク ス に関す る ヘルプが必要
な場合は、 [ヘルプ] ボ タ ン を ク リ ッ ク し ます。
3
[OK] を ク リ ッ ク し ます。
ト ラ ン ス レー タ の選択 ダ イ ア ロ グ ボ ッ ク ス が閉 じ て、 ド ラ イ バが
変換処理を実行 し ます。
ODBC イ ン タ フ ェ ースの定義
ODBC イ ン タ フ ェ ー ス を使用す る 接続を定義す る には、 DB プ ロ フ ァ
イ ル設定 - ODBC ダ イ ア ロ グ ボ ッ ク ス で基本接続パ ラ メ ー タ な ど の値
を指定 し て、 デー タ ベー ス プ ロ フ ァ イ ルを作成す る 必要が あ り ま す。
作成後は、 いつで も こ のプ ロ フ ァ イ ル を 選択 し て開発環境でデー タ
ソ ース に接続で き ます。
デー タ ベース プ ロ フ ァ イ ルの定義方法については、 6 ページの 「デー
タ ベース プ ロ フ ァ イ ルの使い方」 を参照 し て く だ さ い。
Sybase SQL Anywhere
こ の 節 で は、 Sybase SQL Anywhere ODBC ド ラ イ バ を 使用 し て SQL
Anywhere のデー タ ソ ー ス を作成お よ び定義 し 、 接続す る 方法につい
て解説 し ます。
名称の変更
SQL Anywhere デ ー タ ベ ー ス サ ー バ は、 バ ー ジ ョ ン 6 か ら 9 ま で
Adaptive Server® Anywhere (ASA) と 呼ばれてい ま し た。
SQL Anywhere には、 パー ソ ナル デー タ ベース サーバ と ネ ッ ト ワー ク
デー タ ベース サーバの 2 つのデー タ ベース サーバが含まれてい ます。
Sybase SQL Anywhere の使い方については、 SQL Anywhere のマニ ュ ア
ルを参照 し て く だ さ い。
30
InfoMaker
第2章
ODBC イ ン タ フ ェ ース
SQL Anywhere でサポー ト し ているバージ ョ ン
SQL Anywhere ODBC ド ラ イ バは、 以下の ソ フ ト ウ ェ ア で作成 さ れた
ロ ーカル デー タ ベー ス や リ モー ト デー タ ベー ス と の接続を サポー ト
し てい ます。
•
自分のマシ ン上で稼働 し てい る InfoMaker
•
SQL Anywhere バージ ョ ン 11
•
SQL Anywhere バージ ョ ン 10.x
•
ASA バージ ョ ン 9.x
•
ASA バージ ョ ン 8.x
•
ASA バージ ョ ン 7.x
•
ASA バージ ョ ン 6.x
•
SQL Anywhere バージ ョ ン 5.x
SQL Anywhere の基本ソ フ ト ウ ェ ア コ ンポーネ ン ト
図 2-5 は、InfoMaker か ら SQL Anywhere デー タ ソ ース に接続す る ため
に必要な基本 ソ フ ト ウ ェ ア コ ン ポーネ ン ト を示 し てい ます。
デー タ ベース と の接続
31
Sybase SQL Anywhere
図 2-5: SQL Anywhere 接続の コ ンポーネ ン ト
SQL Anywhere デー タ ソ ース を使用する ための準備
InfoMaker で SQL Anywhere デー タ ソ ース の定義 と 接続を行 う 前に、以
下の手順に従っ てデー タ ソ ース を準備 し ます。
v
SQL Anywhere デー タ ソ ース を準備する
1
SQL Anywhere デー タ ソ ース のデー タ ベース フ ァ イ ルが存在す る
こ と を確認 し ま す。 デー タ ベー ス を新 し く 作成す る には、 以下の
操作を実行 し ます。
•
32
Create ASA Database ユーテ ィ リ テ ィ を起動 し ます。自分のマシ
ン上で InfoMaker が稼働 し てい る 場合は、 デー タ ベー ス プ ロ
フ ァ イ ルの ODBC イ ン タ フ ェ ー ス の Utilities フ ォ ルダ ま たは
デー タ ベー ス ペ イ ン タ か ら こ のユーテ ィ リ テ ィ にア ク セ ス で
き ます。
InfoMaker
第2章
ODBC イ ン タ フ ェ ース
こ の方法の場合、 自分のマシ ン上に ロ ーカルな SQL Anywhere
デー タ ベー ス が作成 さ れ、 その接続に対応す る デー タ ソ ー ス
定義やデー タ ベー ス プ ロ フ ァ イ ル も 作成 さ れ ます (詳 し い手
順については、 『ユーザーズ ガ イ ド 』 マニ ュ アルを参照 し て く
だ さ い)。
•
2
ほかのユーザのマシ ン上で稼働 し てい る InfoMaker を使用 し
た り 、 InfoMaker の外部の環境で SQL Anywhere を使用 し た り
す る な ど、 ほかの方法でデー タ ベース を作成 し ます (詳 し い手
順については、 SQL Anywhere のマニ ュ アルを参照 し て く だ さ
い)。
SQL Anywhere デー タ ベース に対 し て ロ グ フ ァ イ ルが存在す る こ
と を 確認 し ま す。 デー タ ベー ス が損傷 を 受 け て も 、 正常 な ロ グ
フ ァ イ ルがあれば復旧可能です。
SQL Anywhere デー タ ベー ス の ロ グ フ ァ イ ルが存在 し な い場合、
SQL Anywhere デー タ ベース エ ン ジ ン で作成 さ れ ます。 し か し 、 ほ
かのマ シ ンやデ ィ レ ク ト リ か ら デー タ ベー ス を コ ピー ま たは移動
す る 場合は、 ロ グ フ ァ イ ル も 一緒に コ ピーま たは移動 し ます。
SQL Anywhere デー タ ソ ースの定義
ロ ー カ ルな SQL Anywhere デー タ ベー ス を 作成す る と 、 InfoMaker に
よ っ て、デー タ ソ ース定義やデー タ ベース プ ロ フ ァ イ ルが自動的に作
成 さ れ ま す。 し たが っ て、 ほかのマ シ ン上の InfoMaker で作成 さ れた
SQL Anywhere デー タ ベース にア ク セ スす る と き に限 り 、以下の手順で
SQL Anywhere デー タ ソ ース を定義 し ます。
v
デー タ ベース と の接続
SQL Anywhere ド ラ イバに対 し て SQL Anywhere デー タ ソ ース を定義する
1
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス ま たはデー タ ベース ペ イ ン
タ の ODBC ユーテ ィ リ ィ の一覧か ら [Create ODBC Data Source] を
選択 し ます。
2
[ユーザーデー タ ソ ース] を選択 し て [次へ] ボ タ ン を ク リ ッ ク し
ます。
3
[デー タ ソ ース の新規作成] ページで、 SQL Anywhere ド ラ イ バを
選択 し て、 [完了] ボ タ ン を ク リ ッ ク し ます。
33
Sybase SQL Anywhere
SQL Anywhere の ODBC 設定 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。
4
以下の値を指定す る 必要があ り ます。
•
[ODBC] タ ブのデー タ ・ ソ ース名
•
[ ロ グ イ ン] タ ブ ページのユーザ ID と パ ス ワ ー ド
•
[デー タ ベース] タ ブ ページのデー タ ベース ・ フ ァ イ ル
ダ イ ア ロ グ ボ ッ ク ス の フ ィ ール ド につい て の詳細 を 確認す る に
は、 [ヘルプ] ボ タ ン を ク リ ッ ク し ます。
5
(オプシ ョ ン) デー タ を あ る 文字セ ッ ト か ら 別の文字セ ッ ト に変換
す る ODBC ト ラ ン ス レー タ を選択す る には、 [ODBC] タ ブの [ ト
ラ ン ス レー タ を選択] ボ タ ン を ク リ ッ ク し ます。
29 ページの 「ODBC ト ラ ン ス レー タ の選択」 を参照 し て く だ さ い。
6
[開始行] 値の指定
34
[OK] ボ タ ン を ク リ ッ ク し て、 デー タ ソ ース定義を保存 し ます。
SQL Anywhere ODBC ド ラ イ バが、 PATH 変数お よ びデー タ ベース名の
設定値を使用 し て稼働 し てい る パー ソ ナル デー タ ベー ス サーバ ま た
はネ ッ ト ワ ー ク デー タ ベース サーバを見つけ る こ と がで き ない場合、
[開始行] フ ィ ール ド に指定 さ れて い る コ マ ン ド を 使用 し て、 デー タ
ベース サーバを起動 し ます。
InfoMaker
第2章
ODBC イ ン タ フ ェ ース
[デー タ ベー ス] タ ブ ページの [開始行] フ ィ ール ド に、 以下の コ マ
ン ド のいずれか を 指定 し ま す。 n は、 使用 し て い る SQL Anywhere の
バージ ョ ン です。
指定する コ マ ン ド
dbengn.exe
rtengn.exe
機能
パー ソ ナル デー タ ベース サーバ と [デー タ ベー
ス フ ァ イ ル] ボ ッ ク ス に指定 し たデー タ ベース
を起動す る
制限付 き ラ ン タ イ ム デー タ ベー ス サ ー バ と
[デー タ ベー ス フ ァ イ ル] ボ ッ ク ス に指定 し た
デー タ ベース を起動す る
SQL Anywhere の ODBC 設定 ダ イ ア ロ グボ ッ ク ス の設定方法について
は、 SQL Anywhere のマニ ュ アルを参照 し て く だ さ い。
Transact-SQL の特殊な timestamp カ ラ ムのサポー ト
デー タ パ イ プ ラ イ ン、 ま たはデー タ ベース ペ イ ン タ で SQL Anywhere
テーブルを処理す る 場合、 デフ ォ ル ト では、 timestamp と い う 名前の カ
ラ ムが、 SQL Anywhere Transact-SQL® の特殊な timestamp カ ラ ム と し
て処理 さ れます。
特殊な Transact-SQL timestamp カ ラ ム を SQL Anywhere テーブルに作成
す る こ と がで き ます。
特殊な timestamp カ
ラ ムの作成
v
InfoMaker において SQL Anywhere テーブル内に Transact-SQL の特殊な
timestamp カ ラ ムを作成する
1
2
Transact-SQL の特殊な timestamp カ ラ ム と し て処理す る Timestamp
型のカ ラ ムに対 し て、 timestamp と い う 名前を設定 し ます。 以下の
いずれかの方法で操作 し ます。
•
ペ イ ン タ を使用す る 場合 - カ ラ ム の名前に timestamp を選択 し
ま す。 (詳 し い手順については、 『ユーザーズ ガ イ ド 』 マニ ュ
アルを参照 し て く だ さ い。
•
SQL CREATE TABLE 文を使用す る 場合 - 詳細については、 次
の 「CREATE TABLE の例」 を参照 し て く だ さ い。
カ ラ ム のデフ ォ ル ト 値 と し て timestamp を指定 し ます。以下のいず
れかの方法で操作 し ます。
•
デー タ ベース と の接続
ペ イ ン タ を使用す る 場合 - カ ラ ムのデフ ォ ル ト 値 と し て
timestamp を選択 し ます。 詳 し い手順については、 『ユーザー
ズ ガ イ ド 』 マニ ュ アルを参照 し て く だ さ い。
35
Sybase SQL Anywhere
•
3
SQL CREATE TABLE 文を使用す る 場合 - 詳細については、 次の
「CREATE TABLE の例」 を参照 し て く だ さ い。
デー タ パ イ プ ラ イ ン ペ イ ン タ でテーブルを処理 し てい る 場合、 特
殊な timestamp カ ラ ム に対 し て、 ワ ー ク スペース の初期値カ ラ ム の
ド ロ ッ プダ ウ ン リ ス ト か ら 、 「デフ ォ ル ト 値」 を選択 し ます。
INSERT 文や UPDATE 文か ら 特殊な timestamp カ ラ ム を使用す る た
めには、 初期値 と し て 「デフ ォ ル ト 値」 を選択 し ます。
詳 し い手順については、 『ユーザーズ ガ イ ド 』 マニ ュ アルを参照 し
て く だ さ い。
CREATE TABLE の例
以下に示す CREATE TABLE 文では、 employee_ID、 hours、 timestamp と
い う 3 つの カ ラ ム で構成 さ れ る timesheet と い う 名前の SQL Anywhere
テーブルが作成 さ れます。なお、employee_ID は Integer 型、hours は Decimal
型、 timestamp は Timestamp 型でデフ ォ ル ト 値が timestamp です。
CREATE TABLE timesheet (
employee_ID INTEGER,
hours DECIMAL,
timestamp TIMESTAMP default timestamp )
特殊 timestamp カ ラ
ムを使用 し ない場合
デ フ ォ ル ト の 動 作 を 変 更 す る 場 合、 timestamp と い う 名 前 の SQL
Anywhere カ ラ ム を、 Transact-SQL の特殊な timestamp カ ラ ム と し て処
理 し ない よ う に、 InfoMaker に対 し て指定で き ます。
v
timestamp と い う 名前のカ ラ ムを Transact-SQL の特殊な timestamp カ ラ
ム と し て処理 し ないよ う に、 InfoMaker に対 し て指定する
•
PBODB115 初期設定フ ァ イ ルの [Sybase SQL Anywhere] セ ク シ ョ
ン を編集 し て、SQLSrvrTSName の値を 'Yes' か ら 'No' に変更 し ます。
初期設定 フ ァ イ ルに変更 を 加 え た 後、 変更 を 反映 さ せ る た め に
デー タ ベー ス に再接続す る 必要があ り ま す。 付録 「PBODB115 初
期設定フ ァ イ ルへの関数の追加」 を参照 し て く だ さ い。
次のス テ ッ プ
ODBC デー タ ソ ース と の接続の手順については、 144 ページの 「デー
タ ベース と の接続」 を参照 し て く だ さ い。
36
InfoMaker
第 3 章
JDBC イ ン タ フ ェ ース
こ の章について
こ の章では、 JDBC イ ン タ フ ェース の概要について説明 し 、 こ の イ
ン タ フ ェ ー ス を 使用す る た めの準備や JDBC デー タ ベー ス プ ロ
フ ァ イ ルの定義の し かたについて解説 し ます。
内容
詳細について
項目
JDBC イ ン タ フ ェース について
JDBC イ ン タ フ ェース を使用す る ための準備
JDBC イ ン タ フ ェース の定義
ページ
37
41
43
JDBC の詳細については、 Java Web のサイ ト
http://java.sun.com/products/jdbc/overview.html を参照 し て く だ さ い。
JDBC イ ン タ フ ェ ースについて
InfoMaker では、 JDBC を経由 し て さ ま ざ ま なデー タ ベース にア ク
セ ス で き ます。 こ の節では、 JDBC 接続を使用 し て InfoMaker か ら
デー タ にア ク セ ス す る ために知っ てお く 必要があ る 情報について
解説 し ます。
JDBC と は ?
JDBC API
デー タ ベース と の接続
Java Database Connectivity (JDBC) と は、 Java ア プ リ ケ ー シ ョ ン
が、 標 準 の デ ー タ ア ク セ ス 言 語 と し て SQL (Structured Query
Language) を サポー ト す る デー タ ベー ス にア ク セ ス す る ための標
準アプ リ ケーシ ョ ン プ ロ グ ラ ム用 イ ン タ フ ェース (API) です。
37
JDBC イ ン タ フ ェ ースについて
JDBC API には、 デー タ ベー ス 接続を開いた り 、 SQL コ マ ン ド を実行
し た り 、 結果を処理 し た り で き る よ う に、 共通の SQL デー タ ベース ア
ク テ ィ ビ テ ィ で共通な ク ラ ス が含ま れてい ます。 そのため Java プ ロ グ
ラ ムは SQL 文を発行 し て、 結果のデー タ を処理す る 一般的な SQL プ
ロ グ ラ ミ ン グ モデルを使用で き ます。 JDBC ク ラ ス は Java 1.1+ と Java
2 で java.sql パ ッ ケージ と し て含まれてい ます。
JDBC API では、 以下の内容が定義 さ れてい ます。
•
デー タ ベースへの接続、 SQL 文の実行、 お よ び結果の取得を行 う
JDBC 関数呼び出 し ラ イ ブ ラ リ
•
DBMS に接続 し て ロ グ イ ンす る ための標準的な方法
•
X/Open SQL Call Level Interface ま たは X/Open と SQL Access Group
(SAG) の CAE 仕様 (1992) に基づ く SQL 構文
•
デー タ 型の標準表記法
•
エ ラ ー コ ー ド の標準セ ッ ト
JDBC API の実装
JDBC API の実装は、 既存の ODBC ド ラ イ バ と 通信す る も の (JDBCODBC ブ リ ッ ジ) と 、 ネ イ テ ィ ブ デー タ ベー ス API と 通信す る も の
(JDBC 呼び出 し を特定のデー タ ベー ス ベン ダに よ っ て使用 さ れ る 通
信プ ロ ト コ ルに変換す る JDBC ド ラ イ バ) と の 2 つのカ テ ゴ リ に分類
さ れ ます。 InfoMaker は、 JDBC 準拠 ド ラ イ バが存在す る 任意のデー タ
ベース と の接続に使用で き る JDBC イ ン タ フ ェース を実装 し ます。
InfoMaker JDB イ ン タ
フ ェ ース
Java 仮想マシ ン (JVM) は Java プ ロ グ ラ ムのバ イ ト コ ー ド を変換お よ
び実行す る のに必要です。 InfoMaker JDB イ ン タ フ ェ ー ス は、 Sun の
Java Runtime Environment (JRE) バージ ョ ン 1.2 以上を サポー ト し てい
ます。
JDBC 接続の コ ンポーネ ン ト
JDBC の接続方法
InfoMaker か ら JDBC イ ン タ フ ェ ー ス を経由 し てデー タ ベー ス に ア ク
セ ス す る 場合、 デー タ ベース に到達す る ま でにい く つかの レ イ ヤ を経
由 し ます。 それぞれの レ イ ヤは、 接続におけ る 独立 し た コ ン ポーネ ン
ト で あ り 、 コ ン ポーネ ン ト ご と に提供 し てい る ベン ダが違 う 可能性が
あ り ます。
JDBC は標準 API であ る ため、 InfoMaker はど の よ う な JDBC 準拠デー
タ ベー ス ド ラ イ バへア ク セ ス す る 場合で も 共通の イ ン タ フ ェ ー ス を
使用 し ます。
図 3-1 では、 JDBC 接続の一般的な コ ン ポーネ ン ト を示 し ます。
38
InfoMaker
第3章
JDBC イ ン タ フ ェ ース
図 3-1: JDBC 接続の コ ンポーネ ン ト
JDBC DLL
pbjdb115.dll は、 InfoMaker が提供 し ま す。 こ の DLL は、 Sun の Java
Runtime Environment (JRE) バージ ョ ン 1.2 以上で使用で き ます。
InfoMaker Java パ ッ
ケージ
InfoMaker には、小 さ な Java ク ラ ス のパ ッ ケージが含ま れてい ます。 こ
れは、 ほかの InfoMaker イ ン タ フ ェ ー ス にあ る よ う なエ ラ ーチ ェ ッ ク
お よ び効率性の レベル (SQLException の捕捉) を JDBC イ ン タ フ ェ ー
ス に提供 し ま す。 こ の パ ッ ケ ー ジ は、 pbjdbc12115.jar と い う 名前 で
Sybase\Shared\PowerBuilder に置かれてい ます。
Java 仮想マシ ン
Java 仮想マシ ン (JVM) は Java 開発 ソ フ ト ウ ェ アの コ ン ポーネ ン ト で
す。 InfoMaker を イ ン ス ト ールす る と 、 Java Runtime Environment (JRE)
を 含 む Sun の Java Development Kit (JDK) が シ ス テ ム の
Sybase\Shared\PowerBuilder に イ ン ス ト ール さ れ ま す。 InfoMaker 11.5
の場合、 JDK 1.5 が イ ン ス ト ール さ れます。 こ のバージ ョ ン の JVM は、
JDBC 接続のほか、 JVM が必要 と な る プ ロ セ ス を使用す る と 自動的に
起動 し 、 InfoMaker のセ ッ シ ョ ン全体にわた っ て使用 さ れ ます。
ほかの JVM を使用す る 必要があ る 場合は、 41 ページの 「JDBC イ ン タ
フ ェース を使用す る ための準備」 を参照 し て く だ さ い。 JVM の起動方
法の詳細については、 『ユーザーズ ガ イ ド 』 マニ ュ アルのアプ リ ケー
シ ョ ン の配布について説明 し た章を参照 し て く だ さ い。
デー タ ベース と の接続
39
JDBC イ ン タ フ ェ ースについて
JDBC ド ラ イバ
JDBC イ ン タ フ ェ ー ス は、 Sybase jConnect™ for JDBC、 Oracle、 IBM
INFORMIX の JDBC ド ラ イ バな ど、 任意の JDBC 準拠 ド ラ イ バ と も 通
信で き ます。 こ れ ら の ド ラ イ バは、 Java のネ イ テ ィ ブ プ ロ ト コ ル ド ラ
イ バであ り 、 JDBC 呼び出 し をデー タ ベース がサポー ト す る SQL 構文
に変換 し ます。
Unicode デー タ へのア
ク セス
InfoMaker は、 ODBC イ ン タ フ ェース を使用 し て、 ANSI/DBCS お よ び
Unicode の両方のデー タ ベース のデー タ に接続、 保存、 検索す る こ と が
で き ますが、 Unicode と ANSI/DBCS 間でのデー タ 変換を行い ません。
文字デー タ ま たは コ マ ン ド テ キ ス ト がデー タ ベー ス に送信 さ れ る と 、
InfoMaker は Unicode 文字列 を 送信 し ま す。 デー タ が正 し く Unicode
デー タ と し て保存 さ れ る こ と を ド ラ イ バが保証す る 必要が あ り ま す。
InfoMaker は文字デー タ を検索す る と き 、デー タ は Unicode であ る と 仮
定 し ます。
Unicode デー タ ベー ス は、 文字セ ッ ト が Unicode 形式 (UTF-8、 UTF16、 UCS-2、 UCS-4 な ど) に設定 さ れ る デー タ ベース の こ と です。 すべ
てのデー タ は、 Unicode 形式でなければな ら ず、 デー タ ベース に保存 さ
れ る デー タ は、 暗黙的に ま たは明示的に Unicode デー タ に変換 さ れな
ければな り ません。
文字セ ッ ト と し て ANSI (ま たは DBCS) を使用す る デー タ ベー ス は、
Unicode デー タ を格納す る 特殊なデー タ 型を使用す る こ と があ り ます。
こ れ ら のデー タ 型を持つカ ラ ムは、 Unicode デー タ だけ を格納 し ます。
その よ う な カ ラ ム に保存 さ れ る デー タ は、 明示的に Unicode に変換 さ
れ る 必要があ り ます。 こ の変換はデー タ ベース サーバ ま たは ク ラ イ ア
ン ト が処理す る 必要があ り ます。
JDBC レ ジ ス ト リ エ ン ト リ
InfoMaker JDBC イ ン タ フ ェ ー ス を経由 し てデー タ にア ク セ ス す る 際、
InfoMaker は内部レ ジ ス ト リ を使用 し て SQL 構文の定義、 DBMS 固有
の関数呼び出 し 、 お よ びバ ッ ク エ ン ド DBMS のデフ ォ ル ト の DBParm
パ ラ メ ー タ 設定を保守 し ます。 こ の内部レ ジ ス ト リ には、 現時点では、
SQL Anywhere、 Adaptive Server Enterprise、 お よ び Oracle のデー タ ベー
ス用のサブエ ン ト リ が含まれてい ます。
40
InfoMaker
第3章
JDBC イ ン タ フ ェ ース
通常、 JDBC エ ン ト リ を変更す る 必要はあ り ま せん。 ただ し 、 既存の
エ ン ト リ を カ ス タ マ イ ズ し た り 、 新 し いエ ン ト リ を追加 し た り す る 必
要が あ る 場合は、 直接 レ ジ ス ト リ を 編集す る か、 ま た は レ ジ ス ト リ
フ ァ イ ルを実行 し て シ ス テ ム レ ジ ス ト リ を変更で き ます。シ ス テ ム レ
ジ ス ト リ に対す る 変更は InfoMaker の内部レ ジ ス ト リ エ ン ト リ を上書
き し ます。 エ ン ト リ の設定値を変更す る ために実行で き る レ ジ ス ト リ
フ ァ イ ルの例については、Sybase\Shared\PowerBuilder の egreg.txt フ ァ
イ ルを参照 し て く だ さ い。
JDBC でサポー ト し ているバージ ョ ン
InfoMaker JDBC イ ン タ フ ェ ース は、 JDBC ド ラ イ バを経由 し てデー タ
ベース にア ク セ スす る と き に pbjdb115.dll を使用 し ます。
JDBC イ ン タ フ ェ ース を使用 し て jConnect ド ラ イ バにア ク セ ス す る に
は、 jConnect バージ ョ ン 4.2 以上を使用 し て く だ さ い。 jConnect の詳細
については、 Sybase のマニ ュ アルを参照 し て く だ さ い。
JDBC イ ン タ フ ェ ー ス を使用 し て Oracle JDBC ド ラ イ バにア ク セ ス す
る には、 Oracle 8 JDBC ド ラ イ バのバージ ョ ン 8.0.4 以上を使用 し て く
だ さ い。 Oracle JDBC ド ラ イ バの詳細については、 Oracle のマニ ュ アル
を参照 し て く だ さ い。
サポー ト し ている JDBC デー タ 型
ODBC の場合 と 同様に、 JDBC イ ン タ フ ェース は、 ネ イ テ ィ ブ イ ン タ
フ ェ ー ス の動作 を 可能な限 り エ ミ ュ レ ー ト す る た めにバ ッ ク エ ン ド
デー タ ベース でネ イ テ ィ ブなデー タ 型の リ ス ト を コ ンパ イ ル、 ソ ー ト 、
表示、 お よ び使用 し ます。
JDBC イ ン タ フ ェ ース を使用する ための準備
JDBC イ ン タ フ ェース を定義 し 、 JDBC イ ン タ フ ェース を経由 し てデー
タ ベー ス に接続す る た めには、 以下の手順に従 っ て使用す る デー タ
ベース を準備す る 必要があ り ます。
1
デー タ ベース と の接続
デー タ ベース サーバを JDBC 接続用に設定 し 、 JDBC 準拠 ド ラ イ
バお よ びネ ッ ト ワー ク ソ フ ト ウ ェ ア を イ ン ス ト ール し ます。
41
JDBC イ ン タ フ ェ ース を使用する ための準備
2
JDBC ド ラ イ バを イ ン ス ト ール し ます。
3
CLASSPATH 環境変数の値を設定す る か、 ま たは こ の値を確認 し
ます。
JDBC 接続を行え る よ う にデー タ ベース サーバを設定 し 、JDBC ド ラ イ
バお よ びネ ッ ト ワ ー ク ソ フ ト ウ ェ ア を イ ン ス ト ールす る 必要が あ り
ます。
ス テ ッ プ 1 : デー タ
ベース サーバの設定
v
デー タ ベース サーバを JDBC 接続用に設定する
1
JDBC 接続を行え る よ う にデー タ ベース サーバが設定 さ れてい る
こ と を確認 し ます。 設定手順については、 デー タ ベース ベン ダの
マニ ュ アルを参照 し て く だ さ い。
2
適切な JDBC ド ラ イ バ ソ フ ト ウ ェ アがデー タ ベース サーバに イ ン
ス ト ール さ れ、 実行 さ れてい る こ と を確認 し ます。
デー タ ベー ス プ ロ フ ァ イ ルで指定が必要な ド ラ イ バ名、 URL 形
式、 お よ び ド ラ イ バ固有のプ ロ パテ ィ については、 ド ラ イ バ ベン
ダのマニ ュ アルを参照 し て く だ さ い。jConnect ド ラ イ バの詳細につ
いては、 43 ページの 「jConnect ド ラ イ バの設定」 を参照 し て く だ
さ い。
3
マシ ン上に必要なネ ッ ト ワ ー ク ソ フ ト ウ ェ ア (TCP/IP な ど) が イ
ン ス ト ール、 実行 さ れていて、 自分のサ イ ト のデー タ ベー ス サー
バへ接続で き る よ う に正 し く 設定 さ れてい る こ と を確認 し ます。
た と えば、 使用 し てい る ネ ッ ト ワ ー ク プ ロ ト コ ルやオペレーテ ィ
ン グ シ ス テ ム プ ラ ッ ト フ ォ ーム を サポー ト す る 、ネ ッ ト ワ ー ク コ
ミ ュ ニ ケーシ ョ ン ド ラ イ バを イ ン ス ト ールす る 必要があ り ます。
イ ン ス ト ール と 設定の手順については、 ネ ッ ト ワ ー ク ま たはデー
タ ベース の管理者に問い合わせて く だ さ い。
ス テ ッ プ 2 :JDBC ド
ラ イバのイ ン ス ト ール
InfoMaker のセ ッ ト ア ッ プ プ ロ グ ラ ム で、 標準 イ ン ス ト ールを選択す
る か、 カ ス タ ム イ ン ス ト ールを選択 し た場合は JDBC ド ラ イ バを選択
し て く だ さ い。
ステ ッ プ 3
:CLASSPATH 環境変
数、 および [Java]
タ ブの値の確認または
設定
PATH 環境変数 と CLASSPATH 環境変数 に、 完全修飾 さ れ た 適切 な
フ ァ イ ル名を示す値が設定 さ れてい る こ と を確認設定す る か、 それ ら
を設定 し ます。
42
InfoMaker と 一緒に イ ン ス ト ール し た JDK を使用 し てい る 場合、 こ れ
ら の環境変数を変更す る 必要はあ り ません。
InfoMaker
第3章
JDBC イ ン タ フ ェ ース
JDK 1.2 以上を使用 し てい る 場合、CLASSPATH 環境変数には Sun Java
VM パ ッ ケージ を含む必要はあ り ませんが、 PATH 環境変数には Sun
Java VM ラ イ ブ ラ リ jvm.dll のエ ン ト リ (た と えば path\
JDK15\JRE\bin\client) が含まれてい る 必要があ り ます。
jConnect ド ラ イバの
設定
Sybase jConnect ド ラ イ バを使用す る 場合は、Adaptive Server デー タ ベー
ス で JDBC ス ト ア ド プ ロ シージ ャ を イ ン ス ト ールす る な ど、 必要な設
定手順を完了 し てい る こ と を確認 し て く だ さ い。ま た、使用 コ ン ピ ュ ー
タ の CLASSPATH 環境変数に、 jConnecgt ド ラ イ バの保存場所を指 し て
い る エ ン ト リ が含まれてい る こ と も 確認 し ます。
た と えば、 jConnect 6.05 を使用 し てい る 場合は、 次の よ う なエ ン ト リ
が含まれてい る こ と が必要です。
C:\Program Files\Sybase\jConnect-6.05\classes\jconn3.jar
jConnect の設定方法の詳細については、 jConnect for JDBC のマニ ュ ア
ルを参照 し て く だ さ い。
JDBC イ ン タ フ ェ ースの定義
プ ロ フ ァ イルの作成
JDBC イ ン タ フ ェース を使用す る 接続を定義す る には、 DB プ ロ フ ァ イ
ル設定- JDBC ダ イ ア ロ グ ボ ッ ク ス で基本接続パ ラ メ ー タ な ど の値を指
定 し てデー タ ベース プ ロ フ ァ イ ルを作成す る 必要があ り ます。 次回以
降、 こ のデー タ ベース プ ロ フ ァ イ ルを選択す る と 、 そのデー タ ベース
にいつで も 接続で き ます。
デー タ ベース プ ロ フ ァ イ ルの定義方法については、 6 ページの 「デー
タ ベース プ ロ フ ァ イ ルの使い方」 を参照 し て く だ さ い。
接続パラ メ ー タ の指定
JDBC API で提供 さ れ る 最大の柔軟性を提供す る ために、 JDBC イ ン タ
フ ェ ー ス は、 接続パ ラ メ ー タ の さ ま ざ ま な組み合わせでのデー タ ベー
ス接続をサポー ト し ます。
•
ド ラ イバ名、 URL、 プ ロパテ ィ ド ラ イ バ固有の プ ロ パ テ ィ を 定義
す る 必要があ る 場合は、 こ の よ う な接続パ ラ メ ー タ の組み合わせ
で値を指定す る 必要があ り ます。プ ロ パテ ィ を定義す る と き は、プ
ロ パテ ィ フ ィ ール ド でユーザ ID と パ ス ワ ー ド も 定義す る 必要が
あ り ます。
た と えば、 jConnect ド ラ イ バに接続す る 場合は、 [ ド ラ イ バ固有の
パ ラ メ ー タ ] フ ィ ール ド に以下の値を入力す る 必要があ り ます。
SQLINITSTRING=set TextSize 32000;
デー タ ベース と の接続
43
JDBC イ ン タ フ ェ ースの定義
user=system;password=manager;
•
ド ラ イバ名、 URL、 ユーザ ID、 パスワー ド ド ラ イ バ 固 有 の プ ロ パ
テ ィ を定義す る 必要がない場合は、 こ の よ う な接続パ ラ メ ー タ の
組み合わせで値を指定 し ます。
Driver Name: com.sybase.jdbc3.jdbc.SybDriver
URL: jdbc:sybase:Tds:localhost:2638
Login ID:
dba
Password:
sql
•
ド ラ イバ名、 URL ユーザ ID と パ ス ワー ド が URL の一部に含まれ
る 場合は、 こ の よ う な接続パ ラ メ ー タ の組み合わせで値を指定 し
ます。
た と えば、 Oracle JDBC ド ラ イ バに接続す る 場合は、 次の よ う に
URL にユーザ ID と パ ス ワ ー ド を含め る こ と がで き ます。
jdbc:oracle:thin:userid/password@host:port:dbname
jConnect へ接続する際のプ ロパテ ィ の指定
InfoMaker で Blob 型を使用す る 場合、 jConnect では Blob サ イ ズに制約
があ る こ と に注意が必要です。 そのため、 InfoMaker か ら デー タ ベース
接続を行 う 前に、使用す る 予定の最大サ イ ズ よ り 大 き い値に Blob サ イ
ズ を設定 し 直 し ます。
Blob サ イ ズ を設定す る には、 [接続] ページの [ ド ラ イ バ固有のパ ラ
メ ー タ ] ボ ッ ク ス で jConnect の SQLINITSTRING プ ロ パテ ィ を定義 し
ます。SQLINITSTRING プ ロ パテ ィ は、次の よ う に、バ ッ ク エ ン ド デー
タ ベース サーバに渡 さ れ る コ マ ン ド を定義す る のに使用 さ れ ます。
SQLINITSTRING=set TextSize 32000;
[ ド ラ イ バ固有のパ ラ メ ー タ ] ボ ッ ク ス でプ ロ パテ ィ を 定義す る 場合
は、ユーザ ID と パ ス ワー ド も 定義す る 必要があ る こ と に注意 し て く だ
さ い。
44
InfoMaker
第 4 章
OLE DB イ ン タ フ ェ ース
こ の章について
こ の章では、 OLE DB イ ン タ フ ェ ー ス の概要について説明 し 、 こ
の イ ン タ フ ェース を使用す る ための準備や OLE DB デー タ ベース
プ ロ フ ァ イ ルの定義の し かたについて解説 し ます。
内容
詳細について
項目
OLE DB イ ン タ フ ェース について
OLE DB イ ン タ フ ェース を使用す る ための準備
OLE DB イ ン タ フ ェース の定義
ページ
45
50
52
こ の章では、 一般的な OLE DB イ ン タ フ ェース の使用について説
明 し てい ます。 詳細については、 以下を参照 し て く だ さ い。
•
Microsoft の MSDN ラ イ ブ ラ リ のサイ ト
http://msdn.microsoft.com/en-us/library/ms713643.aspx で 『OLE DB
Programmer's Guide』 マニ ュ アルを参照 し て く だ さ い。
•
デー タ プ ロ バ イ ダのベン ダが提供す る オ ン ラ イ ン ヘルプ
•
OLE DB デー タ プ ロ バ イ ダに接続す る 方法を解説 し たテ ク ニ
カル ド キ ュ メ ン ト があ る か ど う か を確認 し て く だ さ い。 接続
に関す る 新 し い情報は、 Sybase サポー ト と ダウ ン ロー ド のサイ ト
http://www.sybase.com/support か ら 取得で き ます。
OLE DB イ ン タ フ ェ ースについて
InfoMaker では、OLE DB デー タ プ ロ バ イ ダ を経由 し て さ ま ざ ま な
デー タ にア ク セ ス で き ま す。 こ の節では、 OLE DB 接続を使用 し
て InfoMaker か ら デー タ にア ク セ ス す る ために知っ てお く 必要が
あ る 情報について解説 し ます。
デー タ ベース と の接続
45
OLE DB イ ン タ フ ェ ースについて
サポー ト し ている OLE DB デー タ プ ロバイ ダ
InfoMaker で提供 さ れ る OLE DB デー タ プ ロ バ イ ダ と 、 ア ク セ ス で き
る デー タ の一覧については、 オ ン ラ イ ン ヘルプの 「サポー ト し てい る
デー タ ベース イ ン タ フ ェ ース」 を参照 し て く だ さ い。
OLE DB と は ?
OLE DB API
OLE DB は、 Microsoft 社が開発 し た標準アプ リ ケーシ ョ ン プ ロ グ ラ ミ
ン グ イ ン タ フ ェ ー ス (API) で、 Microsoft の Data Access Components
ソ フ ト ウ ェ アの構成要素 と な っ てい ます。 OLE DB を使 う と 、 アプ リ
ケーシ ョ ンは OLE DB デー タ プ ロ バ イ ダがあ る さ ま ざ ま なデー タ にア
ク セ ス で き ます。 OLE DB に よ り 、 アプ リ ケーシ ョ ンは、 SQL ベース
の DBMS だけでな く 、Btrieve の よ う な イ ンデ ッ ク ス付 き シーケ ン シ ャ
ル フ ァ イ ル、 Paradox の よ う なパー ソ ナル デー タ ベース、 ス プ レ ッ ド
シー ト や電子 メ ール と い っ た ツールな ど、 さ ま ざ ま な形式で保存 さ れ
てい る デー タ に対 し て同一の方法でア ク セ ス で き ます。
OLE DB イ ン タ フ ェース では、 SQL ベース のデー タ ベース に直接接続
で き ます。
OLE DB を経由 し た
デー タ ア ク セス
OLE DB イ ン タ フ ェ ー ス を提供す る InfoMaker な ど のアプ リ ケーシ ョ
ン は、 OLE DB デー タ プ ロ バ イ ダが あ る デー タ に ア ク セ ス で き ま す。
OLE DB デー タ プ ロ バ イ ダは、特定のデー タ ソ ース にア ク セ スす る た
めの OLE DB 関数呼び出 し を実装す る ダ イ ナ ミ ッ ク リ ン ク ラ イ ブ ラ
リ (DLL) です。
InfoMaker OLE DB イ ン タ フ ェース は、 表 4-1 に示す OLE DB オブジ ェ
ク ト イ ン タ フ ェ ー ス を サポー ト す る 任意の OLE DB デー タ プ ロ バ イ
ダに接続で き ます。OLE DB デー タ プ ロ バ イ ダは Microsoft OLE DB 2.0
仕様に準拠す る ために こ れ ら の イ ン タ フ ェ ー ス を サポー ト し てい る 必
要があ り ます。
表 4-1: 必要な OLE DB イ ン タ フ ェ ース
IAccessor
IDBInitialize
IColumnsInfo
IDBProperties
ICommand
IOpenRowset
ICommandProperties
IRowset
ICommandText
IRowsetInfo
IDBCreateCommand
IDBSchemaRowset
IDBCreateSession
ISourcesRowset
46
InfoMaker
第4章
OLE DB イ ン タ フ ェ ース
必要な OLE DB イ ン タ フ ェース に加え て、 InfoMaker は、 さ ら に高度な
機能を提供す る ために、 表 4-2 に示す OLE DB イ ン タ フ ェース も 使用
し ます。
表 4-2: そのほかの OLE DB イ ン タ フ ェ ース
OLE DB イ ン タ フ ェ ース
ICommandPrepare
IDBInfo
IDBCommandWithParameters
IErrorInfo
IErrorRecords
IIndexDefinition
IMultipleResults
IRowsetChange
IRowsetUpdate
ISQLErrorInfo
ISupportErrorInfo
ITableDefinition
InfoMaker での使用目的
コ マ ン ド の準備お よ びカ ラ ム情報の取得
デー タ プ ロ バ イ ダへのプ ロ パ テ ィ の問い合
わせ。 こ の イ ン タ フ ェ ース がサポー ト さ れて
いない場合、 デー タ ベース接続は失敗す る こ
と があ る
デー タ プ ロ バ イ ダへのパ ラ メ ー タ の問い合
わせ
エ ラ ー情報の提供
エ ラ ー情報の提供
拡張属性シ ス テ ム テーブルの イ ン デ ッ ク ス
の作成。 デー タ ベース ペ イ ン タ の イ ンデ ッ ク
ス の作成。 こ の イ ン タ フ ェ ース がサポー ト さ
れ て い な い 場合、 InfoMaker は pbodb115.ini
フ ァ イ ルで イ ンデ ッ ク ス定義構文を探す
情報の提供
拡張属性シ ス テ ム テーブル作成時に値 を 入
力する 。 Blob の更新
拡張属性シ ス テ ム テーブルの作成
エ ラ ー情報の提供
エ ラ ー情報の提供
拡張属性 シ ス テ ム テ ーブルの作成。 デー タ
ベース ペ イ ン タ のテーブルの作成。 こ の イ ン
タ フ ェ ース がサポー ト さ れていない場合、 以
下の こ と が起 こ り ます。
• InfoMaker は、 pbodb115.ini フ ァ イ ルでテー
ブル定義構文を探す
• InfoMaker カ タ ロ グ テーブルが使用で き な
い
ITransactionLocal
デー タ ベース と の接続
• カ ラ ムの変更やデータ ベース ペイ ン タ での
デー タ の編集な ど、 DDL 操作、 DML 操作
が正 し く 機能 し ない
ト ラ ン ザ ク シ ョ ン のサポー ト 。 こ の イ ン タ
フ ェ ー ス が サ ポ ー ト さ れ て い な い 場 合、
InfoMaker はデ フ ォ ル ト で AutoCommit モー
ド を使用する
47
OLE DB イ ン タ フ ェ ースについて
Unicode デー タ へのア
ク セス
InfoMaker は、 OLE DB イ ン タ フ ェ ース を使用 し て、 ANSI/DBCS お よ
び Unicode の両方のデー タ ベー ス のデー タ に接続、 保存、 検索す る こ
と がで き ますが、 Unicode と ANSI/DBCS 間でのデー タ 変換は行い ませ
ん。 文字デー タ ま たは コ マ ン ド テ キ ス ト がデー タ ベース に送信 さ れ る
と 、InfoMaker は Unicode 文字列を送信 し ます。デー タ が正 し く Unicode
デー タ と し て保存 さ れ る こ と を デー タ プ ロ バ イ ダ が保証す る 必要が
あ り ます。 InfoMaker は文字デー タ を検索す る と き 、 デー タ は Unicode
であ る と 仮定 し ます。
Unicode デー タ ベー ス は、 文字セ ッ ト が Unicode 形式 (UTF-8、 UTF16、 UCS-2、 UCS-4 な ど) に設定 さ れ る デー タ ベース の こ と です。 すべ
てのデー タ は、 Unicode 形式でなければな ら ず、 デー タ ベース に保存 さ
れ る デー タ は、 暗黙的に ま たは明示的に Unicode デー タ に変換 さ れな
ければな り ません。
文字セ ッ ト と し て ANSI (ま たは DBCS) を使用す る デー タ ベー ス は、
Unicode デー タ を格納す る 特殊なデー タ 型を使用す る こ と があ り ます。
こ れ ら のデー タ 型を持つカ ラ ムは、Unicode デー タ だけです。 その よ う
な カ ラ ム に保存 さ れ る デー タ は、 明示的に Unicode に変換 さ れ る 必要
があ り ます。 こ の変換はデー タ ベース サーバ ま たは ク ラ イ ア ン ト が処
理す る 必要があ り ます。
OLE DB 接続の コ ンポーネ ン ト
InfoMaker で OLE DB デー タ プ ロ バ イ ダにア ク セ スす る 場合、 デー タ
プ ロ バ イ ダに到達す る ま でにい く つかの レ イ ヤ を経由 し ます。 それぞ
れの レ イ ヤは、接続におけ る 独立 し た コ ン ポーネ ン ト であ り 、コ ン ポー
ネ ン ト ご と に提供 し てい る ベン ダが違 う 可能性があ り ます。
OLE DB は標準 API であ る ため、InfoMaker はど の よ う な OLE DB デー
タ プ ロ バ イ ダへア ク セ ス す る 場合で も 共通の イ ン タ フ ェ ー ス を 使用
し ます。 InfoMaker が必要 と す る オブジ ェ ク ト イ ン タ フ ェース を OLE
DB デー タ プ ロ バ イ ダがサポー ト し てい る 限 り 、 InfoMaker は OLE DB
イ ン タ フ ェ ース を経由 し てその OLE DB デー タ プ ロ バ イ ダにア ク セ ス
で き ます。
図 4-1 では、 OLE DB 接続の一般的な コ ン ポーネ ン ト を示 し ます。
48
InfoMaker
第4章
OLE DB イ ン タ フ ェ ース
図 4-1: OLE DB 接続のコ ンポーネ ン ト
OLE DB デー タ プ ロバイ ダの入手
InfoMaker を使用 し てい る 場合、 InfoMaker で要求 さ れ る OLE DB オブ
ジ ェ ク ト イ ン タ フ ェース をサポー ト す る も のであれば、 Sybase 社以外
のベン ダか ら 入手 し た OLE DB デー タ プ ロ バ イ ダであ っ て も デー タ に
ア ク セ スす る こ と がで き ます。 ほ と ん ど の場合、 こ の よ う な ド ラ イ バ
を InfoMaker で使用で き ますが、 Sybase 社ではほかのベン ダが提供す
る ド ラ イ バの正式な接続検証テ ス ト は実施 し てい ません。
サポー ト し ている OLE DB のバージ ョ ン
OLE DB イ ン タ フ ェ ース は OLE DB デー タ プ ロ バ イ ダ を経由 し てデー
タ ベー ス にア ク セ ス す る 際に PBOLE115.DLL と い う 名前の DLL を使
用 し ます。
デー タ ベース と の接続
49
OLE DB イ ン タ フ ェ ース を使用する ための準備
必要 と さ れる OLE DB のバージ ョ ン
OLE DB イ ン タ フ ェース を使用 し て OLE DB デー タ ベース にア ク セ ス
す る には、 OLE DB バージ ョ ン 2.0 以上をサポー ト す る OLE DB デー
タ プ ロ バ イ ダ を経由 し て接続す る 必要があ り ます。 OLE DB 仕様の詳
細については、 Microsoft ラ イ ブ ラ リ のサイ ト http://msdn.microsoft.com/enus/library/default.aspx を参照 し て く だ さ い。
OLE DB イ ン タ フ ェ ース を使用する ための準備
イ ン タ フ ェ ース を定義 し 、 OLE DB を経由 し てデー タ プ ロ バ イ ダに接
続す る 前に、 次の操作を行い ます。
1
デー タ ベース サーバ、 ネ ッ ト ワー ク 、 お よ び ク ラ イ ア ン ト ソ フ ト
ウ ェ ア を イ ン ス ト ール し て設定 し ます。
2
OLE DB イ ン タ フ ェ ース、 お よ びデー タ ソ ース にア ク セ スす る た
めの OLE DB デー タ プ ロ バ イ ダ を イ ン ス ト ール し ます。
3
マシ ン に Microsoft Data Access Components ソ フ ト ウ ェ ア を イ ン ス
ト ール し ます。
4
必要であれば、 OLE DB デー タ ソ ース を定義 し ます。
デー タ ベース サーバを イ ン ス ト ールお よ び設定 し 、ネ ッ ト ワー ク ソ フ
ト ウ ェ ア と ク ラ イ ア ン ト ソ フ ト ウ ェ ア を イ ン ス ト ールす る 必要が あ
り ます。
ス テ ッ プ 1 : デー タ
サーバのイ ン ス ト ール
と 設定
v
デー タ ベース サーバ、 ネ ッ ト ワー ク、 ク ラ イ ア ン ト ソ フ ト ウ ェ ア を イ ン ス
ト ール し 、 設定する
1
サーバに適切なデータ ベース ソ フ ト ウ ェ アがイ ン ス ト ールさ れ、実
行 さ れてい る こ と を確認 し ます。
デー タ ベー ス サーバ ソ フ ト ウ ェ ア はデー タ ベー ス のベン ダ か ら
入手す る 必要が あ り ま す。 イ ン ス ト ールの手順については、 デー
タ ベース ベン ダのマニ ュ アルを参照 し て く だ さ い。
50
InfoMaker
第4章
2
OLE DB イ ン タ フ ェ ース
マシ ン上に必要なネ ッ ト ワ ー ク ソ フ ト ウ ェ ア (TCP/IP な ど) が イ
ン ス ト ール、 実行 さ れていて、 自分のサ イ ト のデー タ サーバへ接
続で き る よ う に正 し く 設定 さ れてい る こ と を確認 し ま す。 た と え
ば、 使用 し てい る ネ ッ ト ワ ー ク プ ロ ト コ ルやオペレーテ ィ ン グ シ
ス テ ム プ ラ ッ ト フ ォーム をサポー ト す る 、 ネ ッ ト ワ ー ク コ ミ ュ ニ
ケーシ ョ ン ド ラ イ バを イ ン ス ト ールす る 必要があ り ます。
イ ン ス ト ールお よ び設定の手順については、 ネ ッ ト ワ ー ク ま たは
デー タ ソ ース の管理者にお問い合わせ く だ さ い。
3
必要に応 じ て、 InfoMaker が イ ン ス ト ール さ れてい る ク ラ イ ア ン ト
マ シ ン それぞれに、 適切な ク ラ イ ア ン ト ソ フ ト ウ ェ ア を イ ン ス
ト ール し ます。
ク ラ イ ア ン ト ソ フ ト ウ ェ アの要件
ク ラ イ ア ン ト ソ フ ト ウ ェ アの要件を確認す る には、 デー タ ベース
ベン ダのマニ ュ アルを参照 し て く だ さ い。
ス テ ッ プ 2 :OLE DB
イ ン タ フ ェ ース と デー
タ プ ロバイ ダのイ ン
ス ト ール
InfoMaker のセ ッ ト ア ッ プ プ ロ グ ラ ム で、 カ ス タ ム イ ン ス ト ールを選
択 し 、デー タ ベース にア ク セ スす る OLE DB プ ロ バ イ ダ を選択 し ます。
InfoMaker 付属の OLE DB デー タ プ ロ バ イ ダ を イ ン ス ト ール し て も 、ほ
かのベ ン ダ か ら 提供 さ れ る デー タ プ ロ バ イ ダ を イ ン ス ト ール し て も
か ま い ません。
ス テ ッ プ 3 :Microsoft
Data Access
Components ソ フ ト
ウ ェ アのイ ン ス ト ール
InfoMaker OLE DB イ ン タ フ ェース は、 Microsoft Data Access
Components (MDAC) バージ ョ ン 2.8 以降の ソ フ ト ウ ェ アの機能を必
要 と し ます。 バージ ョ ン 2.8 は、 Windows XP Service Pack 2 お よ び
Windows Server 2003 と と も に配布 さ れます。
マシ ン の MDAC のバージ ョ ン を確認す る には、 MDAC のバージ ョ ン を確
認す る ペー ジ のサ イ ト http://support.microsoft.com/kb/301202/ja か ら MDAC
Component Checker ユーテ ィ リ テ ィ を ダ ウ ン ロ ー ド し ます。
Windows Vista オペ レ ーテ ィ ン グ シ ス テ ム では、 Windows Data Access
Components (DAC) 6.0 は Vista で動作す る ための変更を含んでい ます
が、 それ以外は MDAC 2.8 と 機能上同等です。
MDAC と と も に イ ン ス ト ール さ れる OLE DB デー タ プ ロバイ ダ
自動的に SQL Server (SQLOLEDB) と ODBC (MSDASQL) のプ ロ バ
イ ダ を含むい く つかの Microsoft OLE DB デー タ プ ロ バ イ ダが MDAC
と と も に イ ン ス ト ール さ れ ます。
デー タ ベース と の接続
51
OLE DB イ ン タ フ ェ ースの定義
ス テ ッ プ 4 :OLE DB
デー タ ソ ースの定義
OLE DB デー タ プ ロ バ イ ダ を イ ン ス ト ール し た ら 、 そのデー タ プ ロ バ
イ ダが ア ク セ ス す る OLE DB デー タ ソ ー ス を 定義す る 必要が あ り ま
す。 デー タ ソ ース を定義す る 方法は、 使用 し てい る OLE DB デー タ と
そのデー タ の提供ベン ダに よ っ て異な り ます。
ODBC デー タ プ ロ バ イ ダ (Microsoft OLE DB Provider for ODBC な ど)
に接続す る 場合は、 直接 ODBC に接続す る 場合 と 同 じ よ う に ODBC
デー タ ソ ース を定義す る 必要があ り ます。ODBC デー タ ソ ース を定義
す る には、 Microsoft の ODBC Data Source Administrator を使用 し ます。
Windows の コ ン ト ロ ール パネ ルか ら 、 あ る いは InfoMaker のデー タ
ベース ペ イ ン タ か DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス か ら 、 こ
のユーテ ィ リ テ ィ にア ク セ ス で き ます。
OLE DB イ ン タ フ ェ ースの定義
OLE DB のプ ロ フ ァ イ
ルの作成
OLE DB イ ン タ フ ェース を使用す る 接続を定義す る には、DB プ ロ フ ァ
イ ル設定 - OLE DB ダ イ ア ロ グ ボ ッ ク ス で基本接続パ ラ メ ー タ な ど の
値を指定 し てデー タ ベー ス プ ロ フ ァ イ ルを作成す る 必要があ り ま す。
作成後は、 いつで も こ のプ ロ フ ァ イ ルを選択 し て開発環境か ら デー タ
に接続す る こ と がで き ます。
デー タ ベース プ ロ フ ァ イ ルの定義方法については、 6 ページの 「デー
タ ベース プ ロ フ ァ イ ルの使い方」 を参照 し て く だ さ い。
接続パラ メ ー タ の指定
52
接続パ ラ メ ー タ の [プ ロ バ イ ダ] お よ び [デー タ ソ ース] の値を指定
す る 必要があ り ま す。 [プ ロ バ イ ダ] ド ロ ッ プダ ウ ン リ ス ト の イ ン ス
ト ール済みのデー タ プ ロ バ イ ダの リ ス ト か ら デー タ プ ロ バ イ ダ を選
択 し ます。 [デー タ ソ ース] の値は、 使用す る デー タ ソ ース接続の種
類に よ っ て異な り ます。 以下に例を示 し ます。
•
Microsoft OLE DB Provider for ODBC を使用 し て EAS Demo DB に
接続す る 場合は、 [プ ロ バ イ ダ] の値 と し て 「MSDASQL」 を選択
し 、[デー タ ソ ース] の値 と し て実際の ODBC デー タ ソ ース名 ( こ
の場合は EAS Demo DB) を入力 し ます。
•
Microsoft OLE DB Provider for SQL Server を使用す る 場合は、[プ ロ
バ イ ダ] の値 と し て 「SQLOLEDB」 を選択 し 、 [デー タ ソ ース] の
値 と し て実際のサーバ名を入力 し ます。 複数のデー タ ベース イ ン
ス タ ン ス を持つ こ と がで き る ため、 [拡張プ ロ パテ ィ ] フ ィ ール ド
でデー タ ベース名 (た と えば Database=Pubs) も 使用す る 必要があ
り ます。
InfoMaker
第4章
デー タ リ ン ク API の
使い方
OLE DB イ ン タ フ ェ ース
[デー タ リ ン ク ] オプシ ョ ン を使 う と 、 Microsoft デー タ リ ン ク API に
ア ク セ ス し 、 フ ァ イ ルを定義 し た り 、 OLE DB 接続情報が格納 さ れた
既存の フ ァ イ ルを使用 し た り す る こ と がで き ます。デー タ リ ン ク フ ァ
イ ルは、 .udl と い う 拡張子で識別 さ れます。 デー タ リ ン ク フ ァ イ ルを
使用 し てデー タ ソ ースへ接続す る 場合は、DB プ ロ フ ァ イ ル設定 - OLE
DB ダ イ ア ロ グ ボ ッ ク ス で指定 し たほかの設定値はすべて無視 さ れ ま
す。
こ のオプシ ョ ン を起動す る には、 [接続] タ ブの [フ ァ イ ル名] チ ェ ッ
ク ボ ッ ク ス を選択 し て [フ ァ イ ル名] ボ ッ ク ス の隣のボ タ ン を ク リ ッ
ク し ま す。 ま た、 デー タ ベー ス ペ イ ン タ の [使用で き る DB イ ン タ
フ ェ ー ス] の リ ス ト で、 OLE DB イ ン タ フ ェ ー ス に含 ま れ る Manage
Data Links ユーテ ィ リ テ ィ を ダブル ク リ ッ ク し て も デー タ リ ン ク API
を起動で き ます。
デー タ リ ン ク API の使い方についての詳細は、 Microsoft MSDN ラ イ ブ
ラ リ のサイ ト http://msdn.microsoft.com/en-us/library/ms713643.aspx のマニ ュ
アル 『OLE DB Programmer's Guide』 を参照 し て く だ さ い。
デー タ ベース と の接続
53
OLE DB イ ン タ フ ェ ースの定義
54
InfoMaker
第
3
部
ネ イ テ ィ ブ デー タ ベース イ
ン タ フ ェ ースの使い方
第 3 部では、 ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ース を
使用 し て ア ク セ スするデー タ ベース接続を セ ッ ト ア ッ プお
よび定義する方法について説明 し ます。
第 5 章
ネ イ テ ィ ブ デー タ ベース イ ン タ
フ ェ ースの使い方
こ の章について
こ の章では、 ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェース の概要につ
いて説明 し ます。 以降の章では、 デー タ ベー ス を使用す る ための
準備や、 デー タ にア ク セ スす る ための固有のデー タ ベース イ ン タ
フ ェース パ ラ メ ー タ の定義の し かたについて解説 し ます。
内容
項目
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェース について
デー タ ベース イ ン タ フ ェ ース接続の コ ン ポーネ ン ト
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェース の使い方
ページ
57
58
59
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースについて
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェース では、 さ ま ざ ま なデー タ
ベースや DBMS と ネ イ テ ィ ブな接続がで き ます。 こ の章では、 ネ
イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を 使用 し てデー タ ベー ス
に接続をす る 方法について解説 し ます。
サポー ト さ れ る すべてのネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー
ス の一覧については、オ ン ラ イ ン ヘルプの「サポー ト し てい る デー
タ ベース イ ン タ フ ェ ース」 を参照 し て く だ さ い。
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェース を使用す る と 、
InfoMaker か ら デー タ ベース に直接 (ネ イ テ ィ ブ) に接続 し ます。
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェース は、ベン ダ固有のデー タ
ベー ス API を経由 し て特定のデー タ ベー ス と 接続 を行 う ために、
そ れ ぞ れ専用 の イ ン タ フ ェ ー ス DLL を 使用 し ま す。 た と え ば
Microsoft SQL Server の SQL Native Client イ ン タ フ ェース は、 デー
タ ベー ス にア ク セ ス す る ために PBSNC115.DLL と い う DLL を使
用 し ま す。 ま た、 Oracle 11g デー タ ベー ス イ ン タ フ ェ ー ス は、
PBORA115.DLL を使用 し てデー タ ベース にア ク セ ス し ます。
デー タ ベース と の接続
57
デー タ ベース イ ン タ フ ェ ース接続の コ ンポーネ ン ト
こ れに対 し て標準デー タ ベース イ ン タ フ ェース接続の場合は、 標準
API を使用 し てデー タ ベース にア ク セ ス し ます。 た と えば、 InfoMaker
は イ ン タ フ ェース DLL (PBODB115.DLL) を使用 し て ODBC ド ラ イ
バ マネージ ャ や対応す る ド ラ イ バ と 通信 し て、 ODBC デー タ ソ ース に
ア ク セ ス し ます。
デー タ ベース イ ン タ フ ェ ース接続の コ ンポーネ ン ト
ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を使用 し てデー タ ベー ス に
ア ク セ ス す る 場合、 デー タ ベース に到達す る ま でにい く つかの レ イ ヤ
を経由 し ます。 それぞれの レ イ ヤは、 デー タ ベー ス 接続におけ る 独立
し た コ ン ポーネ ン ト で あ り 、 レ イ ヤ ご と に提供 し て い る ベ ン ダ が異
な っ てい る 可能性があ り ます。
58
InfoMaker
第5章
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースの使い方
図 5-1: デー タ ベース接続の コ ンポーネ ン ト
デー タ ベー ス接続の特定の コ ン ポーネ ン ト を示す図については、 ネ イ
テ ィ ブ デー タ ベース イ ン タ フ ェース を説明 し てい る 章の 「基本 ソ フ ト
ウ ェ ア コ ン ポーネ ン ト 」 を参照 し て く だ さ い。
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースの使い方
ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を使用 し てデー タ ベー ス に
ア ク セ スす る には、 い く つかの基本ス テ ッ プ を実行 し ます。
デー タ ベース と の接続
59
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースの使い方
ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を経由 し てデー タ ベー ス に
接続す る には、 まず、使用す る デー タ ベース を準備 し ます。デー タ ベー
ス を準備す る と 、InfoMaker か ら そのデー タ にア ク セ ス し 利用で き る よ
う にな り ます。
デー タ ベース を使用す
る ための準備
InfoMaker を起動 し 、 デー タ ベー ス イ ン タ フ ェ ー ス を定義 し てデー タ
ベース に接続す る 前に、InfoMaker の外部の環境でデー タ ベース と 接続
す る ための準備が必要です。 各デー タ ベー ス に よ っ て必要な条件は異
な り ますが、 一般に、 デー タ ベー ス を準備す る には以下の手順を実行
し ます。
v
InfoMaker で使用するデー タ ベース を準備する
1
必要なデー タ ベース サーバ ソ フ ト ウ ェ アが、 サ イ ト に正 し く イ ン
ス ト ール さ れ、 設定 さ れてい る こ と を確認 し ます。
2
デー タ ベース サーバに接続す る ためにネ ッ ト ワー ク ソ フ ト ウ ェ
アが必要 と な る 場合には、 ネ ッ ト ワ ー ク ソ フ ト ウ ェ アがサ イ ト と
ク ラ イ ア ン ト マシ ン に正 し く イ ン ス ト ール さ れ、 設定 さ れてい る
こ と を確認 し ます。
3
必要なデー タ ベース ク ラ イ ア ン ト ソ フ ト ウ ェ アが ク ラ イ ア ン ト
コ ン ピ ュ ー タ に正 し く イ ン ス ト ール さ れ、 設定 さ れてい る こ と を
確認 し ます (通常、 ク ラ イ ア ン ト コ ン ピ ュ ー タ は InfoMaker が実
行 さ れてい る コ ン ピ ュ ー タ です)。
ク ラ イ ア ン ト ソ フ ト ウ ェ アは、 デー タ ベース ベン ダか ら 入手す る
必要が あ り ま す。 ま た、 イ ン ス ト ールす る ク ラ イ ア ン ト ソ フ ト
ウ ェ アのバージ ョ ン が、 以下をすべてサポー ト し てい る こ と を確
認 し て く だ さ い。
ク ラ イ ア ン ト マシ ン上で稼働 し てい る オペレーテ ィ ン グ シ ス
テム
ア ク セ スす る デー タ ベース のバージ ョ ン
稼働 し てい る InfoMaker のバージ ョ ン
4
InfoMaker の外部の環境で、 ア ク セ ス し たいサーバやデー タ ベース
に接続で き る こ と を確認 し ます。
デー タ ベース ご と の具体的な手順については、 ネ イ テ ィ ブ デー タ ベー
ス イ ン タ フ ェース についての章の 「デー タ ベース に接続す る ための準
備」 を参照 し て く だ さ い。
ネ イ テ ィ ブ デー タ
ベース イ ン タ フ ェ ー
スのイ ン ス ト ールにつ
いて
60
デー タ ベー ス を使用す る ための準備を し た後で、 デー タ ベー ス にア ク
セ ス す る ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を イ ン ス ト ールす
る 必要があ り ます。 詳細については、 それぞれの イ ン タ フ ェ ー ス の説
明を参照 し て く だ さ い。
InfoMaker
第5章
ネ イ テ ィ ブ デー タ
ベース イ ン タ フ ェ ー
スの定義
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースの使い方
デー タ ベー ス にア ク セ スす る 準備を終え た ら 、 InfoMaker を起動 し て、
デー タ ベー ス イ ン タ フ ェ ー ス を 定義 し ま す。 デー タ ベー ス イ ン タ
フ ェ ー ス を定義す る には、 その イ ン タ フ ェ ース の DB プ ロ フ ァ イ ル設
定 ダ イ ア ロ グ ボ ッ ク ス に適切な値を入力 し て、デー タ ベース プ ロ フ ァ
イ ルを作成す る 必要があ り ます。
一般的な手順については、 7 ページの 「デー タ ベース プ ロ フ ァ イ ルの
作成について」 を参照 し て く だ さ い。特定のデー タ ベース に固有のデー
タ ベース イ ン タ フ ェース パ ラ メ ー タ の定義方法については、ご使用の
デー タ ベース イ ン タ フ ェ ース についての章の 「デー タ ベース に接続す
る ための準備」 を参照 し て く だ さ い。
詳細について
以降の章では、各ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ース の使用に関
す る 一般的な内容について説明 し ます。 詳細については、 以下を参照
し て く だ さ い。
•
デー タ ベース に接続す る 方法を解説 し たテ ク ニ カル ド キ ュ メ ン ト
があ る か ど う か確認 し て く だ さ い。 接続に関す る 新 し い情報は、
Sybase サポー ト と ダウン ロー ド のサイ ト http://www.sybase.com/support
か ら 取得で き ます。
•
デー タ ベース と の接続
デー タ ベース サーバや ク ラ イ ア ン ト ソ フ ト ウ ェ アの イ ン ス ト ー
ルや設定をす る 場合は、 そのサ イ ト のネ ッ ト ワ ー ク 管理者 ま たは
シ ス テ ム管理者に相談 し て く だ さ い。
61
ネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ースの使い方
62
InfoMaker
第 6 章
Adaptive Server Enterprise の使
い方
こ の章について
こ の章では、 InfoMaker において Adaptive Server Enterprise デー タ
ベース イ ン タ フ ェース を使用す る 方法について解説 し ます。
内容
項目
サポー ト し てい る Adaptive Server のバージ ョ ン
サポー ト し てい る Adaptive Server デー タ 型
Adaptive Server の基本 ソ フ ト ウ ェ ア コ ン ポーネ ン ト
Adaptive Server デー タ ベース を使用す る ための準備
Adaptive Server デー タ ベース イ ン タ フ ェ ース の定義
Open Client のセキ ュ リ テ ィ サービ ス
Open Client のデ ィ レ ク ト リ サービ ス の使い方
Adaptive Server ス ト ア ド プ ロ シージ ャ におけ る PRINT 文の使
い方
デー タ ベース間の結合に基づ く レ ポー ト の作成
Adaptive Server デー タ ベー ス におけ る ス ト ア ド プ ロ シージ ャ
の イ ン ス ト ール
ページ
63
64
67
67
70
71
73
77
77
77
サポー ト し ている Adaptive Server のバージ ョ ン
SYC Adaptive Server デー タ ベー ス イ ン タ フ ェ ー ス を 使用 し て、
Adaptive Server バージ ョ ン 11.x、 12.x、 お よ び 15.x にア ク セ ス が
で き ます。 こ の イ ン タ フ ェ ース を使用 し たほかの Open Server™ プ
ロ グ ラ ムへのア ク セ ス は、サポー ト し てい ません。SYC デー タ ベー
ス イ ン タ フ ェ ー ス は、 PBSYC115.DLL と い う DLL を 使用 し て
Open Client™ CT-Lib API 経由でデー タ ベース にア ク セ ス し ます。
デー タ ベース と の接続
63
サポー ト し ている Adaptive Server デー タ 型
ASE Adaptive Server デー タ ベース イ ン タ フ ェ ース を使用 し て、Adaptive
Server バージ ョ ン 15.x に ア ク セ ス す る こ と も で き ま す。 こ の イ ン タ
フ ェ ース を使用 し たほかの Open Server™ プ ロ グ ラ ムへのア ク セ ス は、
サポー ト し てい ません。 Adaptive Server デー タ ベース イ ン タ フ ェース
は、 PBASE115.DLL と い う DLL を使用 し て Open Client CT-Lib API 経
由でデー タ ベー ス にア ク セ ス し ます。 こ の イ ン タ フ ェ ース を使用す る
た め に は、 Adaptive Server 15 ク ラ イ ア ン ト が ク ラ イ ア ン ト の コ ン
ピ ュ ー タ に イ ン ス ト ール さ れ て い る 必要 が あ り ま す。 ASE イ ン タ
フ ェ ース は、 128 文字ま での大 き な識別子をサポー ト し ます。
Client Library API
Adaptive Server デー タ ベー ス イ ン タ フ ェ ー ス は、 Open Client™ CTLibrary (CT-Lib) ア プ リ ケーシ ョ ン プ ロ グ ラ ミ ン グ イ ン タ フ ェ ー ス
(API) を使用 し てデー タ ベース にア ク セ ス し ます。
Adaptive Server デー タ ベース に接続す る と 、 InfoMaker に よ っ て、 必要
な API 呼び出 し が行 わ れ ま す。 し た が っ て、 デー タ ベー ス イ ン タ
フ ェ ース を使用す る 上で、 CT -Lib に関す る 知識は必要あ り ません。
サポー ト し ている Adaptive Server デー タ 型
Adaptive Server イ ン タ フ ェース は、 レ ポー ト において、 表 6-1 に示す
Sybase デー タ 型をサポー ト し てい ます。
64
InfoMaker
第6章
Adaptive Server Enterprise の使い方
表 6-1: サポー ト し ている Adaptive Server Enterprise デー タ 型
Binary
NVarChar
BigInt (15.x 以降)
Bit
Real
SmallDateTime
Char (66 ページ の 「カ ラ ム の長 さ の制限」 SmallInt
を参照)
DateTime
SmallMoney
Decimal
Text
Double precision
Timestamp
Float
TinyInt
Identity
UniChar
Image
UniText (15.x 以降)
Int
UniVarChar
Money
VarBinary
NChar
VarChar
Numeric
Adaptive Server 15.0 以降では、 InfoMaker は符号付 き の bigint、 int、 お よ
び smallint デー タ 型 と 同 じ よ う に符号な し のデー タ 型 も サポー ト し ま
す。 bigint、 int、 numeric、 smallint、 tinyint、 unsigned bigint、 unsigned int、 お よ
び unsigned smallint デー タ 型 も 、 Adaptive Server 15.0 以降では Identity カ
ラ ム と し て使用で き ます。
Unicode デー タ へのア
ク セス
InfoMaker は、ANSI/DBCS お よ び Unicode の両方のデー タ ベース のデー
タ に接続、 保存、 検索す る こ と がで き ます。 文字デー タ ま たは コ マ ン
ド テ キ ス ト がデー タ ベース に送信 さ れ る と 、InfoMaker は UTF8 デー タ
ベース パ ラ メ ー タ が 0 に設定 さ れてい る (デフ ォ ル ト ) 場合は、 DBCS
文字列を送信 し ます。 UTF8 が 1 に設定 さ れてい る 場合、 InfoMaker は
UTF-8 文字列を送信 し ます。UTF-8 文字列を受け取 る には、デー タ ベー
ス サーバが正 し く 設定 さ れてい る 必要があ り ま す。 詳細については、
オ ン ラ イ ン ヘルプの UTF8 デー タ ベース パ ラ メ ー タ の説明を参照 し て
く だ さ い。
Adaptive Server デー タ ベース サーバで使用 さ れ る 文字セ ッ ト は、 サー
バのすべて のデー タ ベー ス に適用 さ れ ま す。 サーバの文字セ ッ ト が
UTF-8 の場合、 nchar と nvarchar デー タ 型は UTF-8 デー タ を格納 し ます。
Unicode デー タ 型 unichar と univarchar は、Unicode デー タ をサポー ト す る
ために、 Adaptive Server 12.5 で導入 さ れ ま し た。 こ れ ら のデー タ 型を
持つカ ラ ムは、 Unicode デー タ だけ を格納 し ます。 その よ う な カ ラ ムに
保存 さ れ る デー タ は、 明示的に Unicode に変換 さ れ る 必要があ り ます。
こ の変換はデー タ ベー ス サーバ ま たは ク ラ イ ア ン ト が処理す る 必要
があ り ます。
デー タ ベース と の接続
65
サポー ト し ている Adaptive Server デー タ 型
Adaptive Server 12.5.1 以降に Unicode デー タ に関 し て、追加サポー ト が
追加 さ れ ま し た。 詳細については、 Adaptive Server の使用バージ ョ ン
のマニ ュ アルを参照 し て く だ さ い。
ペ イ ン タ での表示値の
違い
unichar お よ び univarchar デー タ 型は UTF-16 エ ン コ ーテ ィ ン グ を サポー
ト し ます。 そのため、 unichar あ る いは univarchar 文字はそれぞれ 2 バ イ
ト の ス ト レ ー ジ を 必要 と し ま す。 次 の 例 は、 1 unichar カ ラ ム が 10
Unicode 文字を保持す る テーブルを作成 し ます。
create table unitbl (unicol unichar(10))
デー タ ベー ス ペ イ ン タ では、 カ ラ ム が 20 バ イ ト の ス ト レージ を必要
と す る ため、カ ラ ム を unichar(20) と し て表示 し ます。こ れは、Sybase
Central でカ ラ ム を表示す る 方法 と 一致 し てい ます。
し か し 、 レ ポー ト ペ イ ン タ におけ る カ ラ ムの仕様ビ ュ ーのデー タ 型 と
デー タ ベース におけ る テーブルのカ ラ ム のデー タ 型間でのマ ッ ピ ン グ
は、 1 対 1 ではあ り ません。 カ ラ ムの仕様ビ ュ ーでのデー タ 型は、 デー
タ ウ ィ ン ド ウ ® カ ラ ムのデー タ 型 と デー タ ウ ィ ン ド ウ カ ラ ム の長 さ を
表示 し ま す。 カ ラ ム の長 さ は文字数にな り ま す。 そのため、 Adaptive
Server unichar(20) カ ラ ムは、 カ ラ ムの仕様ビ ュ ーでは char(10) と
し て表示 さ れ ます。
カ ラ ムの長 さ の制限
Adaptive Server 12.0 以下は、 カ ラ ム の長 さ を 255 バ イ ト に制限 し てい
ます。Adaptive Server 12.5.x 以降は、Char、VarChar、Binary、お よ び VarBinary
デー タ 型用の ワ イ ド カ ラ ム を サポー ト し 、 サーバが使用す る 論理ペー
ジ サ イ ズ と ロ ッ ク ス キームに依存 し ます。
InfoMaker で は、 以下の条件の時に、 Adaptive Server 12.5.x で Char と
VarChar デー タ 型用の ワ イ ド カ ラ ム を使用で き ます。
•
Release デー タ ベース パ ラ メ ー タ を 12.5 以降に設定
•
デー タ ベース ア ク セ ス に Open Client 12.5.x 以降を使用
最大幅の利点を享受す る には、 大容量の論理ページ サ イ ズ を使用す る
よ う にデー タ ベース で設定す る 必要があ り ます。
ワ イ ド カ ラ ム と 設定の問題に関す る 詳細については、 製品マニ ュ アル の
http://www.sybase.com/support/manuals/ を 参 照 し て く だ さ い。
Release デー タ ベー ス パ ラ メ ー タ の詳細については、 オ ン ラ イ ン ヘル
プ を参照 し て く だ さ い。
サイ ト
66
InfoMaker
第6章
Adaptive Server Enterprise の使い方
Adaptive Server の基本 ソ フ ト ウ ェ ア コ ンポーネ ン ト
図 6-1 は、InfoMaker か ら Adaptive Server デー タ ベース にア ク セ スす る
ために必要な基本 ソ フ ト ウ ェ ア コ ン ポーネ ン ト を示 し てい ます。
図 6-1: Adaptive Server Enterprise 接続のコ ンポーネ ン ト
Adaptive Server デー タ ベース を使用する ための準備
デー タ ベース イ ン タ フ ェ ース を定義 し 、InfoMaker か ら Adaptive Server
デー タ ベー ス に接続す る 前に、 以下の手順に従 っ て使用す る デー タ
ベース を準備 し ます。
1
デー タ ベース と の接続
接続に必要なデー タ ベース サーバ、 ネ ッ ト ワー ク 、 ク ラ イ ア ン ト
ソ フ ト ウ ェ ア を イ ン ス ト ール し 、 設定 し ます。
67
Adaptive Server デー タ ベース を使用する ための準備
2
Adaptive Server デー タ ベース イ ン タ フ ェ ース を イ ン ス ト ール し ま
す。
3
InfoMaker の外部の環境で、 Adaptive Server に接続で き る こ と を確
認 し ます。
4
sybsystemprocs デー タ ベース に必要な InfoMaker ス ト ア ド プ ロ シー
ジ ャ を イ ン ス ト ール し ます。
InfoMaker で使用す る Adaptive Server デー タ ベース を準備す る には、基
本的に共通の以下の 4 つの操作を し ます。
Adaptive Server 用にデー タ ベース サーバ、 ネ ッ ト ワ ー ク 、 ク ラ イ ア ン
ト ソ フ ト ウ ェ ア を イ ン ス ト ール し 、 設定す る 必要があ り ます。
ス テ ッ プ 1 : デー タ
ベース サーバのイ ン
ス ト ール と 設定
v
デー タ ベース サーバ、 ネ ッ ト ワー ク、 ク ラ イ ア ン ト ソ フ ト ウ ェ ア を イ ン ス
ト ール し 、 設定する
1
デー タ ベース プ ロ フ ァ イ ルに指定 さ れてい る サーバ上に、Adaptive
Server デー タ ベー ス ソ フ ト ウ ェ アが イ ン ス ト ール さ れてい る こ と
を確認 し ます。
Sybase 社のデー タ ベー ス サーバ ソ フ ト ウ ェ ア を 入手す る 必要が
あ り ます。
イ ン ス ト ールの手順については、Adaptive Server のマニ ュ アルを参
照 し て く だ さ い。
2
自分のマシ ン上に、 サポー ト し てい る ネ ッ ト ワ ー ク ソ フ ト ウ ェ ア
(TCP/IP な ど) が イ ン ス ト ール さ れ、 稼働 し てい る こ と に加え て、
自分のサ イ ト か ら デー タ ベース サーバに接続す る 設定が正 し い こ
と を確認 し ます。
た と えば、 使用 し てい る ネ ッ ト ワ ー ク プ ロ ト コ ルやオペレーテ ィ
ン グ シ ス テ ム プ ラ ッ ト フ ォ ーム を サポー ト す る 、ネ ッ ト ワ ー ク コ
ミ ュ ニ ケーシ ョ ン ド ラ イ バ を イ ン ス ト ールす る 必要が あ り ま す。
ド ラ イ バは、 Net-Library ク ラ イ ア ン ト ソ フ ト ウ ェ アの一部 と し て
イ ン ス ト ール さ れます。
イ ン ス ト ール と 設定の手順については、 ネ ッ ト ワ ー ク ま たはデー
タ ベース の管理者に問い合わせて く だ さ い。
3
InfoMaker が イ ン ス ト ール さ れてい る 各 ク ラ イ ア ン ト マシ ンに、必
要な Open Client CT-Library (CT-Lib) ソ フ ト ウ ェ ア を イ ン ス ト ー
ル し ます。
Sybase 社の Open Client ソ フ ト ウ ェ ア を入手す る 必要があ り ます。
イ ン ス ト ールす る Open Client のバージ ョ ン が、 以下 を すべて サ
ポー ト す る こ と を確認 し ます。
68
InfoMaker
第6章
Adaptive Server Enterprise の使い方
ク ラ イ ア ン ト マシ ン上で稼働 し てい る オペレーテ ィ ン グ シ ス
テム
ア ク セ スす る Adaptive Server のバージ ョ ン
稼働 し てい る InfoMaker のバージ ョ ン
ク ラ イ ア ン ト ソ フ ト ウ ェ アのバージ ョ ンの要件
ASE Adaptive Server イ ン タ フ ェ ー ス を 使用す る た め に は、 Open
Client バージ ョ ン 15.x 以上 を イ ン ス ト ールす る 必要が あ り ま す。
SYC Adaptive Server イ ン タ フ ェ ー ス を 使用す る た め に は、 Open
Client バージ ョ ン 11.x 以上を イ ン ス ト ールす る 必要があ り ます。
4
自分のサ イ ト か ら デー タ ベース に接続で き る よ う に、 Open Client
ソ フ ト ウ ェ アが正 し く 設定 さ れてい る こ と を確認 し ます。
Open Client ソ フ ト ウ ェ ア を イ ン ス ト ールす る と 、 ク ラ イ ア ン ト マ
シ ンの Adaptive Server デ ィ レ ク ト リ に SQL.INI 構成フ ァ イ ルが イ
ン ス ト ール さ れ ます。
SQL.INI 構成フ ァ イ ルは、 サ イ ト か ら デー タ ベー ス サーバを検出
し 、 接続す る た めに必要な Adaptive Server の情報 を 提供 し ま す。
Open Client ソ フ ト ウ ェ ア と と も に提供 さ れ る 構成ユーテ ィ リ テ ィ
を使用す る と 、 SQL.INI の内容の変更や表示がで き ます。
SQL.INI やそ の ほか の構成 フ ァ イ ルの設定につい て は、 Adaptive
Server のマニ ュ アルを参照 し て く だ さ い。
5
オペレーテ ィ ン グ シ ス テ ムの必要に応 じ て、 Open Client ソ フ ト
ウ ェ アのデ ィ レ ク ト リ がシ ス テ ム パ ス にあ る こ と を確認 し ます。
6
以下の フ ァ イ ルが ク ラ イ ア ン ト マシ ン上に イ ン ス ト ール さ れてい
る こ と を確認 し ます。
•
Adaptive Server イ ン タ フ ェ ース DLL
•
ネ ッ ト ワー ク コ ミ ュ ニ ケーシ ョ ン DLL (Windows Sockets 準拠
TCP/IP 用の NLWNSCK.DLL な ど)
•
デー タ ベース ベン ダ DLL (LIBCT.DLL な ど)
ス テ ッ プ 2 : デー タ
ベース イ ン タ フ ェ ー
スのイ ン ス ト ール
InfoMaker のセ ッ ト ア ッ プ プ ロ グ ラ ム で、 標準 イ ン ス ト ールを選択す
る か、 カ ス タ ム イ ン ス ト ー ル を 選 択 し た 場 合 は Adaptive Server
Enterprise (ASE ま たは SYC) デー タ ベース イ ン タ フ ェ ース を選択 し て
く だ さ い。
ス テ ッ プ 3 : 接続の確
認
InfoMaker の外部の環境で、Adaptive Server デー タ ベース サーバに接続
し 、ア ク セ ス し たいデー タ ベース に ロ グ イ ン で き る こ と を確認 し ます。
以下の ツールを実行す る と 、 接続を確認で き ます。
デー タ ベース と の接続
69
Adaptive Server デー タ ベース イ ン タ フ ェ ースの定義
•
デー タ ベース サーバ と の接続 Open Client/Open Server Configuration
ユーテ ィ リ テ ィ (ま たは Ping ユーテ ィ リ テ ィ ) な ど の ツールは、
自分のマシ ン か ら デー タ ベース サーバにア ク セ ス で き る か ど う か
をチ ェ ッ ク し ます。
•
デー タ ベース と の接続 ISQL (対話型 SQL ユーテ ィ リ テ ィ ) な ど の
ツールは、 デー タ ベー ス に ロ グ イ ン し 、 デー タ ベー ス 操作が実行
で き る か ど う か を チ ェ ッ ク し ま す。 デー タ ベー ス にア ク セ ス す る
と き InfoMaker のデー タ ベース プ ロ フ ァ イ ルで使用す る 予定の接
続パ ラ メ ー タ と 、 同 じ 値の接続パ ラ メ ー タ を指定す る こ と をお勧
め し ます。
ス テ ッ プ 4 :InfoMaker
ス ト ア ド プ ロ シー
ジ ャのイ ン ス ト ール
InfoMaker では、 Adaptive Server デー タ ベー ス に最初に接続す る 前に、
sybsystemprocs デー タ ベー ス に特定の ス ト ア ド プ ロ シージ ャ を イ ン ス
ト ール し てお く 必要があ り ます。InfoMaker は、 こ の ス ト ア ド プ ロ シー
ジ ャ を使用 し て、 DBMS シ ス テ ム カ タ ロ グか ら テーブルやカ ラ ムにつ
いての情報を取得 し ます。
sybsystemprocs デー タ ベー ス に InfoMaker ス ト ア ド プ ロ シージ ャ を イ
ン ス ト ールす る ために必要な SQL ス ク リ プ ト を実行 し ます。
詳 し い手順については、 77 ページの 「Adaptive Server デー タ ベース に
おけ る ス ト ア ド プ ロ シージ ャ の イ ン ス ト ール」 を参照 し て く だ さ い。
Adaptive Server デー タ ベース イ ン タ フ ェ ースの定義
Adaptive Server イ ン タ フ ェ ー ス を介 し た接続を定義す る には、 少な く
と も 、DB プ ロ フ ァ イ ル設定 - Adaptive Server Enterprise ダ イ ア ロ グボ ッ
ク ス の基本接続パ ラ メ ー タ 用の値を指定 し て、 デー タ ベース プ ロ フ ァ
イ ルを作成 し なければな り ません。 次回以降、 こ のデー タ ベース プ ロ
フ ァ イ ルを選択す る と 、 開発環境でそのデー タ ベース にいつで も 接続
で き ます。
デー タ ベース プ ロ フ ァ イ ルの定義方法については、 6 ページの 「デー
タ ベース プ ロ フ ァ イ ルの使い方」 を参照 し て く だ さ い。
70
InfoMaker
第6章
Adaptive Server Enterprise の使い方
Open Client のセキ ュ リ テ ィ サービ ス
Adaptive Server イ ン タ フ ェ ース は、Open Client 11.1.x 以上のネ ッ ト ワ ー
ク ベー ス のセ キ ュ リ テ ィ サー ビ ス を ア プ リ ケーシ ョ ン 内で有効にす
る DBParm パ ラ メ ー タ を提供 し ます。 必要なデー タ ベース、 セキ ュ リ
テ ィ 、 お よ び InfoMaker の 3 つの ソ フ ト ウ ェ ア を 使用すれば、 Open
Client のセキ ュ リ テ ィ サービ ス の利点を活かすアプ リ ケーシ ョ ン を構
築で き ます。
Open Client のセキ ュ リ テ ィ サービ ス と は ?
Open Client 11.1.x 以上のセ キ ュ リ テ ィ サービ ス に よ り 、 サポー ト さ れ
てい る サー ド パーテ ィ のセキ ュ リ テ ィ メ カ ニズ ム (CyberSafe Kerberos
な ど) を使用 し て、 アプ リ ケーシ ョ ン に対 し て ロ グ イ ン認証やパケ ッ
ト 単位のセ キ ュ リ テ ィ を提供す る こ と がで き ます。 ロ グ イ ン認証は安
全な接続を確立 し 、 パケ ッ ト 単位のセ キ ュ リ テ ィ はネ ッ ト ワ ー ク を介
し たデー タ 転送を保護 し ます。
Open Client のセキ ュ リ テ ィ サービ ス を使用する ための条件
アプ リ ケーシ ョ ン において Open Client のセ キ ュ リ テ ィ サービ ス を使
用す る には、 以下の条件をすべて満た さ なければな り ません。
•
Open Client Client-Library (CT-Lib) 11.1.x 以上を使用 し て Adaptive
Server デー タ ベース サーバにア ク セ ス し ます。
•
ネ ッ ト ワー ク セキ ュ リ テ ィ
す。
メ カ ニズ ムお よ び ド ラ イ バが必要で
Sybase がサポー ト し てい る ネ ッ ト ワ ー ク セ キ ュ リ テ ィ メ カ ニ ズ
ムお よ び Sybase か ら 提供 さ れ る セ キ ュ リ テ ィ ド ラ イ バ を イ ン ス
ト ール し 、使用環境に合わせて正 し く 設定 し てお き ます。オペレー
テ ィ ン グ シ ス テ ム に よ っ て異な り ますが、 サポー ト さ れてい る セ
キ ュ リ テ ィ メ カ ニ ズ ム に は、 Distributed Computing Environment
(DCE)セ キ ュ リ テ ィ サービ ス と ク ラ イ ア ン ト 、CyberSafe Kerberos、
お よ び Windows NT LAN Manager Security Services Provider Interface
(SSPI) があ り ます。
Sybase 社が Open Client のセ キ ュ リ テ ィ サービ ス を使用 し て動作
確認 し た サー ド パーテ ィ のセ キ ュ リ テ ィ メ カ ニ ズ ム お よ びオペ
レーテ ィ ン グ シ ス テ ム の詳細については、 Open Client マニ ュ アル
を参照 し て く だ さ い、
デー タ ベース と の接続
71
Open Client のセキ ュ リ テ ィ サービ ス
•
InfoMaker の外部の安全なサーバにア ク セ ス で き ます。
InfoMaker の外部の環境か ら Open Client 11.1.x 以上を使用 し て安全
な Adaptive Server にア ク セ ス で き なければな り ません。
接続を確認す る には、 ISQL ま たは SQL Advantage な ど の ツールを
使用 し て、 サーバに接続 し デー タ ベー ス に ロ グ イ ン で き る か ど う
か をチ ェ ッ ク し ます。 こ の際、接続パ ラ メ ー タ お よ びセキ ュ リ テ ィ
オプシ ョ ンには、 InfoMaker アプ リ ケーシ ョ ン で使用す る 予定の値
と 同 じ 値を指定 し ます。
•
デー タ ベース イ ン タ フ ェ ース を使用 し ます。
デー タ ベース のア ク セ ス には ASE ま たは SYC Adaptive Server イ ン
タ フ ェース を使用 し ます。
•
Release DBParm パ ラ メ ー タ にデー タ ベース に適切な値を設定 し ま
す。
アプ リ ケーシ ョ ンが Open Client CT-Lib ソ フ ト ウ ェ アの適切なバー
ジ ョ ン を利用で き る よ う に、 Release DBParm パ ラ メ ー タ を 11 以上
に設定 し てお き ます。
こ の詳細については、オ ン ラ イ ン ヘルプの Release の ト ピ ッ ク を参
照 し て く だ さ い。
•
セ キ ュ リ テ ィ メ カ ニズ ムお よ び ド ラ イ バは要求 さ れたサービ ス を
サポー ト し ます。
使用す る セ キ ュ リ テ ィ メ カ ニ ズ ムお よ び ド ラ イ バは、 DBParm が
要求す る サービ ス をサポー ト し ていなければな り ません。
セキ ュ リ テ ィ サービ スの DBParm パラ メ ー タ
71 ページの「Open Client のセキ ュ リ テ ィ サービ ス を使用す る ための条
件」を満た し ていれば、接続用の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ
ク ス内でセキ ュ リ テ ィ サービ ス の DBParm パ ラ メ ー タ を設定す る こ と
がで き ます。
Open Client のセ キ ュ リ テ ィ サー ビ ス を サポー ト す る ために設定す る
DBParm パ ラ メ ー タ は、 ロ グ イ ン認証 と パケ ッ ト 単位のセ キ ュ リ テ ィ
の 2 種類です。
ログ イ ン認証
DBParm
72
以下の ロ グ イ ン認証 DBParm パ ラ メ ー タ は、 Open Client 11.1.x 以上の
接続プ ロ パテ ィ に相当 し てお り 、 こ れ ら のパ ラ メ ー タ を使用す る こ と
で、 アプ リ ケーシ ョ ンが安全な接続を確立す る こ と がで き ます。
InfoMaker
第6章
Adaptive Server Enterprise の使い方
Sec_Channel_Bind
Sec_Cred_Timeout
Sec_Delegation
Sec_Keytab_File
Sec_Mechanism
Sec_Mutual_Auth
Sec_Network_Auth
Sec_Server_Principal
Sec_Sess_Timeout
DBParm パ ラ メ ー タ の設定手順については、 オ ン ラ イ ン ヘルプでそれ
ぞれのパ ラ メ ー タ の説明を参照 し て く だ さ い。
パケ ッ ト 単位のセキ ュ
リ テ ィ DBParm
以下 の パ ケ ッ ト 単位 セ キ ュ リ テ ィ 用 の DBParm パ ラ メ ー タ は Open
Client 11.1.x 以上の接続プ ロ パテ ィ に相当 し てお り 、 ネ ッ ト ワ ー ク を介
し たデー タ 転送を保護 し ます。 パケ ッ ト 単位セ キ ュ リ テ ィ を使用す る
と 、 ク ラ イ ア ン ト と サーバ間の通信にオーバーヘ ッ ド が生 じ る 場合が
あ り ます。
Sec_Confidential
Sec_Data_Integrity
Sec_Data_Origin
Sec_Replay_Detection
Sec_Seq_Detection
DBParm パ ラ メ ー タ の設定手順については、 オ ン ラ イ ン ヘルプでそれ
ぞれのパ ラ メ ー タ の説明を参照 し て く だ さ い。
Open Client のデ ィ レ ク ト リ サービ スの使い方
Adaptive Server イ ン タ フ ェ ース は、Open Client 11.1.x 以上のネ ッ ト ワ ー
ク ベー ス のデ ィ レ ク ト リ サー ビ ス を ア プ リ ケーシ ョ ン 内で有効にす
る DBParm パ ラ メ ー タ を提供 し ます。 必要なデー タ ベース、 デ ィ レ ク
ト リ サービ ス、お よ び InfoMaker の 3 つの ソ フ ト ウ ェ ア を使用すれば、
Open Client のデ ィ レ ク ト リ サー ビ ス の利点 を 活かすア プ リ ケーシ ョ
ン を構築で き ます。
デー タ ベース と の接続
73
Open Client のデ ィ レ ク ト リ サービ スの使い方
Open Client のデ ィ レ ク ト リ サービ ス と は ?
Open Client 11.1.x 以上のデ ィ レ ク ト リ サービ ス に よ り 、 サポー ト さ れ
てい る サー ド パーテ ィ のデ ィ レ ク ト リ サービ ス製品 (Windows レ ジ ス
ト リ な ど) をデ ィ レ ク ト リ サービ ス プ ロ バ イ ダ と し て使用す る こ と が
で き ます。 デ ィ レ ク ト リ サービ ス は、 環境内のネ ッ ト ワ ー ク エ ン テ ィ
テ ィ (ユーザ、 サーバ、 プ リ ン タ な ど) の制御お よ び管理を集中化 し
ます。
Open Client のデ ィ レ ク ト リ サービ ス を使用する ための条件
アプ リ ケーシ ョ ン において Open Client のデ ィ レ ク ト リ サービ ス を使
用す る には、 以下の条件をすべて満た さ なければな り ません。
•
Open Client-Library (CT-Lib) 11.x 以上を使用 し て Adaptive Server
デー タ ベース サーバにア ク セ ス し ます。
•
Sybase がサポー ト し てい る デ ィ レ ク ト リ サービ ス プ ロ バ イ ダ ソ
フ ト ウ ェ アお よ び Sybase か ら 提供 さ れ る デ ィ レ ク ト リ ド ラ イ バ
を イ ン ス ト ール し 、 使用環境に合わせて正 し く 設定 し てお き ます。
オペレーテ ィ ン グ シ ス テ ム に よ っ て異な り ますが、 サポー ト さ れ
てい る セ キ ュ リ テ ィ メ カ ニズ ム には、 Windows レ ジ ス ト リ お よ び
Distributed Computing Environment Cell Directory Services(DCE/CDS)
があ り ます。
Sybase 社が Open Client のデ ィ レ ク ト リ サービ ス を使用 し て動作
確認 し たデ ィ レ ク ト リ サー ビ ス プ ロ バ イ ダお よ びオペ レ ーテ ィ
ン グ シ ス テ ム の詳細については、 Open Client のマニ ュ アルを参照
し て く だ さ い。
•
InfoMaker の外部の環境か ら Open Client 11.1.x 以上を使用 し て安全
な Adaptive Server にア ク セ ス で き なければな り ません。
接続を確認す る には、 ISQL ま たは SQL Advantage な ど の ツールを
使用 し て、 サーバに接続 し デー タ ベー ス に ロ グ イ ン で き る か ど う
か をチ ェ ッ ク し ます。 こ の際、接続パ ラ メ ー タ お よ びデ ィ レ ク ト リ
サービ ス オプシ ョ ンには、InfoMaker アプ リ ケーシ ョ ン で使用す る
予定の値 と 同 じ 値を指定 し ます。
•
74
デー タ ベース のア ク セ ス には ASE ま たは SYC Adaptive Server イ ン
タ フ ェース を使用 し ます。
InfoMaker
第6章
•
Adaptive Server Enterprise の使い方
デー タ ベース プ ロ フ ァ イ ルにサーバ名を指定す る 際には、 デ ィ レ
ク ト リ サー ビ ス プ ロ バ イ ダ に要求 さ れて い る 構文 を 使用 し な け
ればな り ません。 各プ ロ バ イ ダには、 デ ィ レ ク ト リ エ ン ト リ 名を
指定す る 形式に基づい た 構文 を そ れぞれ使用す る 必要が あ り ま
す。
各デ ィ レ ク ト リ サービ ス プ ロ バ イ ダの詳細 と 例については、 次の
「Open Client のデ ィ レ ク ト リ サービ ス を使用す る 場合のサーバ名
の指定」 を参照 し て く だ さ い。
•
アプ リ ケーシ ョ ンが Open Client CT-Lib ソ フ ト ウ ェ アの適切なバー
ジ ョ ン を利用で き る よ う に、 Release DBParm を 11 以上に設定 し て
お き ます。
設定手順については、 オ ン ラ イ ン ヘルプの 「Release デー タ ベース
パ ラ メ ー タ 」 を参照 し て く だ さ い。
•
使用す る デ ィ レ ク ト リ サービ ス プ ロ バ イ ダお よ び ド ラ イ バは、
DBParm が要求す る サービ ス をサポー ト し ていなければな り ませ
ん。
Open Client のデ ィ レ ク ト リ サービ ス を使用する場合のサーバ名の指定
InfoMaker アプ リ ケーシ ョ ン で Open Client のデ ィ レ ク ト リ サービ ス を
使用す る 場合、 デー タ ベー ス プ ロ フ ァ イ ルでサーバ名 を 指定す る 際
に、デ ィ レ ク ト リ サービ ス プ ロ バ イ ダが要求す る 構文を使用 し なけれ
ばな り ません。
各デ ィ レ ク ト リ サービ ス プ ロ バ イ ダには、 デ ィ レ ク ト リ エ ン ト リ 名
を指定す る 形式に基づい た構文を それぞれ使用す る 必要が あ り ま す。
デ ィ レ ク ト リ のエ ン ト リ 名は、 完全修飾名の場合や、 Open Client/Open
Server™ 設定ユーテ ィ リ テ ィ で指定 し たデフ ォ ル ト の (ア ク テ ィ ブな)
Directory Information Tree ベース (DIT ベース) に対す る 相対名の場合
があ り ます。
DIT ベース はデ ィ レ ク ト リ 検索の開始 ノ ー ド にな り ます。 DIT ベー ス
を指定す る こ と は、 MS-DOS フ ァ イ ル シ ス テ ム で現行の作業デ ィ レ ク
ト リ を 設定す る こ と と ほぼ同 じ です。 DS_DitBase DBParm を 使 う と 、
デフ ォ ル ト 以外の DIT ベース を指定す る こ と がで き ます。 手順につい
ては、 オ ン ラ イ ン ヘルプの 「DS_DitBase」 を参照 し て く だ さ い。
Windows レ ジス ト リ
のサーバ名の例
次の例は、 デ ィ レ ク ト リ サービ ス プ ロ バ イ ダに Windows レ ジ ス ト リ
を使用す る 場合にサーバ名を指定す る 構文を示 し ます。
ノ ー ド 名 : SALES:software\sybase\server\SYS12
デー タ ベース と の接続
75
Open Client のデ ィ レ ク ト リ サービ スの使い方
DIT ベース : SALES:software\sybase\server
サーバ名 : SYS12
v
デー タ ベース プ ロ フ ァ イルにサーバ名を指定する
•
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス の [接続] タ ブにあ る
[サーバ] ボ ッ ク ス に次の よ う に入力 し ま す。 サーバ名 を 円記号
(\) で始めてはな り ません。
SYS12
DCE/CDS のサーバ名
の例
次の例は、 デ ィ レ ク ト リ サービ ス プ ロ バ イ ダに DCE/CDS (Distributed
Computing Environment Cell Directory Service) を使用す る 場合にサーバ
名を指定す る 構文を示 し ます。
ノ ー ド 名 : /.../boston.sales/dataservers/sybase/SYS12
DIT ベース : /../boston.sales/dataservers
サーバ名 : sybase/SYS12
v
デー タ ベース プ ロ フ ァ イルにサーバ名を指定する
•
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス の [接続] タ ブにあ る
[サーバ] ボ ッ ク ス に次の よ う に入力 し ま す。 サーバ名 を ス ラ ッ
シ ュ (/) で始めてはな り ません。
sybase/SYS12
デ ィ レ ク ト リ サービ スの DBParm パラ メ ー タ
74 ページの「Open Client のデ ィ レ ク ト リ サービ ス を使用す る ための条
件」を満た し ていれば、接続用の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ
ク ス 内でセ キ ュ リ テ ィ サー ビ ス の DBParm を 設定す る こ と がで き ま
す。
以下の DBParm は、 Open Client 11.1.x 以上のデ ィ レ ク ト リ サービ ス の
接続パ ラ メ ー タ に相当 し ます。
DS_Alias
DS_Copy
DS_DitBase
DS_Failover
DS_Password (Open Client 12.5 以上)
DS_Principal
DS_Provider
DS_TimeLimit
76
InfoMaker
第6章
Adaptive Server Enterprise の使い方
こ れ ら の DBParm の設定手順については、 オ ン ラ イ ン ヘルプでそれぞ
れのパ ラ メ ー タ の説明を参照 し て く だ さ い。
Adaptive Server ス ト ア ド プ ロ シージ ャ における PRINT
文の使い方
ASE ま たは SYC Adaptive Server デー タ ベース イ ン タ フ ェ ース に よ り 、
デバ ッ グ用の ス ト ア ド プ ロ シージ ャ で PRINT 文を使用で き ます。
つま り 、ASE ま たは SYC イ ン タ フ ェース を介 し てデー タ ベース にア ク
セ ス す る 際にデー タ ベー ス ト レ ー ス を オ ン に し た場合、 PRINT メ ッ
セージが ト レース ロ グに表示 さ れ ますが、 エ ラ ーを返 し た り 、 残 り の
ス ト ア ド プ ロ シージ ャ を キ ャ ン セル し た り し ません。
デー タ ベース間の結合に基づ く レポー ト の作成
異種デー タ ベー ス 間の結合に基づい て レ ポ ー ト を 作成す る 機能は、
Adaptive Server の コ ン ポーネ ン ト 総合サービ ス を使用す る こ と に よ っ
て利用で き ます。 コ ン ポーネ ン ト 総合サービ ス を使用す る と 、 複数の
異種 リ モー ト デー タ ベース サーバに接続 し 、それ ら のサーバ上に位置
す る テーブルを参照す る 複数のプ ロ キ シ テーブルを定義で き ます。
プ ロ キ シ テーブルの作成方法については、 Adaptive Server のマニ ュ ア
ルを参照 し て く だ さ い。
Adaptive Server デー タ ベースにおける ス ト ア ド プ ロ シー
ジ ャ のイ ン ス ト ール
こ の節では、Sybase 社が提供す る SQL ス ク リ プ ト を実行 し て、Adaptive
Server Enterprise デー タ ベース に InfoMaker ス ト ア ド プ ロ シージ ャ を イ
ン ス ト ールす る 方法について解説 し ます。
デー タ ベース と の接続
77
Adaptive Server デー タ ベースにおける ス ト ア ド プ ロ シージ ャのイ ン ス ト ール
Sybase で は、 Adaptive Server (ASE ま た は SYC DBMS 識別子) ネ イ
テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を 経由 し て、 初め て Adaptive
Server デー タ ベース に接続す る 前に、 InfoMaker の外部の環境で こ れ ら
の ス ク リ プ ト を実行す る こ と を推奨 し てい ます。 デー タ ベース イ ン タ
フ ェ ー ス は、 こ れ ら の ス ク リ プ ト に よ っ て作成 さ れた InfoMaker ス ト
ア ド プ ロ シージ ャ を使用 し な く て も 動作 し ますが、 すべての機能を使
用す る には こ の ス ト ア ド プ ロ シージ ャ が必要にな り ます。
InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ プ ト と は ?
必要な操作
InfoMaker で Adaptive Server デ ー タ ベ ー ス を 操 作 す る た め に は、
InfoMaker か ら Adaptive Server に初めて接続す る 前に、ユーザ ま たはシ
ス テ ム管理者が、 デー タ ベース に ス ト ア ド プ ロ シージ ャ を イ ン ス ト ー
ル し ます。
InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ プ ト は 1 つのデー タ ベー ス
サーバに対 し て 1 つだけ を、 InfoMaker のセ ッ シ ョ ン の前に実行 し ま
す。 サポー ト し てい る いずれかのプ ラ ッ ト フ ォ ーム上の InfoMaker で
接続す る 前に、 Adaptive Server に InfoMaker ス ト ア ド プ ロ シージ ャ を
すで に イ ン ス ト ール し て い る 場合には、 別の プ ラ ッ ト フ ォ ー ム 上の
InfoMaker で接続す る と き で も 、 ス ト ア ド プ ロ シージ ャ を も う 一度 イ
ン ス ト ールす る 必要はあ り ません。
InfoMaker ス ト ア ド プ
ロ シージ ャ
ス ト ア ド プ ロ シージ ャ と は、デー タ ベース処理を実行す る SQL 文を あ
ら か じ め コ ンパ イ ル し 、 最適化 し た も のです。 ス ト ア ド プ ロ シージ ャ
はデー タ ベース サーバ上に イ ン ス ト ール し てお き 、 ク ラ イ ア ン ト マシ
ン か ら 必要に応 じ て ア ク セ ス し ます。
InfoMaker は、 こ れ ら の ス ト ア ド プ ロ シージ ャ を 使用 し て、 Adaptive
Server シ ス テ ム カ タ ロ グか ら テーブルやカ ラ ム についての情報を取得
し ま す (InfoMaker ス ト ア ド プ ロ シージ ャ は、 ユーザがデー タ ベー ス
上に作成す る ス ト ア ド プ ロ シージ ャ と は異な り ます)。
SQL ス ク リ プ ト
InfoMaker は、 必要な ス ト ア ド プ ロ シージ ャ を sybsystemprocs デー タ
ベース に イ ン ス ト ールす る ために、 SQL ス ク リ プ ト フ ァ イ ルを提供 し
てい ます。
スク リプ ト
PBSYC.SQL
PBSYC2.SQL
78
対象
Adaptive Server デー タ ベース
Select Tables リ ス ト を 制限 し た 状態 の Adaptive Server
デー タ ベース
InfoMaker
第6章
ス ク リ プ ト の保存場所
Adaptive Server Enterprise の使い方
ス ト ア ド プ ロ シージ ャ ス ク リ プ ト は、 InfoMaker CD-ROM の Server
デ ィ レ ク ト リ に保存 さ れてい ます。 Server デ ィ レ ク ト リ には、
InfoMaker のセ ッ ト ア ッ プ プ ロ グ ラ ム か ら は イ ン ス ト ール さ れない
サーバ サ イ ド イ ン ス ト ール コ ン ポーネ ン ト が格納 さ れてい ます。
PBSYC.SQL ス ク リ プ ト
動作内容
PBSYC.SQL ス ク リ プ ト は、 Adaptive Server の sybsystemprocs デー タ
ベース上で InfoMaker と 同 じ バージ ョ ン に対応す る ス ト ア ド プ ロ シー
ジ ャ を上書 き し てか ら 、 こ れを再び作成 し ます。
PBSYC.SQL ス ク リ プ ト は、 sybsystemprocs デー タ ベース に InfoMaker ス
ト ア ド プ ロ シ ー ジ ャ を 格納 し ま す。 こ のデー タ ベー ス は、 Adaptive
Server を イ ン ス ト ールす る と き に作成 さ れ ます。
実行する タ イ ミ ング
ASE ま た は SYC DBMS 識 別 子 を 使 用 し て InfoMaker か ら Adaptive
Server デー タ ベー ス に初めて接続す る 前に、 ユーザ ま たはシ ス テ ム管
理者が、 デー タ ベース サーバご と に PBSYC.SQL ス ク リ プ ト を 1 回実
行 し て、 sybsystemprocs デー タ ベース に ス ト ア ド プ ロ シージ ャ を イ ン ス
ト ール し ます。
サ イ ト のサーバが InfoMaker か ら 、 ま たはアプ リ ケーシ ョ ン の配布先
マシ ン か ら ア ク セ ス さ れ る 場合、 PBSYC.SQL を実行 し ます。
ユーザ ま たはデー タ ベース管理者が、現行のバージ ョ ンの PBSYC.SQL
をすでに実行 し て、サーバの sybsystemprocs デー タ ベース に InfoMaker ス
ト ア ド プ ロ シージ ャ を イ ン ス ト ール し てい る 場合、 ス ク リ プ ト を再び
実行 し て、 ス ト ア ド プ ロ シージ ャ を イ ン ス ト ール し 直す必要はあ り ま
せん。
PBSYC.SQL を実行す る 手順については、 81 ページの 「ス ク リ プ ト の
実行方法」 を参照 し て く だ さ い。
作成 さ れる ス ト ア ド
プ ロ シージ ャ
PBSYC.SQL ス ク リ プ ト に よ っ て、以下に示す InfoMaker ス ト ア ド プ ロ
シージ ャ が Adaptive Server の sybsystemprocs デー タ ベース に作成 さ れ ま
す。 プ ロ シージ ャ は、 作成 さ れ る 順に一覧 さ れてい ます。
PBSYC.SQL ス ト ア ド
プ ロ シージ ャ
sp_pb115column
sp_pb115pkcheck
sp_pb115fktable
sp_pb115procdesc
デー タ ベース と の接続
動作内容
テーブルのカ ラ ムの リ ス ト を表示す る
テーブルに主キーがあ る か ど う か を確認す る
現行テーブル を 参照す る テーブルの リ ス ト を表示
する
指定 し た ス ト ア ド プ ロ シージ ャ の引数 リ ス ト の説
明を取得す る
79
Adaptive Server デー タ ベースにおける ス ト ア ド プ ロ シージ ャのイ ン ス ト ール
PBSYC.SQL ス ト ア ド
プ ロ シージ ャ
sp_pb115proclist
sp_pb115text
sp_pb115table
sp_pb115index
動作内容
使用可能な ス ト ア ド プ ロ シージ ャ と 拡張 ス ト ア ド
プ ロ シージ ャ を一覧表示す る
SystemProcs DBParm パ ラ メ ー タ が、 1 ま た は Yes
(デ フ ォ ル ト ) に 設 定 さ れ て い る 場 合、
sp_pb115proclist に よ っ て シ ス テ ム ス ト ア ド プ ロ
シージ ャ と ユーザ定義 ス ト ア ド プ ロ シージ ャ の両
方が表示 さ れ る 。 SystemProcs が 0 ま たは No に設
定 さ れてい る 場合は、 sp_pb115proclist に よ っ てユー
ザ定義ス ト ア ド プ ロ シージ ャ だけが表示 さ れ る
SYSCOMMENTS テ ー ブ ル か ら ス ト ア ド プ ロ シ ー
ジ ャ のテ キ ス ト を取得す る
現行のユーザが権限を持た ないテーブル も 含めて、
デー タ ベー ス 内のすべて の テーブルについ て の情
報を取得する
PBSYC.SQL はデフ ォ ル ト の sp_pb115table を含んで
い る 。 テーブルの リ ス ト をユーザが SELECT 権限を
持つテーブルに制限す る sp_pb115table に置 き 換え る
には、 次の 「PBSYC2.SQL ス ク リ プ ト 」 で解説す る
PBSYC2.SQL ス ク リ プ ト を実行す る
指定 し た テーブルに対応す る すべて の イ ンデ ッ ク
ス についての情報を取得す る
PBSYC2.SQL ス ク リ プ ト
動作内容
PBSYC2.SQL ス ク リ プ ト は、Adaptive Server の sybsystemprocs デー タ ベー
ス上にあ る 既存の sp_pb115table InfoMaker ス ト ア ド プ ロ シージ ャ を削除
し てか ら 、 こ れを再び作成 し ます。
デ フ ォ ル ト の sp_pb115table は PBSYC.SQL ス ク リ プ ト に よ っ て イ ン ス
ト ール さ れ ます。 InfoMaker は、 こ の sp_pb115table プ ロ シージ ャ を使用
し て、 デー タ ベー ス 内のすべてのテーブルの リ ス ト を作成 し ます。 こ
の リ ス ト には、 ユーザが権限を持た ないテーブル も あ り ます。 こ の リ
ス ト は、 InfoMaker のテーブルの選択 ダ イ ア ロ グ ボ ッ ク ス に表示 さ れ
ます。
セ キ ュ リ テ ィ 上の理由で、 テーブル リ ス ト の表示を、 ユーザが権限を
持つテーブルに限っ て行 う こ と が望ま れ る 場合があ り ます。 こ のため
には、 PBSYC.SQL を実行 し た後で、 PBSYC2.SQL ス ク リ プ ト を実行 し
ま す。 PBSYC2.SQL に よ っ て デ フ ォ ル ト の sp_pb115table が 新 し い
sp_pb115table に置 き 換わ り 、 以下のテーブル と ビ ュ ーだけに限定 さ れ
たテーブル リ ス ト が表示 さ れます。
80
InfoMaker
第6章
実行する タ イ ミ ング
Adaptive Server Enterprise の使い方
•
現行ユーザが所有す る テーブルやビ ュ ー
•
現行ユーザが SELECT 権限を持つテーブルやビ ュ ー
•
現行ユーザのグループが SELECT 権限を持つテーブルやビ ュ ー
•
SELECT 権限が PUBLIC に与え ら れてい る テーブルやビ ュ ー
ASE ま たは SYC DBMS 識別子を使用 し て InfoMaker か ら Adaptive
Server にア ク セ スす る 場合、 デー タ ベース サーバご と に PBSYC.SQL
を最初に 1 回実行 し て、 sybsystemprocs デー タ ベース に必要な
InfoMaker ス ト ア ド プ ロ シージ ャ を イ ン ス ト ールす る 必要があ り ます。
PBSYC.SQL を実行 し た後、 sp_pb115table を置 き 換え て、 テーブル リ ス
ト を、 ユ ー ザ が SELECT 権 限 を 持 つ テ ー ブ ル に 限 定 す る に は、
PBSYC2.SQL を実行 し ます。
テーブル リ ス ト を限定す る 必要がない場合は、 PBSYC2.SQL を実行す
る 必要はあ り ません。
PBSYC2.SQL を実行す る 手順については、 81 ページの 「ス ク リ プ ト の
実行方法」 を参照 し て く だ さ い。
作成 さ れる ス ト ア ド
プ ロ シージ ャ
PBSYC2.SQL ス ク リ プ ト に よ っ て、 以下に示す InfoMaker ス ト ア ド プ
ロ シージ ャ が Adaptive Server の sybsystemprocs デー タ ベース に作成 さ れ
ます。
PBSYC2.SQL ス ト ア
ド プ ロ シージ ャ
sp_pb115table
動作内容
現行ユーザが SELECT 権限を持つ、デー タ ベース内
のテーブルについての情報を取得す る
こ のバージ ョ ンの sp_pb115table は、 PBSYC.SQL ス
ク リ プ ト に よ っ て イ ン ス ト ール さ れ る デフ ォ ル ト
の sp_pb115table を置 き 換え る
ス ク リ プ ト の実行方法
ISQL ま たは SQL Advantage ツールを使用すれば、 InfoMaker の外部の
環境で ス ク リ プ ト を実行で き ます。
デー タ ベース と の接続
81
Adaptive Server デー タ ベースにおける ス ト ア ド プ ロ シージ ャのイ ン ス ト ール
ス ト ア ド プ ロ シージ ャ ス ク リ プ ト を実行する ISQL の使い方
ISQL は、 Open Client ソ フ ト ウ ェ ア と と も に提供 さ れ る 対話型の SQL
ユーテ ィ リ テ ィ で、 Windows ベース のオペレーテ ィ ン グ シ ス テ ム上で
稼働 し ま す。 ISQL が イ ン ス ト ール さ れて い る 場合は、 以下の手順で
InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ プ ト を実行 し ます。
ISQL の使い方の詳細については、 Open Client のマニ ュ アルを参照 し
て く だ さ い。
v
InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ プ ト を実行する ために ISQL を使
用する
1
シ ス テ ム管理者 と し て sybsystemprocs Adaptive Server デー タ ベース
に接続 し ます。
2
実行す る InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ プ ト が入っ てい
る 以下のいずれかの フ ァ イ ルを開 き ます。
PBSYC.SQL
PBSYC2.SQL
3
ユーザ ID (sa)、 サーバ名 (servername)、 そ し てオプシ ョ ン と し て
パ ス ワ ー ド (password) を 指定 し た ISQL コ マ ン ド を 実行 し ま す。
なお、 大文字 と 小文字は区別 さ れ る ので注意 し て く だ さ い。
isql -U sa -S SERVERNAME -i pathname -P { password }
パラ メ ー タ
sa
SERVERNAME
pathname
password
説明
シ ス テ ム管理者のユーザ ID を指定。 こ のユーザ
ID は、 変更 し ない
Adaptive Server デー タ ベース が稼働 し てい る マシ
ンの名前を指定
実行す る SQL ス ク リ プ ト のパ ス 名を ド ラ イ ブ名
か ら 指定
(オプシ ョ ン) sa (シ ス テ ム管理者) ユーザ ID の
パ ス ワ ー ド を指定。 Adaptive Server Enterprise を イ
ン ス ト ールす る と 、 デフ ォ ル ト では、 パ ス ワ ー ド
を 持た な い sa ユーザ ID が作成 さ れ る 。 イ ン ス
ト ールの際に sa のパス ワー ド を変更 し た場合は、
そのパ ス ワ ー ド を password に置 き 換え る
た と えば、InfoMaker を使用 し 、製品 CD-ROM の ス ト ア ド プ ロ シー
ジ ャ ス ク リ プ ト にア ク セ ス し てい る 場合、 以下のいずれかの コ マ
ン ド を 入力 し ま す (CD-ROM ド ラ イ ブ を D ド ラ イ ブ と し て い ま
す)。
isql -U sa /S TESTDB -i d:\server\pbsyb.sql -P
82
InfoMaker
第6章
Adaptive Server Enterprise の使い方
isql -U sa /S SALES -i d:\server\pbsyc.sql -P
adminpwd
ス ト ア ド プ ロ シージ ャ ス ク リ プ ト を実行する SQL Advantage の使い方
SQL Advantage は、 Open Client ソ フ ト ウ ェ ア と と も に提供 さ れ る 対話
型の SQL ユーテ ィ リ テ ィ で、 Windows ベー ス のオペレ ーテ ィ ン グ シ
ス テ ム上で稼働 し ま す。 SQL Advantage が イ ン ス ト ール さ れてい る 場
合は、 以下の手順で InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ プ ト を実
行 し ます。
SQL Advantage の使い方の詳細については、 Open Client のマニ ュ アル
を参照 し て く だ さ い。
v
InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ プ ト を実行する ために SQL
Advantage を使用する
1
SQL Advantage ユーテ ィ リ テ ィ を起動 し ます。
2
シ ス テ ム管理者 と し て sybsystemprocs Adaptive Server デー タ ベース
に接続 し ます。
3
実行す る InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ プ ト が入っ てい
る 以下のいずれかの フ ァ イ ルを開 き ます。
PBSYC.SQL
PBSYC2.SQL
4
各ス ク リ プ ト の先頭にあ る use sybsystemprocs コ マ ン ド 、ま たは go コ
マ ン ド を削除 し ます。
SQL Advantage では、 use sybsystemprocs コ マ ン ド は単独で実行 し ま
す。 実際には、 ス テ ッ プ 2 で sybsystemprocs デー タ ベース と の接続
を開 く と き に、 use sybsystemprocs コ マ ン ド が実行 さ れてい ます。 こ
のため、 こ の コ マ ン ド が ス ト ア ド プ ロ シージ ャ ス ク リ プ ト に よ っ
て再び実行 さ れない よ う に し ます。
ス ト ア ド プ ロ シージ ャ を正 し く イ ン ス ト ールす る ためには、 ス ク
リ プ ト を実行す る 前に、 InfoMaker ス ト ア ド プ ロ シージ ャ ス ク リ
プ ト の先頭か ら 、 以下の表に示す行を削除す る 必要があ り ます。
実行する ス ク リ プ ト
PBSYC.SQL
削除する コ マ ン ド
use sybsystemprocs
go
PBSYC2.SQL
use sybsystemprocs
go
デー タ ベース と の接続
83
Adaptive Server デー タ ベースにおける ス ト ア ド プ ロ シージ ャのイ ン ス ト ール
84
5
SQL ス ク リ プ ト 内のすべての文を実行 し ます。
6
SQL Advantage セ ッ シ ョ ン を終了 し ます。
InfoMaker
第 7 章
Informix の使い方
こ の章について
こ の章では、 InfoMaker において ネ イ テ ィ ブ IBM Informix デー タ
ベース イ ン タ フ ェース を使用す る 方法について解説 し ます。
内容
項目
サポー ト し てい る Informix のバージ ョ ン
サポー ト し てい る Informix デー タ 型
I10 イ ン タ フ ェース でサポー ト し てい る 機能
Informix の基本 ソ フ ト ウ ェ ア コ ン ポーネ ン ト
Informix デー タ ベース を使用す る ための準備
Informix デー タ ベース イ ン タ フ ェ ース の定義
ページ
85
86
88
92
93
95
サポー ト し ている Informix のバージ ョ ン
InfoMaker IN9 お よ び I10 のネ イ テ ィ ブ Informix デー タ ベース イ ン
タ フ ェ ース を使用す る と 、 IBM Informix Dynamic Server (IDS デー
タ ベース バージ ョ ン 9.x 以降にア ク セ ス で き ます。 ま た、 Informix
OnLine お よ び Informix Standard Engine (SE) デー タ ベース に も ア
ク セ ス で き ます。
PBIN9115.DLL の IN9 イ ン タ フ ェ ース を使用す る には、Informix ア
プ リ ケーシ ョ ン開発用の Informix Client SDK 2.8.1 以降、 お よ び実
行時配布用の Informix Connect 2.9 が必要です。
PBI10115.DLL の I10 イ ン タ フ ェース を使用す る には、 Informix ア
プ リ ケーシ ョ ン開発用の Informix Client SDK 2.9 以降、お よ び実行
時配布用の Informix Connect 2.9 以降が必要です。
制限事項
単一の InfoMaker セ ッ シ ョ ン で、 IN9 イ ン タ フ ェ ース と I10 イ ン タ
フ ェース の両方を使用す る こ と はで き ません。
デー タ ベース と の接続
85
サポー ト し ている Informix デー タ 型
Informix デー タ ベース を使用 し ての InfoMaker の使用方法の最新情報
の詳細については、 Sybase Support Web のサイ ト
http://www.sybase.com/detail?id=47934 を参照 し て く だ さ い。
サポー ト し ている Informix デー タ 型
Informix デー タ ベース イ ン タ フ ェース は、 レ ポー ト と フ ォ ームにおい
て、 表 7-1 に示す Informix デー タ 型を サポー ト し ます。
表 7-1: サポー ト し てい る Informix デー タ 型
Blob
LVarChar
Boolean
Money
NChar
Byte (最大 2^31 バ イ ト )
Char
NVarChar
Clob
Real
Date
Serial
DateTime
Serial8
Decimal
SmallInt (2 バ イ ト )
Float
Text (最大 2^31 バ イ ト )
Int8
Time
Integer (4 バ イ ト )
Interval
VarChar (1 ~ 255 バ イ ト )
Informix の DateTime デー タ 型
DateTime デー タ 型は、 任意の日付 と 時刻の格納に使用 し ま すが、 その
用途に合わせて精度を指定で き ます。 DateTime デー タ 型を定義す る 場
合は、 時間を表す連続 し たボ ッ ク ス の う ち、 最大精度 と 最少制度を修
飾子で指定 し ます。 以下に構文を示 し ます。
DATETIME largest_qualifier TO smallest_qualifier
InfoMaker におけ る 修飾子のデフ ォ ル ト は Year TO Fraction(5) です。
修飾子の一覧については、 Informix のマニ ュ アルを参照 し て く だ さ い。
v
独自の DateTime デー タ 型を作成する
1
86
デー タ ベース ペ イ ン タ の [テーブルの選択] で、 DateTime カ ラ ム
を伴 う テーブルを作成 し ます。
InfoMaker
第7章
Informix の使い方
テーブルの詳 し い作成手順につい ては、 『ユーザーズ ガ イ ド 』 マ
ニ ュ アルを参照 し て く だ さ い。
2
カ ラ ム ビ ュ ーで、 [オブジ ェ ク ト ] ま たはポ ッ プア ッ プ メ ニ ュ ー
か ら [処理前の構文] を選択 し ます。
カ ラ ム ビ ュ ーに、 テーブル定義に加え ら れた保留中の変更が表示
さ れ ます。 こ れ ら の変更は、 [保存] ボ タ ン を ク リ ッ ク し て テーブ
ル定義を保存す る と き に限っ て実行 さ れ ます。
3
[編集] ま たはポ ッ プア ッ プ メ ニ ュ ーか ら [ コ ピー] を選択す る
か、 [ コ ピー] ボ タ ン を ク リ ッ ク し ます。
SQL 構文 (ま たは選択 し た部分) が ク リ ッ プボー ド に コ ピー さ れ
ます。
4
ISQL セ ッ シ ョ ン ビ ュ ーで、 DateTime の構文を修正 し 、 CREATE
TABLE 文を実行 し ます。
ISQL セ ッ シ ョ ン ビ ュ ーの詳 し い使い方については、 『ユーザーズ
ガ イ ド 』 マニ ュ アルを参照 し て く だ さ い。
Informix の Time デー タ 型
Informix デー タ ベース イ ン タ フ ェース は、 Time (時刻) デー タ 型 も サ
ポー ト し ます。 Time デー タ 型は、 DateTime デー タ 型のサブセ ッ ト に相
当 し ます。 Time デー タ 型では、 時刻の修飾子フ ィ ール ド だけ を使用 し
ます。
Informix の Interval デー タ 型
Interval (時間隔) デー タ 型は、 あ る 時間の値、 ま たは継続時間を表す
時間の長 さ を格納 し ます。 以下に構文を示 し ます。
INTERVAL largest_qualifier TO smallest_qualifier
InfoMaker でのデフ ォ ル ト は Day(3) TO Day です。 Interval デー タ 型の
詳細については、 Informix のマニ ュ アルを参照 し て く だ さ い。
デー タ ベース と の接続
87
I10 イ ン タ フ ェ ースでサポー ト し ている機能
I10 イ ン タ フ ェ ース でサポー ト し ている機能
I10 イ ン タ フ ェ ース は、 IN9 イ ン タ フ ェ ース を使用 し てい る 場合には使
用で き ない、 い く つかの機能を サポー ト し ます。 こ れ ら の機能の一部
には、Informix Dynamic Server デー タ ベース の特定のバージ ョ ン が必要
です。
Unicode デー タ へのア ク セス
InfoMaker は、IN9 イ ン タ フ ェ ース を使用 し て、ANSI/DBCS デー タ ベー
ス のデー タ に対す る 接続、 保存、 お よ び検索を行 う こ と がで き ますが、
IN9 イ ン タ フ ェース は Unicode デー タ ベース をサポー ト し てい ません。
Informix I10 イ ン タ フ ェ ー ス は、 ANSI/DBCS デ ー タ ベ ー ス お よ び
Unicode デー タ ベース をサポー ト し てい ます。
I10 ネ イ テ ィ ブ イ ン タ フ ェ ース では、 広域言語サポー ト (GLS: Global
Language Support) を目的 と し て、Informix GLS API を使用 し てい ます。
ネ イ テ ィ ブ イ ン タ フ ェ ース は、 次の 3 つの DBParms を使用 し て、 現行
接続で使用す る ロ ケールを設定 し ます。
•
Client_Locale
•
DB_Locale
•
StrByCharset
こ れ ら のパ ラ メ ー タ は、 DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の
[地域の設定] タ ブ ページで設定で き ます。
Client_Locale
Client_Locale は、 Informix 環境変数 CLIENT_LOCALE の値を指定 し ま
す。 書式は language_territory.codeset です。 次に例を示 し ます。
Client_Locale='en_us.1252'
Client_Locale='en_us.utf8'
I10 イ ン タ フ ェ ース は、こ の設定を使用 し て Informix デー タ ベース の文
字列デー タ にア ク セ ス し 、 SQL 文を処理 し ます。 DBParm を設定 し な
い場合、 デフ ォ ル ト の ロ ケール値は OS の ロ ケールに基づ き ます。
DB_Locale
DB_Locale は、 Informix 環境変数 DB_LOCALE の値を指定 し ます。 書
式は language_territory.codeset です。 次に例を示 し ます。
DB_Locale='en_us.1252'
DB_Locale='en_us.utf8'
88
InfoMaker
第7章
Informix の使い方
DB_LOCALE は、 デー タ ベー ス サーバが特定のデー タ ベー ス での ロ
ケールに依存 し たデー タ 型の解釈に必要な、 言語、 地域、 お よ び コ ー
ド セ ッ ト を指定 し ます。 こ れ ら のデー タ 型には、 NChar お よ び NVarChar
な ど が あ り ま す。 DB_LOCALE に指定 さ れた コ ー ド セ ッ ト を 使用 し
て、 すべての文字カ ラ ム の文字、 ま たはデー タ ベー ス、 テーブル、 カ
ラ ム、 ビ ュ ーな どデー タ ベース オブジ ェ ク ト の名前が有効か ど う か を
判 断 し ま す。 DBParm を 設 定 し な い 場 合、 I10 イ ン タ フ ェ ー ス は、
DB_LOCALE の値は CLIENT_LOCALE の値 と 同一 と みな し ます。
CLIENT_LOCALE 環境変数お よ び DB_LOCALE 環境変数は、 Informix
デー タ ベー ス イ ン タ フ ェ ー ス 用 の Utilities フ ォ ル ダ で 使用 で き る
Informix Setnet32 ユーテ ィ リ テ ィ を使用 し て、 デー タ ベー ス ペ イ ン タ
のオブジ ェ ク ト ビ ュ ーま たは DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス で
直接設定で き ます。
Informix の CLIENT_LOCALE 環境変数お よ び DB_LOCALE 環境変数
の詳細については、 Informix library Web のサイ ト
http://publib.boulder.ibm.com/epubs/pdf/b8886700.pdf の 『IBM Informix GLS
ユーザーズガ イ ド 』 を参照 し て く だ さ い。
StrByCharset
StrByCharset DBParm は、InfoMaker Unicode 文字列 と Informix ク ラ イ ア
ン ト の マルチバ イ ト 文字列 と の文字列デー タ の変換方法 を 指定 し ま
す。 デフ ォ ル ト では、 UTF-8 コ ー ド セ ッ ト の文字列変換は UTF-8 コ ー
ド セ ッ ト に基づいて実行 さ れ、UTF-8 コ ー ド セ ッ ト 以外の文字列変換
は、 現行の OS の コ ー ド ページに基づいて実行 さ れ ます。 StrByCharset
が 1 (true) に設定 さ れてい る 場合、文字列変換は、DBParm Client_Locale
で指定 さ れた コ ー ド セ ッ ト に基づいて実行 さ れます。
InfoMaker カ タ ログ テーブルへのオーナーの割 り 当て
I10 イ ン タ フ ェ ー ス を 使 用 す る 場 合、 [シ ス テ ム] タ ブ ペ ー ジ の
[PowerBuilder カ タ ロ グ テーブル オーナー](PBCatalogOwner DBParm)
を使用 し て、 拡張属性シ ス テ ム テーブルにデフ ォ ル ト 以外のオーナー
を割 り 当て る こ と がで き ます。 ANSI 準拠のデー タ ベース の場合、 指定
す る オーナー名は固有であ る 必要があ り ますが、 テーブル名は固有で
あ る 必要はあ り ません。 異な る ユーザ名で始ま る カ タ ロ グ テーブルの
複数のセ ッ ト を作成で き ます。 ただ し 、 デー タ ベース が ANSI 準拠で
ない場合は、 テーブル名は固有で あ る 必要が あ り ま す。 つ ま り 、 オー
ナー名が割 り 当て ら れた カ タ ロ グ テーブルのセ ッ ト を 1 つだけ作成す
る こ と がで き ます。
デー タ ベース と の接続
89
I10 イ ン タ フ ェ ースでサポー ト し ている機能
長いオブ ジ ェ ク ト 名のサポー ト
I10 イ ン タ フ ェ ース は、 128 文字ま での Informix の長いオブジ ェ ク ト 名
をサポー ト し ます。
イ ンデ ッ ク スの名前変更
IDS 9.2.1 以降では、 I10 イ ン タ フ ェ ース を使用 し て接続 し てい る 場合、
デー タ ベー ス ペ イ ン タ で イ ンデ ッ ク ス の名前を変更で き ます。 I10 イ
ン タ フ ェース で IDS RENAME INDEX 文を使用 し て、 イ ンデ ッ ク ス の
名前を変更 し ます。 ほかの変更を行 う 場合は、 イ ンデ ッ ク ス を削除 し
て再度作成す る 必要があ り ます。
SQL ス テー ト メ ン ト キ ャ ッ シ ュ
IDS 9.2.1 以降では、デー タ ベース サーバは SQL ス テー ト メ ン ト キ ャ ッ
シ ュ (SSC) を使用 し て、 ユーザのセ ッ シ ョ ンが終了す る ま で SQL ス
テー ト メ ン ト を格納 し ます。ユーザが SQL ス テー ト メ ン ト キ ャ ッ シ ュ
に格納 さ れてい る SQL ス テー ト メ ン ト を実行す る 場合、 デー タ ベース
サーバは ス テー ト メ ン ト の解析お よ び最適化を再度行 う こ と はあ り ま
せん。 その結果、 パ フ ォ ーマ ン ス が向上 し ま す。 キ ャ ッ シ ュ に格納で
き る のは、 SELECT 文、 UPDATE 文、 DELETE 文、 INSERT 文のみで、 こ
れ ら の ス テー ト メ ン ト にユーザ定義のルーチン を含め る こ と はで き ま
せん。
サーバのキ ャ ッ シ ュ を設定す る 方法は、 い く つかあ り ます。 SET
STATEMENT CACHE 文は、 STMT_CACHE 環境変数お よ び
STMT_CACHE 設定パ ラ メ ー タ よ り 優先 さ れ ます。 SET STATEMENT
CACHE 文を正常に実行で き る よ う に、 事前に、 STMT_CACHE 設定パ
ラ メ ー タ を設定す る か Informix onmode ユーテ ィ リ テ ィ を使用 し て、
SQL ス テー ト メ ン ト キ ャ ッ シ ュ を有効にす る 必要があ り ます。
I10 接続の、 DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の [シ ス テ ム]
タ ブ ページで [SQL ス テー ト メ ン ト キ ャ ッ シ ュ の有効化] (StmtCache
DBParm) を設定 し て、 ク ラ イ ア ン ト での SQL ス テー ト メ ン ト キ ャ ッ
シ ュ を オ ン ま たはオ フ に し ます。ただ し 、ク ラ イ ア ン ト か ら キ ャ ッ シ ュ
にア ク セ ス す る 前に、 サーバで SQL ス テー ト メ ン ト キ ャ ッ シ ュ を サ
ポー ト す る よ う に設定す る 必要があ り ます。
Informix SQL ス テー ト メ ン ト キ ャ ッ シ ュ の詳細については、 IBM
Informix Dynamic Server パフ ォ ーマ ン ス ガ イ ド のサイ ト
http://publib.boulder.ibm.com/epubs/pdf/b8886780.pdf を参照 し て く だ さ い。
90
InfoMaker
第7章
Informix の使い方
ロ ッ ク せずに イ ンデ ッ ク スの作成 と 削除
IDS 10.0 以降では、 CREATE INDEX お よ び DROP INDEX の SQL 構文は
ONLINE キー ワ ー ド を サポー ト し ま す。 こ のキー ワ ー ド を使用す る と 、
デー タ ベー ス と そ の テーブルが継続的に使用可能な オ ン ラ イ ン 環境
で、 イ ンデ ッ ク ス の作成 と 削除を実行で き ます。 ONLINE キー ワー ド を
使用 し て イ ンデ ッ ク ス の作成 ま たは削除を実行 し た場合、 デー タ 定義
言語 (DDL) 処理は、 指定 し た イ ンデ ッ ク ス が定義 さ れた テーブルで
排他 ロ ッ ク を行わずに実行 し ます。
CREATE INDEX ONLINE を使用 し て、 ほかのユーザがア ク セ ス 中のテー
ブルで イ ンデ ッ ク ス を作成 し た場合、 ほかのユーザのテーブル更新が
終了す る ま で、 作成 し た イ ンデ ッ ク ス は有効にな り ません。
DROP INDEX ONLINE を発行 し て イ ンデ ッ ク ス を削除 し た場合、 ユーザ
はその イ ンデ ッ ク ス を参照で き ませんが、同時デー タ 操作言語 (DML)
処理は、 処理が終了す る ま でその イ ンデ ッ ク ス を使用で き ます。 イ ン
デ ッ ク ス の削除は、 すべてのユーザがその イ ンデ ッ ク ス の使用を終了
す る ま で延期 さ れます。
I10 接続の、 DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の [シ ス テ ム]
タ ブ ページ で [非 ク ラ ス タ 化 イ ン デ ッ ク ス の作成 ま たは削除の際に
テーブルを ロ ッ ク し ない] (OnlineIndex 静的 DBParm) を設定 し て、 イ
ンデ ッ ク ス を作成 し た り 削除 し た り す る 場合に、 デー タ ベース ペ イ ン
タ が必ず ONLINE キー ワー ド を使用す る よ う に指定 し ます。
サポー ト さ れていない ク ラ ス タ 化イ ンデ ッ ク ス
ク ラ ス タ 化 イ ンデ ッ ク ス は、 オ ン ラ イ ン モー ド を使用 し て作成で き ま
せん。 こ れは、 IDS でサポー ト さ れていないためです。
カ ラ ム レ ベルの暗号化
IDS 10.0 以降では、 SQL 文 SET ENCRYPTION PASSWORD を使用す る と 、
カ ラ ム レ ベルでデー タ を 暗号化お よ び復号化す る ためのパ ス ワ ー ド
を定義 し た り 再設定 し た り す る こ と に よ っ て、 デー タ の機密性を向上
さ せ、 デー タ の整合性をサポー ト で き ます。
デー タ ベース と の接続
91
Informix の基本ソ フ ト ウ ェ ア コ ンポーネ ン ト
I10 接続の、 DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の [シ ス テ ム]
タ ブ ページ で [暗号化パ ス ワ ー ド ] (EncryptionPass DBParm) お よ び
[ ヒ ン ト ] (Hint DBParm) を設定 し て、 パ ス ワー ド 、 お よ びパ ス ワー ド
を 思 い 出す た め の ヒ ン ト を 指定 で き ま す。 ア プ リ ケ ー シ ョ ン で は
Informix の組み込み関数を使用 し て、 文字デー タ の暗号化 と 復号化を
行い ます。
ユーザ定義ルーチ ン での複数の OUT パラ メ ー タ の使い方
ユーザ定義ルーチン (UDR) では、 OUT パ ラ メ ー タ は、 ポ イ ン タ を介
し て返 さ れた値に対応 し ます。 IDS バージ ョ ン 9.4 よ り 前では、 1 つの
UDR での複数の OUT パ ラ メ ー タ はサポー ト し てい ま せんで し た。 さ
ら に、 OUT パ ラ メ ー タ は、 パ ラ メ ー タ リ ス ト の最後の項目 と し て登録
す る 必要があ り ま し た。 IDS バージ ョ ン 9.4 で こ の制限がな く な り 、 複
数の OUT パ ラ メ ー タ がサポー ト さ れ、 UDR のパ ラ メ ー タ リ ス ト の ど
の位置で も 有効にな り ま し た。 こ の機能は、 I10 イ ン タ フ ェース を使用
す る 場合に有効にな り ます。 こ れに よ っ て、 UDR の定義におけ る 柔軟
性が向上 し 、 複数の戻 り 値が必要な コ ン テ キ ス ト に コ レ ク シ ョ ン変数
を返す必要がな く な り ま し た。
UDR か ら OUT パ ラ メ ー タ を返すには、 ス テー ト メ ン ト の ロ ーカル変
数 (SLV) を使用す る 必要があ り ます。
次の ス テー ト メ ン ト では、 UDR myfunc の OUT パ ラ メ ー タ が SLV 構文
slvname#out_param_type を使用 し て定義 さ れてい ます。
SELECT sales FROM mytable
WHERE myfunc(10, sales#money) < 1000
Informix の基本 ソ フ ト ウ ェ ア コ ンポーネ ン ト
図 7-1 は、 ネ イ テ ィ ブ Informix デー タ ベース イ ン タ フ ェース を使用 し
て Informix デー タ ベース にア ク セ スす る ために必要な基本 ソ フ ト ウ ェ
ア コ ン ポーネ ン ト を示 し てい ます。
92
InfoMaker
第7章
Informix の使い方
図 7-1: Informix 接続のコ ンポーネ ン ト
Informix デー タ ベース を使用する ための準備
デー タ ベー ス イ ン タ フ ェ ース を定義 し 、 InfoMaker か ら Informix デー
タ ベー ス に接続す る 前に、 以下の手順に従っ て使用す る デー タ ベー ス
を準備 し ます。
デー タ ベース と の接続
1
接続に必要なデー タ ベース サーバ、 ネ ッ ト ワー ク 、 ク ラ イ ア ン ト
ソ フ ト ウ ェ ア を イ ン ス ト ール し 、 設定 し ます。
2
ネ イ テ ィ ブ Informix IN9 ま たは I10 デー タ ベース イ ン タ フ ェース
を イ ン ス ト ール し ます。
93
Informix デー タ ベース を使用する ための準備
3
InfoMaker の外部の環境で、 Informix サーバやデー タ ベース に接続
で き る こ と を確認 し ます。
Informix 用に必要なデー タ ベース サーバ、 ネ ッ ト ワ ー ク 、 ク ラ イ ア ン
ト ソ フ ト ウ ェ ア を イ ン ス ト ール し 、 設定す る 必要があ り ます。
ス テ ッ プ 1 : デー タ
ベース サーバのイ ン
ス ト ール と 設定
v
デー タ ベース サーバ、 ネ ッ ト ワー ク、 ク ラ イ ア ン ト ソ フ ト ウ ェ ア を イ ン ス
ト ール し 、 設定する
1
デー タ ベース プ ロ フ ァ イ ルに指定 さ れてい る サーバ上に、Informix
デー タ ベー ス サーバ ソ フ ト ウ ェ アやデー タ ベー ス ネ ッ ト ワ ー ク
ソ フ ト ウ ェ アが イ ン ス ト ール さ れ、 稼働 し てい る こ と を確認 し ま
す。
Informix デー タ ベース サーバ ソ フ ト ウ ェ アやデー タ ベース ネ ッ ト
ワー ク ソ フ ト ウ ェ ア を入手す る 必要があ り ます。
イ ン ス ト ールの手順については、Informix のマニ ュ アルを参照 し て
く だ さ い。
2
InfoMaker がイ ン ス ト ールさ れている 各ク ラ イ ア ン ト マシン に、
Informix ク ラ イ ア ン ト ソ フ ト ウ ェ ア を イ ン ス ト ール し ます。
Informix Connect ま たは Informix Client SDK (Informix Connect を含
む) を イ ン ス ト ール し ます。
IBM 社の Informix ク ラ イ ア ン ト ソ フ ト ウ ェ ア を入手す る 必要があ
り ます。 イ ン ス ト ールす る ク ラ イ ア ン ト ソ フ ト ウ ェ アが、 以下を
すべてサポー ト し てい る こ と を確認 し ます。
ク ラ イ ア ン ト マシ ン上で稼働 し てい る オペレーテ ィ ン グ シ ス
テム
ア ク セ スす る デー タ ベース のバージ ョ ン
稼働 し てい る InfoMaker のバージ ョ ン
イ ン ス ト ールの手順については、Informix のマニ ュ アルを参照 し て
く だ さ い。
3
94
自分のサ イ ト か ら Informix デー タ ベース サーバに接続で き る よ う
に、 Informix ク ラ イ ア ン ト ソ フ ト ウ ェ アが正 し く 設定 さ れてい る
こ と を確認 し ます。
InfoMaker
第7章
Informix の使い方
SetNet32 ユーテ ィ リ テ ィ を 実行 し て ク ラ イ ア ン ト の レ ジ ス ト リ の
値を設定 し ます。Informix Connect ク ラ イ ア ン ト ソ フ ト ウ ェ ア を設
定 す る と 、 HKEY_LOCAL_MACHINE\Software\Informix\SqlHosts
に レ ジ ス ト リ エ ン ト リ が作成 さ れ ま す。 レ ジ ス ト リ エ ン ト リ に
は、 ネ ッ ト ワ ー ク 構成、 ネ ッ ト ワ ー ク プ ロ ト コ ル、 環境変数を定
義す る パ ラ メ ー タ が格納 さ れてい ま す。 ネ イ テ ィ ブ Informix デー
タ ベー ス イ ン タ フ ェ ー ス を 定義す る と き に、 デー タ ベー ス プ ロ
フ ァ イ ルに こ れ ら の値を指定 し ない と 、 レ ジ ス ト リ エ ン ト リ に指
定 さ れてい る 値がデフ ォ ル ト 値 と し て適用 さ れ ます。
Informix ク ラ イ ア ン ト ソ フ ト ウ ェ ア の設定の処理手順につい て
は、 Informix のマニ ュ アルを参照 し て く だ さ い。
4
オペレーテ ィ ン グ シ ス テ ムの必要に応 じ て、 Informix ク ラ イ ア ン
ト ソ フ ト ウ ェ アのデ ィ レ ク ト リ がシ ス テ ムパ ス にあ る こ と を確認
し ます。
ス テ ッ プ 2 : デー タ
ベース イ ン タ フ ェ ー
スのイ ン ス ト ール
InfoMaker のセ ッ ト ア ッ プ プ ロ グ ラ ム で、 標準 イ ン ス ト ールを選択す
る か、 カ ス タ ム イ ン ス ト ール を 選択 し た場合は ネ イ テ ィ ブ Informix
デー タ ベース イ ン タ フ ェ ース を選択 し て く だ さ い。
ス テ ッ プ 3 : 接続の確
認
InfoMaker の外部の環境で、 ア ク セ ス し たい Informix サーバやデー タ
ベース に接続で き る こ と を確認 し ます。
接続を確認す る には、 デー タ ベース に接続す る (Informix ilogin.exe プ ロ
グ ラ ム な ど の) Windows ベース のユーテ ィ リ テ ィ を使用 し ます。 デー
タ ベー ス に 接続す る 時 に は、 デー タ ベー ス に ア ク セ ス す る た め に
InfoMaker のデー タ ベー ス プ ロ フ ァ イ ルで使用す る 予定の接続パ ラ
メ ー タ と 同 じ パ ラ メ ー タ を指定 し てい る こ と を確認 し ます。
ilogin.exe を使用す る 手順については、Informix のマニ ュ アルを参照 し て
く だ さ い。
Informix デー タ ベース イ ン タ フ ェ ースの定義
Informix デー タ ベー ス イ ン タ フ ェ ー ス を介 し た接続を定義す る には、
少な く と も Informix IN9 ま たは I10 の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ
グ ボ ッ ク ス の基本接続パ ラ メ ー タ 用の値を指定 し て、 デー タ ベース プ
ロ フ ァ イ ルを作成 し な ければな り ません。 次回以降、 こ のデー タ ベー
ス プ ロ フ ァ イ ルを選択す る と 、 開発環境でそのデー タ ベース にいつで
も 接続で き ます。
デー タ ベース と の接続
95
Informix デー タ ベース イ ン タ フ ェ ースの定義
デー タ ベース プ ロ フ ァ イ ルの定義方法については、 6 ページの 「デー
タ ベース プ ロ フ ァ イ ルの使い方」 を参照 し て く だ さ い。
サーバ名の指定
サーバ名の値 を 指定す る 際には、 Informix イ ン タ フ ェ ー ス を 介 し て
デー タ ベー ス に接続す る ために、 次の形式で使用 し な ければな り ませ
ん。
host_name@server_name
パラ メ ー タ
host_name
server_name
説明
Informix デー タ ベース サーバを実行 し てい る ホ ス ト コ
ン ピ ュ ー タ の 名 前。 こ の パ ラ メ ー タ は、 Informix
HOSTNAME 環境変数に相当 し ます。
Informix デー タ ベー ス が入っ てい る サーバの名前。 こ
のパ ラ メ ー タ は、 Informix SERVER 環境変数に相当 し
ます。
た と えば、 ネ イ テ ィ ブ イ ン タ フ ェ ース を使用 し て、 sales と い う ホ ス
ト マシ ン上の server01 と い う Informix デー タ ベース サーバに接続す
る には、 デー タ ベー ス プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の [接
続] タ ブにあ る [ホ ス ト 名] ボ ッ ク ス にホ ス ト 名 (sales) を、 [サー
バ] ボ ッ ク ス にサーバ名 (server01) を それぞれ入力 し ます。InfoMaker
は、 こ のサーバ名を sales@server01 と し て、 シ ス テ ム レ ジ ス ト リ 内
のデー タ ベース プ ロ フ ァ イ ルのエ ン ト リ に保存 し ます。
96
InfoMaker
第 8 章
Microsoft SQL Server の使い方
こ の章について
こ の章では、 InfoMaker において Microsoft SQL Server Native Client
デー タ ベー ス イ ン タ フ ェ ー ス を 使用す る 方法につい て解説 し ま
す。
内容
項目
サポー ト し てい る SQL Server のバージ ョ ン
サポー ト し てい る SQL Server デー タ 型
Microsoft SQL Server の基本 ソ フ ト ウ ェ ア コ ン ポーネ ン ト
SQL Server デー タ ベース を使用す る ための準備
SQL Server デー タ ベース イ ン タ フ ェ ース の定義
MSS や OLE DB デー タ ベース イ ン タ フ ェ ース か ら の移行
SQL Server 2005 の機能
SQL Server 2008 の機能
SNC イ ン タ フ ェース使用時の注意事項
ページ
97
98
99
100
102
103
106
107
115
サポー ト し ている SQL Server のバージ ョ ン
SQL Native Client イ ン タ フ ェ ー ス を 使用す る と 、 Microsoft SQL
Server 2000 お よ び 2005 デー タ ベー ス に ア ク セ ス で き ま す。 SQL
Native Client イ ン タ フ ェース は、 PBSNC115.DLL と い う DLL を使
用 し てデー タ ベー ス にア ク セ ス し ます。 イ ン タ フ ェ ー ス は、 ク ラ
イ ア ン ト 側 で は SQL Server 2005 Native Client (sqlncli.h お よ び
sqlncli.dll) を使用 し 、 OLE DB を使用 し て接続 し ます。
SQL Server 2000 に関 し て、 SQL ク ラ イ ア ン ト SDK は Microsoft
Database Access Components (MDAC) で 提 供 さ れ て い ま し た。
MDAC は SQL Server 2005 の新 し い機能を サポー ト し てい ません。
こ れ ら の機能を使用す る ためには、 SNC イ ン タ フ ェース を使用す
る 必要があ り ます。 SQL Server 2005 SQL Native Client ソ フ ト ウ ェ
アが ク ラ イ ア ン ト のマ シ ン に イ ン ス ト ール さ れてい る 必要があ り
ます。
デー タ ベース と の接続
97
サポー ト し ている SQL Server デー タ 型
PBODB 初期設定 フ ァ イルを使用 し ない
OLE DB か ら 直接行 う 接続では、 一部のパ ラ メ ー タ を設定す る ために
PBODB 初期設定フ ァ イ ルを使用 し ま すが、 SNC イ ン タ フ ェ ー ス を使
用 し て行 う 接続では、 PBODB 初期設定フ ァ イ ルに依存 し ません。
サポー ト し ている SQL Server デー タ 型
SQL Native Client デー タ ベース イ ン タ フ ェ ース は、 表 8-1 に示すデー
タ 型をサポー ト し てい ます。
表 8-1: サポー ト し てい る Microsoft SQL Server 2005 デー タ 型
Binary
Real
Bit
SmallDateTime
SmallInt
Character (255 文字 よ り 小 さ い)
DateTime
SmallMoney
Decimal
Text
Float
Timestamp
Identity
TinyInt
Image
VarBinary(max)
Int
VarBinary(n)
Money
VarChar(max)
Numeric
VarChar(n)
NVarChar(max)
XML
NVarChar(n)
XML デー タ 型は SQL Server 2005 の組み込みデー タ 型で、 こ のデー タ
型に よ り SQL Server デー タ ベース に XML 文書やフ ラ グ メ ン ト を格納
す る こ と がで き ます。 テーブルを作成す る 際のカ ラ ム のデー タ 型 と し
て、 こ のデー タ 型を使用す る こ と がで き ます。
SQL Server 2008 ではそのほかのデー タ 型 も サポー ト さ れ ます。 詳細に
ついては、 108 ページの 「SQL Server 2008 の新 し いデー タ 型のサポー
ト 」 を参照 し て く だ さ い。
98
InfoMaker
第8章
Microsoft SQL Server の使い方
SQL Server 2005 では、VarChar(max)、NVarChar(max)、お よ び VarBinary(max)
デー タ 型は、 と て も 大 き な値 (2^31 バ イ ト ま で) を格納 し ます。 メ タ
デー タ を取得 し て、 新 し いカ ラ ム を定義 し 、 カ ラ ム のデー タ を検索す
る ために こ れ ら のデー タ 型を使用す る こ と がで き ます。 デー タ をパ イ
プ ラ イ ン 処理す る た めに こ れ ら のデー タ 型 を 使用す る こ と も で き ま
す。
Microsoft SQL Server の基本ソ フ ト ウ ェ ア コ ンポーネ ン
ト
SQL Native Client イ ン タ フ ェ ー ス を使用 し てデー タ ベー ス にア ク セ ス
す る ためには、 図 8-1 の ソ フ ト ウ ェ ア コ ン ポーネ ン ト を イ ン ス ト ール
す る 必要があ り ます。 Microsoft SQL Server Native Client ソ フ ト ウ ェ ア
は、 1 つの DLL に SQL OLE DB プ ロ バ イ ダお よ び ODBC ド ラ イ バを
含んでい ます。
デー タ ベース と の接続
99
SQL Server デー タ ベース を使用する ための準備
図 8-1: Microsoft SQL Server 接続の コ ンポーネ ン ト
SQL Server デー タ ベース を使用する ための準備
デー タ ベース イ ン タ フ ェース を定義 し 、 InfoMaker か ら Microsoft SQL
Server デー タ ベー ス に接続す る 前に、 以下の手順に従 っ て 使用す る
デー タ ベース を準備 し ます。
100
1
接続に必要なデー タ ベース サーバ、 ネ ッ ト ワー ク 、 ク ラ イ ア ン ト
ソ フ ト ウ ェ ア を イ ン ス ト ール し 、 設定 し ます。
2
SQL Native Client デー タ ベース イ ン タ フ ェ ース を イ ン ス ト ール し
ます。
InfoMaker
第8章
3
Microsoft SQL Server の使い方
InfoMaker の外部の環境で、Microsoft SQL Server サーバお よ びデー
タ ベース に接続で き る こ と を確認 し ます。
SQL Server 用にデー タ ベース サーバ、 ネ ッ ト ワー ク 、 ク ラ イ ア ン ト ソ
フ ト ウ ェ ア を イ ン ス ト ール し 、 設定す る 必要があ り ます。
ス テ ッ プ 1 : デー タ
ベース サーバのイ ン
ス ト ール と 設定
v
デー タ ベース サーバ、 ネ ッ ト ワー ク、 ク ラ イ ア ン ト ソ フ ト ウ ェ ア を イ ン ス
ト ール し 、 設定する
1
デー タ ベース プ ロ フ ァ イ ルに指定 さ れてい る サーバ上に、
Microsoft SQL Server デー タ ベース ソ フ ト ウ ェ アが イ ン ス ト ール さ
れ、 稼働 し てい る こ と を確認 し ます。
Microsoft 社か ら デー タ ベー ス サーバ ソ フ ト ウ ェ アお よ び必要な
ラ イ セ ン ス を入手す る 必要があ り ま す。 イ ン ス ト ールの手順につ
いては、 Microsoft SQL Server のマニ ュ アルを参照 し て く だ さ い。
SQL Server の以前のバージ ョ ンからのア ッ プグ レー ド
SQL Server の最新バージ ョ ンへのア ッ プグ レー ド あ る いは旧バー
ジ ョ ン と 一緒に最新バージ ョ ン を イ ン ス ト ールす る 手順について
は、 Microsoft SQL Server のマニ ュ アルを参照 し て く だ さ い。
2
リ モー ト の SQL Server デー タ ベース にア ク セ ス し てい る 場合、 必
要なネ ッ ト ワ ー ク ソ フ ト ウ ェ ア (TCP/IP な ど) がマシ ン上に イ ン
ス ト ール さ れ、 稼働 し てお り 、 自分のサ イ ト の SQL Server デー タ
ベース サーバに接続で き る よ う に正 し く 設定 さ れてい る こ と を確
認 し ます。
イ ン ス ト ール と 設定の手順については、 ネ ッ ト ワ ー ク ま たはデー
タ ベース の管理者に問い合わせて く だ さ い。
3
InfoMaker がイ ン ス ト ールさ れている 各ク ラ イ ア ン ト マシン に、 必
要な Microsoft SQL Native Client ソ フ ト ウ ェ ア を イ ン ス ト ール し ま
す。
Microsoft 社か ら SQL Native Client ソ フ ト ウ ェ ア を入手す る 必要が
あ り ま す。 イ ン ス ト ールす る ク ラ イ ア ン ト ソ フ ト ウ ェ ア のバー
ジ ョ ン が、 以下をすべてサポー ト す る こ と を確認 し ます。
ク ラ イ ア ン ト マシ ン上で稼働 し てい る オペレーテ ィ ン グ シ ス
テム
ア ク セ スす る デー タ ベース のバージ ョ ン
稼働 し てい る InfoMaker のバージ ョ ン
イ ン ス ト ールの手順については、 Microsoft SQL Server のマニ ュ ア
ルを参照 し て く だ さ い。
デー タ ベース と の接続
101
SQL Server デー タ ベース イ ン タ フ ェ ースの定義
4
自分のサ イ ト か ら SQL Server デー タ ベース サーバに接続で き る よ
う に、 SQL Native Client ク ラ イ ア ン ト ソ フ ト ウ ェ アが正 し く 構成
さ れてい る こ と を確認 し ます。
設定の手順については、 Microsoft SQL Server のマニ ュ アルを参照
し て く だ さ い。
5
SQL Native Client ソ フ ト ウ ェ ア を含むデ ィ レ ク ト リ がシ ス テ ム パ
ス にあ る こ と を確認 し ます。
6
Sqlncli.dll フ ァ イ ルの 1 つの コ ピーだけが自分のマシ ン に イ ン ス
ト ール さ れてい る こ と を確認 し ます。
ス テ ッ プ 2 : デー タ
ベース イ ン タ フ ェ ー
スのイ ン ス ト ール
InfoMaker のセ ッ ト ア ッ プ プ ロ グ ラ ム で、 カ ス タ ム イ ン ス ト ールを選
択 し て、SQL Native Client デー タ ベース イ ン タ フ ェ ース を選択 し ます。
ス テ ッ プ 3 : 接続の確
認
InfoMaker の外部の環境で、 ア ク セ ス し たい SQL Server サーバやデー
タ ベース に接続で き る こ と を確認 し ます。
接続を確認す る には、 デー タ ベース に接続す る Windows ベース のユー
テ ィ リ テ ィ を使用 し ます。デー タ ベース に接続す る 時には、デー タ ベー
ス にア ク セ スす る ために InfoMaker のデー タ ベース プ ロ フ ァ イ ルで使
用す る 予定の接続パ ラ メ ー タ と 同 じ パ ラ メ ー タ を指定 し てい る こ と を
確認 し ます。
SQL Server デー タ ベース イ ン タ フ ェ ースの定義
SQL Native Client イ ン タ フ ェ ー ス を介 し た接続を定義す る には、 少な
く と も 、 DB プ ロ フ ァ イ ル設定 - SQL ネ ィ テ ィ ブ ク ラ イ ア ン ト (OLE
DB) ダ イ ア ロ グ ボ ッ ク ス の基本接続パ ラ メ ー タ 用の値 を 指定 し て、
デー タ ベー ス プ ロ フ ァ イ ル を作成 し な ければな り ま せん。 次回以降、
こ のデー タ ベース プ ロ フ ァ イ ルを選択す る と 、 開発環境でそのデー タ
ベース にいつで も 接続で き ます。
デー タ ベース プ ロ フ ァ イ ルの定義方法については、 10 ページの 「デー
タ ベース プ ロ フ ァ イ ルの作成」 を参照 し て く だ さ い。 デー タ ベース プ
ロ フ ァ イ ルで特別な設定を要求す る 新 し い機能については、 106 ペー
ジ の 「SQL Server 2005 の機能」 を 参照 し て く だ さ い。 既存の ア プ リ
ケーシ ョ ン で使用 し たデー タ ベー ス パ ラ メ ー タ と SNC デー タ ベー ス
イ ン タ フ ェ ー ス で使用 し たデー タ ベー ス パ ラ メ ー タ の比較につい て
は、 次の 「MSS や OLE DB デー タ ベース イ ン タ フ ェース か ら の移行」
を参照 し て く だ さ い。
102
InfoMaker
第8章
Microsoft SQL Server の使い方
MSS や OLE DB デー タ ベース イ ン タ フ ェ ースか らの移行
InfoMaker の以前の リ リ ース では、 MSS ネ イ テ ィ ブ イ ン タ フ ェース を
Microsoft SQL Server への接続の た めに提供 し て い ま し た。 こ の ネ イ
テ ィ ブ イ ン タ フ ェース は、 Microsoft DB-LIB 機能をベース に し てい ま
し た。 Microsoft は こ の機能を サポー ト し な く な り 、 Unicode を使用す る
こ と がで き ません。 MSS イ ン タ フ ェ ー ス は、 InfoMaker 10.0 で削除 さ
れま し た。
SQL Server 2005 お よ び SQL Native Client の導入の前に、 Microsoft は
SQL Server に接続す る ために、 OLE DB デー タ ベース イ ン タ フ ェース
お よ び MDAC を使用す る こ と を推奨 し てい ま し た。SQL Server 2005 や
SQL Server 2008 の新 し い機能 を 使用す る 必要が な い場合は、 こ の ソ
リ ュ ーシ ョ ン を使用 し 続け る こ と がで き ます。
こ の節では、 既存の ア プ リ ケーシ ョ ン で使用 し たデー タ ベー ス パ ラ
メ ー タ と SNC デー タ ベー ス イ ン タ フ ェ ー ス で使用で き る パ ラ メ ー タ
と の比較を行い ます。
SNC でサポー ト する
MSS デー タ ベース パ
ラ メータ
表 8-2 は、Microsoft SQL Server のための使用 さ れな く な っ た MSS ネ イ
テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス 用の DB プ ロ フ ァ イ ル設定 ダ イ
ア ロ グ ボ ッ ク ス で設定 さ れ る デー タ ベー ス パ ラ メ ー タ お よ び環境設
定項目を記述 し 、 SNC イ ン タ フ ェ ース でサポー ト し てい る か ど う か を
示 し てい ます。
左の列は、 MSS の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の タ ブ
ページ を表 し てい ます。 パ ラ メ ー タ お よ び環境設定項目は、 SNC プ ロ
フ ァ イ ル と 異な る タ ブ ページにあ る こ と があ り ます。
デー タ ベース と の接続
103
MSS や OLE DB デー タ ベース イ ン タ フ ェ ースか ら の移行
表 8-2: SNC でサポー ト し ている MSS パラ メ ー タ
MSS
SNC
[接続] タ ブ :
Language
Lock
AutoCommit
CommitOnDisconnect
[シ ス テ ム] タ ブ :
Log
SystemProcs
PBCatalogOwner
[ ト ラ ンザ ク シ ョ ン] タ ブ :
Async
DBGetTime
CursorLock
CursorScroll
StaticBind
MaxConnect
[構文] タ ブ :
DBTextLimit
SNC でサポー ト する
OLE DB デー タ ベース
パラ メ ー タ
未サポー ト
サポー ト ([ ト ラ ンザ ク シ ョ ン] タ ブ)
サポー ト
サポー ト
未サポー ト
未サポー ト
サポー ト
未サポー ト
未サポー ト
未サポー ト
未サポー ト
サポー ト
未サポー ト
DateTimeAllowed
OptSelectBlob
サポー ト ([ ト ラ ンザ ク シ ョ ン] タ ブの
PBMaxTextSize)
未サポー ト
未サポー ト
[ネ ッ ト ワー ク ] タ ブ :
AppName
Host
PacketSize
Secure
サポー ト
サポー ト
サポー ト
サポー ト
([シ ス テ ム] タ ブ)
([シ ス テ ム] タ ブ)
([シ ス テ ム] タ ブ)
([接続] タ ブの TrustedConnection)
表 8-3 は、 Microsoft SQL Server のための OLE DB 標準 イ ン タ フ ェース
用の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス で設定 さ れ る デー タ
ベース パ ラ メ ー タ お よ び環境設定を記述 し 、SNC イ ン タ フ ェ ース でサ
ポー ト し てい る か ど う か を示 し てい ます。
左の列は、 OLE DB の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の タ
ブ ページ を表 し て い ま す。 パ ラ メ ー タ お よ び環境設定は、 SNC プ ロ
フ ァ イ ル と 異な る タ ブ ページにあ る こ と があ り ます。
104
InfoMaker
第8章
Microsoft SQL Server の使い方
表 8-3: SNC でサポー ト し てい る MSS パラ メ ー タ
OLE DB
SNC
[接続] タ ブ :
Provider
DataSource
DataLink
Location
ProviderString
[シ ス テ ム] タ ブ :
PBCatalogOwner
デー タ ベース と の接続
未サポー ト
実行時にサポー ト (SQLCA.ServerName と し
て)
サポー ト
未サポー ト
サポー ト
ServiceComponents
AutoCommit
CommitOnDisconnect
StaticBind
DisableBind
Init_Prompt
TimeOut
LCID
サポー ト
未サポー ト
サポー ト ([接続] タ ブ)
サポー ト ([接続] タ ブ)
サポー ト ([ ト ラ ンザ ク シ ョ ン] タ ブ)
サポー ト ([ ト ラ ンザ ク シ ョ ン] タ ブ)
未サポー ト
サポー ト
未サポー ト
[ ト ラ ンザ ク シ ョ ン] タ ブ :
Block
PBMaxBlobSize
Mode
Lock
サポー ト
サポー ト
未サポー ト
サポー ト
[構文] タ ブ :
DelimitIdentifier
IdentifierQuoteChar
DateFormat
TimeFormat
DecimalSeparator
OJSyntax
サポー ト
未サポー ト
サポー ト
サポー ト
サポー ト
サポー ト
[セキ ュ リ テ ィ ] タ ブ :
EncryptPassword
CacheAuthentication
PersistSensitive
MaskPassword
PersistEncrypted
IntegratedSecurity
未サポー ト
未サポー ト
未サポー ト
未サポー ト
未サポー ト
サポー ト ([接続] タ ブの TrustedConnection)
105
SQL Server 2005 の機能
OLE DB
ImpersonationLevel
ProtectionLevel
SNC
未サポー ト
未サポー ト
追加のデー タ ベース
パラ メ ー タ
SNC イ ン タ フ ェース は、 Encrypt、 TrustServerCertificate、 SPCache パ ラ
メ ー タ ([シ ス テ ム] タ ブ ページ) お よ び Identity パ ラ メ ー タ ([構文]
タ ブ ページ) も サポー ト し てい ます。
SPCache デー タ ベー
ス パラ メ ー タ
SPCache デー タ ベース パ ラ メ ー タ の設定を変更す る こ と で、 パ ラ メ ー
タ 情報 と 一緒に キ ャ ッ シ ュ す る ス ト ア ド プ ロ シージ ャ の数 を 制御す
る こ と がで き ま す。 デ フ ォ ル ト は、 100 プ ロ シージ ャ です。 ス ト ア ド
プ ロ シージ ャ のキ ャ ッ シ ュ を解除す る には、 SPCache に 0 を設定 し ま
す。
SNC イ ン タ フ ェ ー ス でサポー ト す る デー タ ベー ス パ ラ メ ー タ につい
ては、 オ ン ラ イ ン ヘルプの 『接続 リ フ ァ レ ン ス 』 マニ ュ アルを参照 し
て く だ さ い。
SQL Server 2005 の機能
SNC デー タ ベース イ ン タ フ ェ ース は、 SQL Server 2005 で導入 さ れたい
く つか の機能 を サ ポー ト し て い ま す。 こ れ ら の機能の使用につい て
は、 Microsoft SQL Server 2005 のマニ ュ アルを参照 し て く だ さ い。
Multiple Active Result
Sets
SNC イ ン タ フ ェ ース は、 Multiple Active Result Sets (MARS) をサポー
ト し ま す。 MARS は、 アプ リ ケーシ ョ ン が複数のデフ ォ ル ト の結果集
合を開いて、 それ ら か ら の読み込みを イ ン タ リ ーブにで き ます。 アプ
リ ケ ー シ ョ ン は、 デ フ ォ ル ト の結果集合 を 開い て い る 間に INSERT、
UPDATE、 DELETE な ど の ス テー ト メ ン ト お よ びス ト ア ド プ ロ シージ ャ
呼び出 し を実行す る こ と も で き ます。
検証 し ない暗号化
SQL Server 2005 は、 ロ グ イ ン に関連 し たネ ッ ト ワ ー ク パケ ッ ト を常に
暗号化 し ます。開始時にサーバーで証明書が提供 さ れない場合は、SQL
Server は ロ グ イ ン パケ ッ ト を暗号化す る ために使用 さ れ る 自己署名入
り の証明書を生成 し ます。
SQL Native Client は、 証明書を検証せずにサーバへ暗号化デー タ を送
信す る こ と を サポー ト し ます。 DB 接続プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ
ク ス の [シ ス テ ム] ページにあ る [サーバ証明書を信頼す る ] デー タ
ベース パ ラ メ ー タ (TrustServerCertificate) で、 こ の機能を制御す る こ
と がで き ます。
106
InfoMaker
第8章
スナ ッ プ シ ョ ッ ト 分離
Microsoft SQL Server の使い方
ス ナ ッ プシ ョ ッ ト 分離 レベルは、オ ン ラ イ ン ト ラ ンザ ク シ ョ ン処理の
ア プ リ ケーシ ョ ン に関す る 同時実行を 拡張す る ために作 ら れ ま し た。
ス ナ ッ プシ ョ ッ ト 分離の も と で起動す る ト ラ ンザ ク シ ョ ンは、 起動時
に行っ たデー タ ベース ス ナ ッ プシ ョ ッ ト を読み込みます。 こ の コ ン テ
キ ス ト 内のキーセ ッ ト 、 動的、 お よ び静的サーバ カー ソ ルは、 シ リ ア
ル化可能な ト ラ ン ザ ク シ ョ ン内で開いた静的カー ソ ルの よ う に動作 し
ますが、 サーバでのブ ロ ッ ク を減 ら す こ と がで き る ロ ッ ク を行い ませ
ん。 ス ナ ッ プシ ョ ッ ト 分離の SQLCA.Lock 値は、 SS です。 DB 接続プ
ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス の [ ト ラ ンザ ク シ ョ ン] タ ブ ページに
あ る [分離レベル] 項目で こ の値を設定す る こ と がで き ます。
SQL Server 2008 の機能
InfoMaker は、新 し いデー タ ベース パ ラ メ ー タ お よ び新 し い SQL Server
デー タ 型のサポー ト を含めて、 SQL Server 2008 デー タ ベース と の接続
を サポー ト し ま す。 InfoMaker か ら SQL Server 2008 に接続す る には、
SNC 10.0 ド ラ イ バを イ ン ス ト ールす る 必要があ り ます。
新 し いデー タ ベース パラ メ ー タ
Provider パラ メ ー タ
SQL Native Client (SNC) イ ン タ フ ェ ース の Provider DBParm パ ラ メ ー
タ を使用 し て、 接続す る SQL Server のバージ ョ ン を選択で き ます。 ス
ク リ プ ト 内で こ のパ ラ メ ー タ を SQLNCLI (SQL Server 2005 に接続す
る SNC 9.0 ド ラ イ バの場合) ま たは SQLNCLI10 (SQL Server 2008 に接
続す る SNC 10.0 ド ラ イ バの場合) に設定で き ます。 ま た、 SNC イ ン タ
フ ェース のための DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の[接続]
タ ブで、 こ れ ら のいずれかのプ ロ バ イ ダ を選択す る こ と も で き ます。
プ ロ バ イ ダ の設定や選択 を 行わ な い場合は、 デ フ ォ ル ト の SQLNCLI
(SQL Server 2005 用の SNC 9.0) が選択 さ れます。 こ の場合、 変更を加
え る こ と な く 、 既存の SNC イ ン タ フ ェース のユーザが InfoMaker 11.5
に移行で き ます。 InfoMaker が SQLNCLI プ ロ バ イ ダに接続で き なか っ
た場合は、 SQLNCLI10 プ ロ バ イ ダ と の接続を試みます。 ただ し 、 プ ロ
バ イ ダ を明示的に設定 し た場合に接続が失敗す る と 、 InfoMaker にエ
ラ ー メ ッ セージが表示 さ れます。
デー タ ベース と の接続
107
SQL Server 2008 の機能
Failover パラ メ ー タ
FailoverPartner DBParm パ ラ メ ー タ を 使用 し て ミ ラ ー サーバの名前 を
指定 し 、 フ ェ イ ルオーバ イ ベン ト が発生 し た場合にデー タ ベース のア
ベ イ ラ ビ リ テ ィ を維持で き ます。 SNC イ ン タ フ ェース のための DB プ
ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の [シ ス テ ム] タ ブ で、 ミ ラ ー
サーバの名前を設定す る こ と も で き ます。
フ ェ イ ルオーバが発生す る と 、 InfoMaker と SQL Server の既存の接続
が失われます。 SNC ド ラ イ バが既存の接続を解放 し 、 再度接続を開 こ
う と し ま す。 再接続が成功す る と 、 InfoMaker が フ ェ イ ルオーバ イ ベ
ン ト を起動 し ます。
InfoMaker が フ ェ イ ルオーバ イ ベン ト を起動す る には、 以下の条件を
満たす必要があ り ます。
•
接続時に FailoverPartner DBParm を指定 し た
•
SQL Server デー タ ベース の ミ ラ ー リ ン グが設定 さ れてい る
•
InfoMaker が、 既存の接続が失われた と き に正常に再接続で き る
フ ェ イ ルオーバが発生す る と 、 以下の よ う な状態にな り ます。
•
InfoMaker がエ ラ ー コ ー ド (998) を返 し 、 フ ェ イ ルオーバ イ ベン
ト を起動す る
•
既存のカー ソ ルは使用で き ないため、 閉 じ る 必要があ る
•
失敗 し たデー タ ベース の操作を再試行で き る
•
コ ミ ッ ト さ れていない ト ラ ン ザ ク シ ョ ン は失われ る 。 新規 ト ラ ン
ザ ク シ ョ ン を開始す る 必要があ る
SQL Server 2008 の新 し いデー タ 型のサポー ト
日付 と 時刻のデー タ 型
以下の表に、 SQL Server 2008 の新 し い日付 と 時刻のデー タ 型、 お よ び
こ れ ら がマ ッ プ さ れ る PowerScript デー タ 型を示 し ます。
SQL Server のデー タ 型
DATE
TIME
DATETIME2
108
PowerScript のデー タ 型
日付
Time (小数秒精度は 6 桁ま で。ただ し 、SQL Server
のデー タ 型では 7 桁 ま での小数秒精度がサポー
ト さ れる)
DateTime (小数秒精度は 6 桁ま で。 ただ し 、 SQL
Server のデー タ 型では 7 桁ま での小数秒精度がサ
ポー ト さ れ る )
InfoMaker
第8章
Microsoft SQL Server の使い方
SQL Server 2008 の DATETIMEOFFSET デー タ 型は InfoMaker 11.5 では
サポー ト さ れ ません。
精度の設定 SQL Server 2008 デー タ ベース のテーブル カ ラ ム にマ ッ プ
す る 際に、 InfoMaker は レ ポー ト ペ イ ン タ の カ ラ ム の仕様 ビ ュ ーに
[Dec] と い う カ ラ ム を追加 し 、 デー タ ベース ペ イ ン タ のカ ラ ム (オブ
ジ ェ ク ト の詳細) ビ ュ ーに [小数秒精度] と い う テ キ ス ト ボ ッ ク ス を
追 加 し ま す。 こ れ ら の フ ィ ー ル ド を 使 用 し て、 TIME
および
DATETIME2 カ ラ ム の精度を指定で き ます。
精度の設定はテーブル作成以外には使用で き ません。 カ ラ ム のデー タ
の検索や更新の際には、 カ ラ ム に対 し て高い精度を入力 し た場合で も
6 桁の小数秒精度だけが使用 さ れ ます。
Filestream デー タ 型
FILESTREAM デー タ 型を使用 し て、 大 き なバ イ ナ リ デー タ を NTFS
フ ァ イ ル シ ス テ ム に直接格納で き ます。 Transact-SQL 文で
FILESTREAM デー タ の挿入、 更新、 ク エ リ 、 検索、 お よ びバ ッ ク
ア ッ プ を行 う こ と がで き ます。
SQL Server デー タ ベース エ ン ジ ンに よ り FILESTREAM が
Varbinary(max) デー タ 型 と し て実装 さ れ ます。 InfoMaker SNC イ ン タ
フ ェース に よ り Varbinary(max) デー タ 型が BLOB デー タ 型にマ ッ プ さ
れ、 それぞれ SelectBlob ま たは UpdateBlob SQL 文を使用 し て
Filestream デー タ が検索ま たは更新 さ れ ます。 デー タ を フ ァ イ ル シ ス
テ ムに格納す る よ う にカ ラ ム を設定す る には、 Varbinary(max) カ ラ ム
定義に FILESTREAM 属性を含め る 必要があ り ます。 た と えば、 以下
の よ う に指定 し ます。
CREATE TABLE FSTest (
GuidCol1 uniqueidentifier ROWGUIDCOL NOT NULL
UNIQUE DEFAULT NEWID(),
IntCol2 int,
varbinaryCol3 varbinary(max) FILESTREAM);
FILESTREAM デー タ には PowerScript のフ ァ イル ア ク セス関数を使用 し な
い
InfoMaker アプ リ ケーシ ョ ン内で直接 Win32 API 関数を宣言 し て使用
す る こ と に よ り 、 FILESTREAM デー タ にア ク セ ス で き ます。 ただ し 、
InfoMaker の既存の フ ァ イ ル ア ク セ ス関数を使用 し て FILESTREAM
フ ァ イ ルにア ク セ スす る こ と はで き ません。 Win32 API を使用 し て
FILESTREAM デー タ にア ク セ スす る ための詳細は、 MSDN SQL Server
Developer Center Web のサイ ト http://msdn.microsoft.com/enus/library/bb933877(SQL.100).aspx を参照 し て く だ さ い。
デー タ ベース と の接続
109
SQL Server 2008 の機能
InfoMaker における
CLR デー タ 型の使用
.NET 共通言語 ラ ン タ イ ム (CLR: Common Language Runtime) デー タ
型のバ イ ナ リ 値は、 SQL Server デー タ ベース か ら Blob と し て検索す
る こ と が可能で、 こ れを InfoMaker アプ リ ケーシ ョ ン内で使用 し て、
デー タ ベース のほかのカ ラ ム を更新で き ます。 こ の戻 り 値が
InfoMaker デー タ 型 と 互換性を持つ場合は、 CLR デー タ 型の メ ソ ッ ド
を PowerScript、 動的 SQL、 埋め込み SQL ま たは レ ポー ト オブジ ェ ク
ト 内で使用で き ます。 こ れは、 SQL ス ク リ プ ト が SQL Server 側で実行
さ れ る ためです。
CLR デー タ 型を PowerScript の文字列にマ ッ プす る こ と も で き ますが、
検索 さ れ る デー タ はバ イ ナ リ デー タ を 16 進法文字列で表現 し た も の
です。
ToString メ ソ ッ ド を使用 し て、 HierarchyID デー タ 型、 Spatial デー タ 型、
ユーザ定義のデー タ 型な ど CLR デー タ 型 と し て実装 さ れたすべて の
デー タ 型を扱 う こ と がで き ます。
HierarchyID デー タ 型
HierarchyID は可変長のシ ス テ ム デー タ 型で、 組織構造な ど 階層型 ツ
リ ーの ノ ー ド を表す値を格納で き ます。 こ のデー タ 型の値はツ リ ー階
層内の位置を表 し ます。
ISQL の使い方 ISQL ペ イ ン タ では、 CREATE TABLE、 SELECT、
UPDATE、 INSERT、 お よ び DELETE 文で HierarchyID カ ラ ム を使用で
き ます。 た と えば、 以下の よ う に指定 し ます。
CREATE TABLE Emp (
EmpId int NOT NULL,
EmpName varchar(20) NOT NULL,
EmpNode hierarchyid NULL);
HierarchyID デー タ を挿入す る には、HierarchyID を正規文字列で表現す
る か、以下の よ う に HierarchyID デー タ 型 と 関連付け ら れた メ ソ ッ ド を
使用で き ます。
INSERT into Emp VALUES (1, 'Scott',
hierarchyid::GetRoot());
INSERT into Emp VALUES (2, 'Tom' , '/1/');
DECLARE @Manager hierarchyid
SELECT @Manager = hierarchyid::GetRoot() FROM Emp
INSERT into Emp VALUES (2, 'Tom',
@Manager.GetDescendant(NULL,NULL));
DECLARE @Employee hierarchyid
SELECT @Employee = CAST('/1/2/3/4/' AS hierarchyid)
INSERT into Emp VALUES (2, 'Jim' , @Employee);
110
InfoMaker
第8章
Microsoft SQL Server の使い方
HierarchyID カ ラ ムはバ イ ナ リ デー タ を含むため、カ ラ ム を直接選択す
る こ と はで き ません。 ま た、 ISQL ペ イ ン タ の結果ビ ュ ーにはバ イ ナ リ
カ ラ ム は表示で き ま せん。 ただ し 、 HierarchyID の ToString メ ソ ッ ド を
使用 し て、 HierarchyID デー タ を文字列値 と し て検索で き ます。 た と え
ば、 以下の よ う に指定 し ます。
Select EmpId, EmpName, EmpNode.ToString() from Emp;
HierarchyID カ ラ ムに対 し て、GetAncestor、GetDescendant、GetLevel、GetRoot、
IsDescendant、 Parse、 お よ び Reparent メ ソ ッ ド を使用 し てデー タ を検索す
る こ と も で き ます。こ れ ら のいずれかの メ ソ ッ ド が HierarchyID ノ ー ド
を返 し た場合は、 ToString を使用 し てデー タ を文字列に変換 し ます。 た
と えば、 以下の よ う に指定 し ます。
Select EmpId, EmpName, EmpNode.GetLevel() from Emp;
Select EmpId, EmpName,
EmpNode.GetAncestor(1).ToString() from Emp;
以下の よ う に、 文字列値ま たは HierarchyID 変数を使用 し て
HierarchyID カ ラ ム を更新で き ます。
Update Emp Set EmpNode = '/1/2/' where EmpId=4;
Delete from Emp where EmpNode = '/1/2/';
PowerScript の使い方 SELECT、 INSERT、 UPDATE、 お よ び DELETE
操作 で は、 埋 め 込み SQL 文 で HierarchyID カ ラ ム を 使用 で き ま す。
HierarchyID デー タ は、 SelectBlob 文を使用 し て String ま たはバ イ ナ リ
(Blob) デー タ 型 と し て検索で き ます。
String デー タ 型で HierarchyID デー タ を検索す る 場合は、ToString メ ソ ッ
ド を使用 し ます。 それ以外の場合、 HierarchyID のバ イ ナ リ 値が 16 進
法で表現 さ れます。
以下の例では、 埋め込み SQL で HierarchyID メ ソ ッ ド を使用 し てい ま
す。
long id
String hid,name
Select EmpId, EmpName, EmpNode.ToString()
into :id, :name, :hid
from Emp where EmpId=3;
Select EmpId, EmpName, EmpNode.GetLevel()
into :id, :name, :hid
from Emp where EmpId=3;
Blob b
Selectblob EmpNode into :b from Emp where EmpId =2;
デー タ ベース と の接続
111
SQL Server 2008 の機能
デー タ ウ ィ ン ド ウの使い方 Report では HierarchyID デー タ 型は直接はサ
ポー ト さ れません。 し か し 、 デー タ ソ ース の SQL で ToString メ ソ ッ ド
ま たは関連す る HierarchyID メ ソ ッ ド を使用 し て、 HierarchyID を文字
列に変換で き ます。 た と えば、 以下の よ う に指定 し ます。
SELECT EmpId, EmpName, EmpNode.ToString() FROM Emp;
SELECT EmpId, EmpName, EmpNode.GetLevel() FROM Emp;
Spatial デー タ 型
Microsoft SQL Server 2008 では、 geometry デー タ 型 と geography デー タ
型の 2 つの spatial デー タ 型がサポー ト さ れ ます。 SQL Server では、 こ
れ ら のデー タ 型が .NET 共通言語 ラ ン タ イ ム (CLR: Common Language
Runtime) デー タ 型 と し て実装 さ れます。
InfoMaker SNC イ ン タ フ ェース では CLR デー タ 型を扱え ませんが、
spatial デー タ 型を (ToString 関数を使用 し て) 文字列に変換 し 、
PowerScript、 ISQL ペ イ ン タ 、 埋め込み SQL、 お よ びレ ポー ト 内で使
用で き ます。 こ れは HierarchyID デー タ 型を使用す る 場合 と 似てい ま
す。 SelectBlob SQL 文を使用 し て、 こ れ ら のデー タ 型のバ イ ナ リ 値を
検索す る こ と も で き ます。
geography お よ び geometry デー タ 型は 11 種類のデー タ オブジ ェ ク ト
( イ ン ス タ ン ス の種類) を サポー ト し ますが、 イ ン ス タ ン ス化で き る の
はその う ち 6 つだけで、 Points、 LineStrings、 Polygons、 お よ び イ ン ス
タ ン ス 化 で き る GeometryCollection の オ ブ ジ ェ ク ト (MultiPoints、
MultiLineStrings、 MultiPolygons) です。 STAsText、 STArea、 STGeometryType
な ど の関連 し た メ ソ ッ ド を呼び出 し て、 こ れ ら のオブジ ェ ク ト を作成
し てデー タ ベース で扱 う こ と がで き ます。 た と えば、 以下の よ う に指
定 し ます。
CREATE TABLE SpatialTable (id int IDENTITY (1,1),
GeomCol geometry);
INSERT INTO SpatialTable (GeomCol) VALUES (
geometry::STGeomFromText(
'LINESTRING (100 100,20 180,180 180)',0));
select id, GeomCol.ToString() from SpatialTable;
select id, GeomCol.STAsText(),
GeomCol.STGeometryType(),
GeomCol.STArea() from SpatialTable;
ユーザ定義のデー タ 型
112
ユーザ定義のデー タ 型 (UDT: User-Defined Type) は CLR デー タ 型 と
し て SQL Server に 実装 さ れ、 .NET と 統合 さ れ ま す。 Microsoft SQL
Server 2008 では UDT の 8KB の制限がな く な っ たため、 UDT デー タ の
サ イ ズ を大幅に拡張す る こ と が可能です。
InfoMaker
第8章
Microsoft SQL Server の使い方
InfoMaker SNC イ ン タ フ ェ ース では UDT デー タ 型は直接サポー ト さ れ
ませんが、 ToString メ ソ ッ ド を使用 し て、 HierarchyId や spatial デー タ 型
な ど の CLR デー タ 型 と 同様に、 UDT のデー タ を検索で き ま す。 ただ
し 、 PowerScript で UDT デー タ 型を String デー タ 型にマ ッ プ し た場合
は、 UDT バ イ ナ リ 値が 16 進法文字列 と し て検索 さ れ ます。 UDT か ら
バ イ ナ リ 形式 (blob) でデー タ を検索 ま たは更新す る には、 それぞれ
SelectBlob ま たは UpdateBlob SQL 文を使用 し ます。
InfoMaker アプ リ ケーシ ョ ン では、 互換性のあ る デー タ (String、 Long、
Decimal な ど) を返す UDT ま たは CLR デー タ 型に関連付け ら れた任意
の メ ソ ッ ド を使用で き ます。
T-SQL の拡張機能
MERGE 文
MERGE Transact-SQL 文は、 タ ーゲ ッ ト テーブル ま たは ソ ース テーブ
ル と の結合結果に基づ く ビ ュ ーに対 し て、 INSERT、 UPDATE、 ま たは
DELETE 操作を実行 し ま す。 MERGE 文は ISQL ペ イ ン タ と 動的 SQL
を使用す る PowerScript で使用で き ます。 た と えば、 以下の よ う に指定
し ます。
String mySQL
mySQL = "MERGE INTO a USING b ON a.keycol = b.keycol " &
+ "WHEN MATCHED THEN "&
+ "UPDATE SET col1 = b.col1,col2 = b.col2 " &
+ "WHEN NOT MATCHED THEN " &
+ "INSERT (keycol, col1, col2, col3)" &
+ "VALUES (b.keycol, b.col1, b.col2, b.col3) " &
+ "WHEN SOURCE NOT MATCHED THEN " &
+ "DELETE;"
EXECUTE IMMEDIATE :Mysql;
ISQL での MERGE 文の使用
MERGE 文はセ ミ コ ロ ン で終了す る 必要があ り ます。 ISQL ペ イ ン タ の
デフ ォ ル ト では、 セ ミ コ ロ ン が SQL 終了文字 と し て使用 さ れ る ため、
ISQL で MERGE 文を使用す る には、 終了文字を コ ロ ン (:) 、 ス ラ ッ
シ ュ (/)、 ま たはそのほかの特殊文字に変更す る 必要があ り ます。
GROUPING SETS
デー タ ベース と の接続
GROUPING SETS は GROUP BY 句の拡張機能で、同 じ ク エ リ 内で複数
のグループ化を定義で き ます。 GROUPING SETS では単一の結果セ ッ
ト が生成 さ れ る ため、 集計の ク エ リ と レ ポー ト を容易に高速に実行で
き ます。 こ れは異な る 方法でグループ化 さ れた行の UNION ALL 操作
に相当 し ます。
113
SQL Server 2008 の機能
GROUPING SETS、 ROLLUP、 お よ び CUBE 演算子が GROUP BY 句に
追加 さ れ ま し た。 新 し い関数 GROUPING_ID は既存の GROUPING 関
数 よ り 高度 に グ ル ー プ 化 さ れ た 情報 を 返 し ま す (WITH ROLLUP、
WITH CUBE、 お よ び ALL 構文は ISO 準拠で な い た め廃止 さ れ ま し
た)。
以下の例では、 GROUPING SETS 演算子 と GROUPING_ID 関数が使用
さ れてい ます。
SELECT EmpId, Month, Yr, SUM(Sales) AS Sales
FROM Sales
GROUP BY GROUPING SETS((EmpId, ROLLUP(Yr, Month)));
SELECT COL1, COL2,
SUM(COL3) AS TOTAL_VAL,
GROUPING(COL1) AS C1,
GROUPING(COL2) AS C2,
GROUPING_ID(COL1, COL2) AS GRP_ID_VALUE
FROM TEST_TBL GROUP BY ROLLUP (COL1, COL2);
GROUPING SETS 演算子は ISQL ペ イ ン タ 、PowerScript (埋め込み SQL
と 動的 SQL)、 お よ びレ ポー ト (構文表示モー ド ) で使用で き ます。
行コ ンス ト ラ ク タ
Transact-SQL で、1 つの INSERT 文内で複数の値の挿入を実行で き る よ
う にな り ま し た。拡張 さ れた INSERT 文を ISQL ペ イ ン タ と PowerScript
(埋め込み SQL と 動的 SQL) で使用で き ます。 た と えば、 以下の よ う
に指定 し ます。
INSERT INTO Employees VALUES ('tom', 25, 5),
('jerry', 30, 6), ('bok', 25, 3);
1 つ の INSERT 文 で ホ ス ト 変数 を 含む複数 の 値 を 指定す る 場合は、
DisableBind DBParm を 1 に設定す る 必要があ り ます。 上記の例の よ う
に リ テ ラ ル値 を 使用す る と 、 バ イ ン ド 設定 と は関係 な く 、 1 つの
INSERT 文で複数の行を挿入で き ます。
互換性レ ベル
SQL Server 2008 では、 ALTER DATABASE 文でデー タ ベース の互換性
レベル (SQL Server のバージ ョ ン) を設定で き ます。 こ れは
sp_dbcmptlevel プ ロ シージ ャ と 置 き 換え ら れ ま し た。 こ の構文は ISQL
ペ イ ン タ と PowerScript (動的 SQL) で使用で き ます。 た と えば、 以
下の よ う に指定 し ます。
ALTER DATABASE <database_name>
SET COMPATIBILITY_LEVEL = {80 | 90 | 100}
80 = SQL Server 2000
90 = SQL Server 2005
100 = SQL Server 2008
114
InfoMaker
第8章
Microsoft SQL Server の使い方
互換性 レ ベルは、 デー タ ベー ス サーバ全体では な く 指定 し たデー タ
ベース の動作のみに影響 し ます。こ の場合、旧バージ ョ ンの SQL Server
と の下位互換性は部分的な も のです。 デー タ ベー ス の互換性レベルを
一時的な移行手段 と し て利用 し 、 異な る バージ ョ ン のデー タ ベース の
動作の違い を回避す る こ と がで き ます。
テーブル ヒ ン ト
FORCESEEK テーブル ヒ ン ト は、 ク エ リ オプテ ィ マ イ ザのデフ ォ ル ト
の動作を無効に し ます。 こ れは高度なパフ ォ ーマ ン ス チ ュ ーニ ン グ オ
プシ ョ ン を備え、 ク エ リ に よ り 参照す る テーブル ま たはビ ュ ーのデー
タ の唯一の ア ク セ ス パ ス と し て イ ンデ ッ ク ス シー ク 操作を使用す る
よ う に、 ク エ リ オプテ ィ マ イ ザに指示 し ます。 FORCESEEK テーブル
ヒ ン ト は ISQL ペ イ ン タ 、 PowerScript (埋め込み SQL と 動的 SQL)、 お
よ びレ ポー ト (構文表示モー ド ) で使用で き ます。
た と えば、 以下の よ う に指定 し ます。
Select ProductID, OrderQty from SalesOrderDetail
with (FORCESEEK);
未サポー ト の SQL Server 2008 の機能
InfoMaker SNC イ ン タ フ ェース は、 SQL Server 2008 で導入 さ れたユー
ザ定義のテーブルの種類 (テーブル構造の定義を表すユーザー定義の
種類) をサポー ト し ません。
SNC イ ン タ フ ェ ース使用時の注意事項
SQL バ ッ チ文
SNC イ ン タ フ ェ ー ス は、 SQL バ ッ チ文 を サ ポー ト し ま す。 し か し 、
BEGIN...END ブ ロ ッ ク で囲んだ り 、 キー ワ ー ド DECLARE で開始 し た り
す る 必要があ り ます。
•
BEGIN...END ブ ロ ッ ク で囲む場合 :
BEGIN
INSERT
INSERT
SELECT
SELECT
END
•
デー タ ベース と の接続
INTO t_1 values(1, 'sfdfs')
INTO t_2 values(1, 'sfdfs')
* FROM t_1
* FROM t_2
キー ワ ー ド DECLARE で開始す る 場合 :
115
SNC イ ン タ フ ェ ース使用時の注意事項
DECLARE @p1 int, @p2 varchar(50)
SELECT @p1 = 1
EXECUTE sp_4 @p1, @p2 OUTPUT
SELECT @p2 AS 'output'
デー タ ベース ペ イ ン タ の SQL 文のバ ッ チを返す こ と がで き ます。次の
よ う に指定 し ます。
String batchSQL //SQL 文のバ ッ チ を含む
DECLARE my_cursor DYNAMIC CURSOR FOR SQLSA ;
PREPARE SQLSA FROM :batchSQL ;
OPEN DYNAMIC my_cursor ;
// 最初の結果集合
FETCH my_cursor INTO . . .
//2 番目の結果集合
FETCH my_cursor INTO . .
. . .
CLOSE my_cursor ;
接続プー リ ング
SNC イ ン タ フ ェ ー ス は、 OLE DB プール を 使用 し て自動的に接続 を
プール し ます。 OLE DB プールを無効にす る には、 DB プ ロ フ ァ イ ル設
定 ダ イ ア ロ グ ボ ッ ク ス の [接続] タ ブ ページ の [拡張プ ロ パ テ ィ ]
ボ ッ ク ス に次の よ う に入力 し ます。
OLE DB Services=-4
デー タ ベース ペ イ ン
タ の ト リ ガ と シ ノ ニム
116
デー タ ベース ペ イ ン タ の SNC プ ロ フ ァ イ ル用のオブジ ェ ク ト ビ ュ ー
では、ト リ ガはテーブル フ ォ ルダにテーブルについて表示 し 、Microsoft
SQL Server 2005 シ ノ ニ ムはテーブルお よ びビ ュ ーを表示 し ます。
InfoMaker
第 9 章
Oracle の使い方
こ の章について
こ の節では、 InfoMaker において ネ イ テ ィ ブ Oracle デー タ ベー ス
イ ン タ フ ェース を使用す る 方法について解説 し ます。
内容
項目
サポー ト し てい る Oracle のバージ ョ ン
サポー ト し てい る Oracle デー タ 型
Oracle の基本 ソ フ ト ウ ェ ア コ ン ポーネ ン ト
Oracle デー タ ベース を使用す る ための準備
Oracle デー タ ベース イ ン タ フ ェース の定義
デー タ ソ ース と し ての Oracle ス ト ア ド プ ロ シージ ャ の使い方
Oracle ユーザ定義デー タ 型の使い方
ORA ド ラ イ バに よ る Oracle 11g の機能のサポー ト
ページ
117
118
121
122
127
128
133
135
サポー ト し ている Oracle のバージ ョ ン
InfoMaker では、3 種類の Oracle デー タ ベース イ ン タ フ ェース が提
供 さ れてい ます。 こ れ ら の イ ン タ フ ェース は、Oracle の各バージ ョ
ン に対応 し た DLL を使用 し て Oracle デー タ ベー ス に ア ク セ ス し
ます。
表 9-1: サポー ト し ている ネ イ テ ィ ブ Oracle デー タ ベース イ ン タ
フ ェ ース
DLL
Oracle イ ン タ フ ェ ース
O90 Oracle9i
PBO90115DLL
O10 Oracle 10g
PBO10115.DLL
ORA Oracle 11g
PBORA115.DLL
O84 Oracle8i イ ン タ フ ェース は InfoMaker 11.5 以降ではサポー ト さ
れません。
デー タ ベース と の接続
117
サポー ト し ている Oracle デー タ 型
詳細について
サポー ト し てい る Oracle のバージ ョ ン についての最新情報は、 Sybase
サポー ト と ダウン ロー ド のサイ ト http://www.sybase.com/detail?id=1011566 ま
たは InfoMaker の リ リ ース ノ ー ト を参照 し て く だ さ い。
ORA デー タ ベース イ ン タ フ ェ ース では、 Oracle 11g Database Client ま
たは Oracle 11g Instant Client を使用 し て Oracle 11g サーバに接続で き ま
す。 こ の イ ン タ フ ェース では、 InfoMaker String デー タ 型にマ ッ プ さ れ
る XMLType デー タ 型 も 部分的にサポー ト さ れます。 ま た、 セ ッ シ ョ ン
プ ー リ ン グ と 接続 プ ー リ ン グ、 ロ ー ド バ ラ ン シ ン グ、 Oracle Client
キ ャ ッ シ ュ 、 アプ リ ケーシ ョ ン の ド ラ イ バ名の設定、 プ ロ キ シ を介 し
た ア ク セ ス も サポー ト さ れます。Oracle 11g ク ラ イ ア ン ト は Oracle9i ま
たは Oracle 10g サーバに も 接続で き ます。
O10 デー タ ベース イ ン タ フ ェース では、Oracle 10g Database Client ま た
は Oracle 10g Instant Client を使用 し て Oracle 10g サーバに接続で き ま
す。 BINARY_FLOAT デー タ 型 と BINARY_DOUBLE デー タ 型 を サ ポー ト
し 、 CLOB デー タ 型 と NCLOB デー タ 型のサ イ ズ制限 を拡大 し ま し た。
Oracle 10g ク ラ イ ア ン ト は、 Oracle9i サーバ と Oracle 10g サーバへ接続
す る こ と がで き ま すが、 Oracle8i 以前のサーバに接続す る こ と はで き
ません。
サポー ト し ている Oracle デー タ 型
Oracle デー タ ベース イ ン タ フ ェース は、 レ ポー ト において、 表 9-2 に
示す Oracle デー タ 型をサポー ト し てい ます。
118
InfoMaker
第9章
Oracle の使い方
表 9-2: サポー ト し ている Oracle のデー タ 型
LongRaw
Binary_Float (Oracle 10g 以降のみ)
Binary_Double (Oracle 10g 以降のみ)
Bfile
Blob
Char
Clob
Date
Float
Long
NChar
Number
NVarChar2
Raw
TimeStamp
VarChar
VarChar2
XMLType (部分的サポー ト 、 ORA
ド ラ イ バのみ)
ORA ド ラ イ バでは、 Oracle 9i で導入 さ れた XMLType デー タ 型のサポー
ト が追加 さ れ ま し た。 ただ し 、 埋め込み SQL 文ま たは レ ポー ト では こ
のデー タ 型は使用で き ません。
Unicode デー タ へのア
ク セス
InfoMaker は、 ANSI/DBCS お よ び Unicode の両方のデー タ ベース の
デー タ に接続、 保存、 検索す る こ と がで き ますが、 Unicode と
ANSI/DBCS 間でデー タ 変換を行い ません。 文字デー タ ま たは コ マ ン
ド テ キ ス ト がデー タ ベース に送信 さ れ る と 、 InfoMaker は Unicode 文
字列を送信 し ます。 デー タ が正 し く Unicode デー タ と し て保存 さ れ る
こ と を ド ラ イ バが保証す る 必要があ り ます。 InfoMaker は文字デー タ
を検索す る と き 、 デー タ は Unicode であ る と 仮定 し ます。
Unicode デー タ ベー ス は、 文字セ ッ ト が Unicode 形式 (UTF-8、 UTF16、 UCS-2、 UCS-4 な ど) に設定 さ れ る デー タ ベース の こ と です。 すべ
てのデー タ は、 Unicode 形式でなければな ら ず、 デー タ ベース に保存 さ
れ る デー タ は、 暗黙的に ま たは明示的に Unicode デー タ に変換 さ れな
ければな り ません。
文字セ ッ ト と し て ANSI (ま たは DBCS) を使用す る デー タ ベー ス は、
Unicode デー タ を格納す る 特殊なデー タ 型を使用す る こ と があ り ます。
こ れ ら のデー タ 型は NCHAR、 お よ び NVARCHAR2 です。 こ のデー タ 型
を持つカ ラ ムは、 Unicode デー タ だけです。 その よ う な カ ラ ムに保存 さ
れ る デー タ は、 明示的に Unicode に変換 さ れ る 必要があ り ます。 こ の
変換はデー タ ベー ス サーバ ま たは ク ラ イ ア ン ト が処理す る 必要が あ
り ます。
デー タ ベース と の接続
119
サポー ト し ている Oracle デー タ 型
Oracle は定数文字列を Char 型 と し て認識 し 、 文字セ ッ ト は
NLS_CHARACTERSET です。 し か し 、 デー タ ベース でのデー タ 型が
NCHAR で、 文字セ ッ ト が NLS_NCHAR_CHARACTERSET の場合、
Oracle は NLS_CHARACTERSET か ら NLS_NCHAR_CHARACTERSET
へ変換 し ます。 こ れに よ り デー タ の喪失が生 じ ます。 例えば、
NLS_CHARACTERSET が WE8ISO8859P1 で、
NLS_NCHAR_CHARACTERSET が UTF8 の場合、 Unicode デー タ が
WE8ISO8859P1 へ割 り 当て ら れ る と 、 Unicode デー タ は破損 し ます。
デフ ォ ル ト では、 Oracle デー タ ベース イ ン タ フ ェース は、 パフ ォ ーマ
ン ス の ダ ウ ン グ レ ー ド を 避 け る た め に、 すべ て の 文字列デー タ を
Oracle CHAR デー タ 型 と し て内部変数にバ イ ン ド し ます。サーバ上で確
実に NCHAR お よ び NVARCHAR2 カ ラ ムが こ の よ う に処理 さ れ る よ う に
す る ために、 NCharBind デー タ ベース パ ラ メ ー タ を 1 に設定 し て、 ド
ラ イ バが文字列デー タ を Oracle NCHAR デー タ 型 と し てバ イ ン ド す る
よ う に し ます。
NCHAR デ ー タ 型 や NVARCHAR2 デ ー タ 型 の 入 力 パ ラ メ ー タ を 持 つ
Oracle の ス ト ア ド プ ロ シージ ャ で、 入力デー タ が Unicode 文字列の場
合、 Oracle デ ー タ ベ ー ス に 入 力 デ ー タ を バ イ ン ド さ せ る た め に、
BindSPInput デー タ ベース パ ラ メ ー タ に 1 を設定 し ます。Oracle デー タ
ベース イ ン タ フ ェース は、 そのパ ラ メ ー タ を設定す る プ ロ シージ ャ を
記述で き ます。 そのため、 NCharBind デー タ ベース パ ラ メ ー タ を設定
す る 必要があ り ません。
レ ポー ト が NCHAR や NVARCHAR2 カ ラ ム にア ク セ ス し 、 正 し く デー タ
を検索す る ためには、 DisableBind と StaticBind の両方に 0 を設定 し ま
す。 StaticBind に 0 を設定す る こ と で、 InfoMaker は検索す る 前に正 し
いデー タ 型を取得 し ます。
TimeStamp デー タ 型
Oracle9i 以降の TimeStamp デー タ 型は、 Date デー タ 型を拡張 し た も ので
す。 以下の よ う に Date 値の年、 月、 日に加え て、 時間、 分、 秒を格納
し ます。
Timestamp[fractional_seconds_precision]
fractional_seconds_precision 値はオプシ ョ ン で、 秒を示す小数値を指定
し ます。 InfoMaker での使用で有効な値の範囲は、 0-6 です。
120
InfoMaker
第9章
Oracle の使い方
Oracle の基本ソ フ ト ウ ェ ア コ ンポーネ ン ト
InfoMaker か ら Oracle デー タ ベース にア ク セ スす る ためには、図 9-1 に
示す ソ フ ト ウ ェ ア コ ン ポーネ ン ト を イ ン ス ト ールす る 必要が あ り ま
す。
デー タ ベース と の接続
121
Oracle デー タ ベース を使用する ための準備
図 9-1: Oracle 接続の コ ンポーネ ン ト
Oracle デー タ ベース を使用する ための準備
デー タ ベース イ ン タ フ ェ ース を定義 し 、 InfoMaker か ら Oracle デー タ
ベー ス に接続す る 前に、 以下の手順に従っ て使用す る デー タ ベー ス を
準備 し ます。
1
122
接続に必要なデー タ ベース サーバ、 ネ ッ ト ワー ク 、 ク ラ イ ア ン ト
ソ フ ト ウ ェ ア を イ ン ス ト ール し 、 設定 し ます。
InfoMaker
第9章
Oracle の使い方
2
ア ク セ スす る Oracle のバージ ョ ンに対応す る ネ イ テ ィ ブ Oracle
デー タ ベース イ ン タ フ ェ ース を イ ン ス ト ール し ます。
3
InfoMaker の外部の環境で、 Oracle サーバやデー タ ベース に接続で
き る こ と を確認 し ます。
4
(ORA ド ラ イ バのみ) 接続プー リ ン グ ま たはセ ッ シ ョ ン プー リ ン
グ を使用す る か決定 し ます。
InfoMaker で使用す る Oracle デー タ ベー ス を準備す る には、 以下の基
本的な操作を し ます。
Oracle のデー タ ベー ス サーバ、 ネ ッ ト ワ ー ク 、 ク ラ イ ア ン ト ソ フ ト
ウ ェ ア を イ ン ス ト ール し 、 設定す る 必要があ り ます。
ス テ ッ プ 1 : デー タ
ベース サーバのイ ン
ス ト ール と 設定
v
デー タ ベース サーバ、 ネ ッ ト ワー ク、 ク ラ イ ア ン ト ソ フ ト ウ ェ ア を イ ン ス
ト ール し 、 設定する
1
自分のマシ ン上、 ま たはデー タ ベース プ ロ フ ァ イ ルに指定 さ れて
い る サーバ上に、 Oracle デー タ ベー ス ソ フ ト ウ ェ アが イ ン ス ト ー
ル さ れてい る こ と を確認 し ます。
た と えば、 Oracle O90 イ ン タ フ ェース では、 Oracle9i ま たは Oracle
10g デー タ ベース サーバにア ク セ ス で き ます。
Oracle 社のデー タ ベース サーバ ソ フ ト ウ ェ ア を入手す る 必要があ
り ます。
イ ン ス ト ールの手順については、 Oracle のマ ニ ュ アルを参照 し て
く だ さ い。
2
サポー ト さ れ る ネ ッ ト ワー ク ソ フ ト ウ ェ ア (TCP/IP な ど) がマシ
ン上に イ ン ス ト ール さ れ、 稼動 し てお り 、 自分のサ イ ト のデー タ
ベース サーバに接続で き る よ う に正 し く 設定 さ れてい る こ と を確
認 し ます。
Hosts フ ァ イ ル と Services フ ァ イ ルが自分のマシ ン上にあ り 、 環境
に合わせて正 し く 設定 さ れていなければな り ません。
ネ ッ ト ワー ク ソ フ ト ウ ェ アは、 ネ ッ ト ワー ク ベン ダ ま たはデー タ
ベース ベン ダか ら 入手す る 必要があ り ます。
イ ン ス ト ール と 設定の手順については、 ネ ッ ト ワ ー ク ま たはデー
タ ベース の管理者に問い合わせて く だ さ い。
3
デー タ ベース と の接続
InfoMaker がイ ン ス ト ールさ れている 各ク ラ イ ア ン ト マシン に、
Oracle ク ラ イ ア ン ト ソ フ ト ウ ェ ア を イ ン ス ト ール し ます。
123
Oracle デー タ ベース を使用する ための準備
Oracle 社か ら ク ラ イ ア ン ト ソ フ ト ウ ェ ア を入手す る 必要があ り ま
す。ま た、イ ン ス ト ールす る ク ラ イ ア ン ト ソ フ ト ウ ェ アのバージ ョ
ンが、 以下をすべてサポー ト す る こ と を確認 し ます。
ク ラ イ ア ン ト マシ ン上で稼働 し てい る オペレーテ ィ ン グ シ ス
テム
ア ク セ スす る デー タ ベース のバージ ョ ン
稼働 し てい る InfoMaker のバージ ョ ン
Oracle 10g Instant Client は、標準の Oracle ク ラ イ ア ン ト ソ フ ト ウ ェ
ア を イ ン ス ト ールせずにアプ リ ケーシ ョ ン を実行す る こ と がで き
る フ リ ーの ク ラ イ ア ン ト ソ フ ト ウ ェ アです。 こ れは、 サ イ ズが小
さ く 、 無償で再配布で き ます。
4
自分のサ イ ト か ら Oracle デー タ ベース サーバに接続で き る よ う
に、 Oracle ク ラ イ ア ン ト ソ フ ト ウ ェ アが正 し く 設定 さ れてい る こ
と を確認 し ます。
Oracle 構成フ ァ イ ルの設定については、 Oracle Net のマニ ュ アルを
参照 し て く だ さ い。
5
ス テ ッ プ 2 : デー タ
ベース イ ン タ フ ェ ー
スのイ ン ス ト ール
オペレーテ ィ ン グ シ ス テ ムの必要に応 じ て、 Oracle ク ラ イ ア ン ト
ソ フ ト ウ ェ アのデ ィ レ ク ト リ がシ ス テ ムパ ス に あ る こ と を確認 し
ます。
InfoMaker のセ ッ ト ア ッ プ プ ロ グ ラ ム で、 標準 イ ン ス ト ールを選択す
る か、 カ ス タ ム イ ン ス ト ール を 選択 し た場合は必要な Oracle デー タ
ベース イ ン タ フ ェース を選択 し ます。
使用可能な Oracle デー タ ベー ス イ ン タ フ ェ ー ス の一覧につい て は、
117 ページの 「サポー ト し てい る Oracle のバージ ョ ン」 を参照 し て く
だ さ い。
ス テ ッ プ 3 : 接続の確
認
InfoMaker の外部の環境で、 Oracle デー タ ベー ス サーバに接続 し 、 ア
ク セ ス し たいデー タ ベース に ロ グ イ ン で き る こ と を確認 し ます。
以下の Oracle ツールを実行す る こ と に よ っ て、 接続を確認で き ます。
•
デー タ ベース サーバ と の接続 Oracle TNSPING (ま た は ほ か の ping
ユーテ ィ リ テ ィ ) な ど の ツールは、 自分のマ シ ン か ら デー タ ベー
ス サーバにア ク セ ス で き る か ど う か をチ ェ ッ ク し ます。
•
デー タ ベース と の接続 Oracle SQL*Plus な ど の ツールは、 ア ク セ ス し
たい Oracle デー タ ベース に ロ グ イ ン し 、 デー タ ベー ス操作を実行
で き る か ど う か を チ ェ ッ ク し ま す。 デー タ ベー ス にア ク セ ス す る
と き InfoMaker のデー タ ベー ス プ ロ フ ァ イ ルで使用す る 予定の接
続パ ラ メ ー タ と 、 同 じ 値の接続パ ラ メ ー タ を指定す る こ と をお勧
め し ます。
124
InfoMaker
第9章
ス テ ッ プ 4 : 接続プー
リ ングまたはセ ッ シ ョ
ン プー リ ングの使用
の決定
Oracle の使い方
InfoMaker ア プ リ ケーシ ョ ン のための Oracle Client Interface (OCI) の
プー リ ン グは、 初めて Oracle サーバに接続 し た と き に作成 さ れ ま す。
プ ー リ ン グ は サ ー バ 名 と 文 字 セ ッ ト に よ り 識 別 さ れ、 そ れ ぞ れ、
DBPARM パ ラ メ ー タ の SQLCA.ServerName と NLS_Charset を使用 し て
渡 さ れ ます。2 つの Oracle 接続が同 じ Oracle サーバに接続 し てい る が、
異な る 文字セ ッ ト を使用 し てい る 場合は、 接続が異な る 接続プール ま
たはセ ッ シ ョ ン プールに存在す る 必要があ り ます。 プー リ ン グ関連の
すべての DBPARM パ ラ メ ー タ は、 InfoMaker か ら 初めてデー タ ベース
に接続す る 前に設定す る 必要があ り ます。
セ ッ シ ョ ン プー リ ン グは、アプ リ ケーシ ョ ン が ス テー ト レ ス セ ッ シ ョ
ン の グループ を作成 し てデー タ ベー ス に保持す る こ と を意味 し ま す。
こ れ ら のセ ッ シ ョ ン は要求 さ れた と き に シ ン ク ラ イ ア ン ト に渡 さ れ
ます。 使用可能なセ ッ シ ョ ン がない場合は、 新規セ ッ シ ョ ン が作成 さ
れ ます。ク ラ イ ア ン ト でセ ッ シ ョ ン が終了す る と 、ク ラ イ ア ン ト がセ ッ
シ ョ ン を プールに解放 し ます。 セ ッ シ ョ ン プー リ ン グの場合、 プール
内のセ ッ シ ョ ン数を大幅に増加す る こ と が可能です。
セ ッ シ ョ ン プー リ ン グでは、 OS のア カ ウ ン ト を使用 し た外部認証は
サポー ト さ れ ません。 既存のセ ッ シ ョ ン プールを使用す る デー タ ベー
ス接続で ロ グ イ ン ID が指定 さ れていない場合は、 セ ッ シ ョ ン プー リ
ン グ作成者の ロ グ イ ン ID が接続に使用 さ れ ます。
下位互換性の確保のための CNNPool パラ メ ー タ
InfoMaker か ら Oracle DBMS のバージ ョ ン 9.x お よ び 10.x に接続す る
ために使用す る O90 お よ び O10 デー タ ベース ド ラ イ バでは、DBPARM
パ ラ メ ー タ CNNPool に よ る 接続プー リ ン グがサポー ト さ れ ます。下位
互換性を確保す る ために、 Oracle 11g で使用す る ORA ド ラ イ バで も こ
のパ ラ メ ー タ が サ ポー ト さ れ ま す。 た だ し 、 こ の ド ラ イ バに対 し て
Pooling パ ラ メ ー タ を使用 し た場合は、CNNPool パ ラ メ ー タ は無視 さ れ
ます。
プー リ ングの種類の決定
表 9-3 は、それぞれのプー リ ン グ を選択す る 状
況を示 し てい ます。
表 9-3: プー リ ングの種類 と 状況
種類
セ ッ シ ョ ン プー リ
ング
デー タ ベース と の接続
デー タ ベース セ ッ シ ョ ンの状況
ス テー ト レ ス (中間層ス レ ッ ド で再利用可能) お よ び
バ ッ ク エ ン ド サーバ プ ロ セ ス の 数が原因 で デー タ
ベース ス ケー リ ン グの問題が発生する 可能性があ る
125
Oracle デー タ ベース を使用する ための準備
種類
接続プー リ ン グ
プー リ ン グ な し
デー タ ベース セ ッ シ ョ ンの状況
ス テー ト フル (中間層ス レ ッ ド で再利用不可) お よ び
バ ッ ク エ ン ド サーバ プ ロ セ ス の 数が原因 で デー タ
ベー ス ス ケー リ ン グ の問題が発生す る 可能性があ る 。
接続プー リ ン グ を使用すれば、 物理接続の数 と バ ッ ク
エ ン ド サーバ プ ロ セ ス の数が減少す る 。 こ れに よ り 、
同 じ バ ッ ク エン ド サーバ構成で よ り 多 く のデー タ ベー
ス セ ッ シ ョ ンが利用可能にな る
ス テー ト フル (中間層ス レ ッ ド で使用不可)お よ びバ ッ
ク エ ン ド サーバ プ ロ セ ス の数が少な く デー タ ベー ス
ス ケー リ ン グの問題は発生 し ない
EAServer コ ン ポーネ ン ト と MTS コ ン ポーネ ン ト は、
Oracle デー タ ベース の場合、 いずれの種類のプー リ ン
グ も サポー ト し ない
プー リ ング パ ラ メ ー タ の設定 Oracle 11g 接続のための DB プ ロ フ ァ イ ル
ダ イ ア ロ グボ ッ ク ス には [プー リ ン グ] タ ブがあ り 、 こ こ で 表 9-4 に
示すプー リ ン グ パ ラ メ ー タ を選択で き ます。
表 9-4: ORA ド ラ イバのプー リ ング パラ メ ー タ
プー リ ング パ ラ メ ー タ
[プー リ ン グ タ イ プ]
[セ ッ シ ョ ンプー リ ン
グに対 し て ラ ン タ イ ム
接続 ロ ー ド バ ラ ン シ ン
グ を行 う ]
[Homogeneous セ ッ
シ ョ ン プー リ ン グ]
[最小セ ッ シ ョ ン数]
[最大セ ッ シ ョ ン数]
126
説明
[Session Pooling]、[Connection Pooling]、 ま たは [な
し ] (デフ ォ ル ト ) を選択。 Pooling DBPARM を設
定す る
デ フ ォ ル ト で は こ の チ ェ ッ ク ボ ッ ク ス が オ ン。
[プー リ ン グ タ イ プ] で [Connection Pooling] ま た
は [な し ] を 選 択 し た 場 合 は 無 視 さ れ る 。
RTConnBalancing DBPARM を設定す る
デフ ォ ル ト ではオ フ。 Session Pooling の場合のみ有
効。 こ のチ ェ ッ ク ボ ッ ク ス を オ ン にす る と 、 セ ッ
シ ョ ン プールを作成 し た と き に有効だ っ たユーザ
名 と パ ス ワ ー ド を 使用 し て プ ール内 のすべ て の
セ ッ シ ョ ン が認証 さ れ る 。 後続の接続 リ ク エ ス ト
の ユ ー ザ 名 と パ ス ワ ー ド は 無 視 さ れ る。
Homogeneous セ ッ シ ョ ン モー ド ではプ ロ キシ セ ッ
シ ョ ン は 作 成 で き な い。 SessionHomogeneous
DBPARM を設定す る
デー タ ベー ス 接続 セ ッ シ ョ ン の最小数 を 示す整
数。 デフ ォ ル ト 値は 1。 CSMin DBPARM を設定す
る 。SessionHomogeneous DBPARM が false の場合は
こ の値は無視 さ れ る
デー タ ベー ス 接続 セ ッ シ ョ ン の最大数 を 示す整
数。 デフ ォ ル ト 値は 100。 CSMax DBPARM を設定
する
InfoMaker
第9章
プー リ ン グ パ ラ メ ー タ
[イ ン ク リ メ ン ト ]
[ユーザ名]
[パ ス ワー ド ]
Oracle の使い方
説明
セ ッ シ ョ ン あ た り のデー タ ベー ス 接続の増分を示
す整数。 デフ ォ ル ト は 1。 CSIncr DBPARM を設定
す る 。SessionHomogeneous DBPARM が false の場合
は こ の値は無視 さ れ る
プールが ま だ作成 さ れていない時点で、 接続プー
ル ま たはセ ッ シ ョ ン プールを作成す る ために使用
し た ユ ー ザ 名。 デ ー タ ベ ー ス 接 続 の 前 に、
PoolCreator DBParm を ユーザ名 を 示す文字列に設
定す る こ と 。PoolCreator DBParm の値を指定 し ない
場合は、 ト ラ ンザ ク シ ョ ン オブジ ェ ク ト の LogID
お よ び LogPass プ ロ パテ ィ を使用 し て プールが作
成される
プールが ま だ作成 さ れていない時点で、 接続プー
ル ま たはセ ッ シ ョ ン プールを作成す る ために使用
し たパ ス ワー ド 。 PoolPwd DBParm を ユーザのパ ス
ワー ド を示す文字列に設定す る こ と
Oracle デー タ ベース イ ン タ フ ェ ースの定義
Oracle デー タ ベース イ ン タ フ ェース を介 し た接続を定義す る には、 少
な く と も 、 Oracle イ ン タ フ ェ ース用に DB プ ロ フ ァ イ ル設定 ダ イ ア ロ
グ ボ ッ ク ス の基本接続パ ラ メ ー タ 用の値を指定 し て、 デー タ ベース プ
ロ フ ァ イ ルを作成 し な ければな り ません。 次回以降、 こ のデー タ ベー
ス プ ロ フ ァ イ ルを選択す る と 、 開発環境でそのデー タ ベース にいつで
も 接続で き ます。
デー タ ベース プ ロ フ ァ イ ルの定義方法については、 6 ページの 「デー
タ ベース プ ロ フ ァ イ ルの使い方」 を参照 し て く だ さ い。
Oracle サーバの接続記述子の指定
ネ ッ ト ワー ク 上の Oracle デー タ ベース サーバに接続す る には、 DB プ
ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の [接続] タ ブにあ る [サーバ]
ボ ッ ク ス に、 適切な接続記述子を 指定 し ま す。 接続記述子は、 Oracle
がデー タ ベース にア ク セ スす る と き に使用す る 接続パ ラ メ ー タ を指定
し ます。
ご使用の環境に対す る 適切な接続記述子については、 Oracle のマニ ュ
アルを参照す る か、 シ ス テ ム管理者に問い合わせて く だ さ い。
デー タ ベース と の接続
127
デー タ ソ ース と し ての Oracle ス ト ア ド プ ロ シージ ャ の使い方
接続記述子の指定
接続記述子の構文は、使用 し てい る Oracle ク ラ イ ア ン ト ソ フ ト ウ ェ ア
に よ っ て異な り ます。
Net9 以上を使用 し てい る 場合は、 構文は以下の よ う にな り ます。
OracleServiceName
SQL*Net バージ ョ ン 2.x を使用 し てい る 場合は、 構文は以下の よ う に
な り ます。
@ TNS: OracleServiceName
パラ メ ー タ
@
TNS
:
OracleServiceName
説明
ア ッ ト マー ク (@) は必須
Oracle ト ラ ン スペア レ ン ト ネ ッ ト ワー ク サブ ス
ト レ イ ト (TNS) テ ク ノ ロ ジの識別子を指定
コ ロ ン (:) は必須
Oracle 構成 フ ァ イ ルでサーバに割 り 当て ら れて
い る サービ ス名を指定
Net9 の ク ラ イ ア ン ト ソ フ ト ウ ェ ア を使用す る には、 ORA9
サービ ス に接続 し て、接続記述子 ORA9 を Oracle9i 以降の DB プ ロ フ ァ
イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の [接続] タ ブの [サーバ] ボ ッ ク ス に
入力 し ます。
Net9 の例
デー タ ソ ース と し ての Oracle ス ト ア ド プ ロ シージ ャ の使
い方
こ の節では、 Oracle ス ト ア ド プ ロ シージ ャ の使い方について解説 し ま
す。
Oracle ス ト ア ド プ ロ シージ ャ と は?
Oracle は、 ス ト ア ド プ ロ シージ ャ (ま た は関数) を、 SQL やほかの
PL/SQL プ ロ グ ラ ミ ン グ言語ス テー ト メ ン ト を論理的にグループ化 し 、
特定の タ ス ク を実行す る 、 名前付 き の PL/SQL プ ロ グ ラ ム単位 と し て
定義 し てい ます。
128
InfoMaker
第9章
Oracle の使い方
ス ト ア ド プ ロ シージ ャ にはパ ラ メ ー タ を指定す る こ と が可能で、 1 つ
ま たは複数の結果集合 (カー ソ ル変数 と も いい ます) を返 し ます。 ス
ト ア ド プ ロ シージ ャ を自分の ス キーマで作成 し 、 こ れをデー タ デ ィ ク
シ ョ ナ リ に格納す る と 、 複数のユーザが こ の ス ト ア ド プ ロ シージ ャ を
使用で き ます。
Oracle ス ト ア ド プ ロ シージ ャ で可能な作業
Oracle ス ト ア ド プ ロ
シージ ャ の使用方法
InfoMaker ア プ リ ケーシ ョ ン では、 Oracle ス ト ア ド プ ロ シージ ャ を レ
ポー ト 用のデー タ ソ ース と し て使用す る こ と がで き ます。
1 つの結果集合を返すス ト ア ド プ ロ
シージ ャ は レ ポー ト で使用で き ます。 し か し 、 RPCFUNC キー ワ ー ド で
ス ト ア ド プ ロ シージ ャ を 外部関数やサブルーチ ン と し て宣言 し て い
る 場合は除 き ます。
1 つの結果集合を返すプ ロ シージ ャ
Oracle で結果集合を返すス ト ア ド プ ロ シージ ャ の使い方
以下の手順では、 ス ト ア ド プ ロ シージ ャ を InfoMaker のデー タ ベース
ペ イ ン タ の ISQL セ ッ シ ョ ン ビ ュ ーで作成す る こ と を前提 と し てい ま
す。
基本的な操作手順の概
要
v
デー タ ベース ペ イ ン
タ の設定
結果集合を返すス ト ア ド プ ロ シージ ャ を使用する
1
ス ト ア ド プ ロ シージ ャ を作成す る ために、 デー タ ベース ペ イ ン タ
の ISQL セ ッ シ ョ ン ビ ュ ーを使用 し ます。
2
結果集合を IN OUT (REF)パ ラ メ ー タ で返すス ト ア ド プ ロ シージ ャ
を作成 し ます。
3
その ス ト ア ド プ ロ シージ ャ をデー タ ソ ース と し て使用す る レ ポー
ト を作成 し ます。
デー タ ベース ペ イ ン タ の ISQL セ ッ シ ョ ン ビ ュ ーで ス ト ア ド プ ロ シー
ジ ャ を作成す る 場合、 デフ ォ ル ト の SQL 構文の終止符を、 ス ト ア ド プ
ロ シージ ャ 構文で使用す る 予定のない文字に変更 し ます。
デー タ ベー ス ペ イ ン タ のデ フ ォ ル ト の SQL 終止符はセ ミ コ ロ ン (;)
です。 Oracle ス ト ア ド プ ロ シージ ャ 構文でセ ミ コ ロ ン を使用す る こ と
が予定 さ れ る 場合は、 ペ イ ン タ の終止符を セ ミ コ ロ ン以外の文字に変
更 し て重複を避け る 必要が あ り ま す。 こ の場合、 バ ッ ク ク ォ ー ト (`)
文字な ど が適切です。
デー タ ベース と の接続
129
デー タ ソ ース と し ての Oracle ス ト ア ド プ ロ シージ ャ の使い方
v
デー タ ベース ペ イ ン タ のデ フ ォル ト の SQL 終止符を変更する
1
InfoMaker で System ユーザ と し て Oracle デー タ ベース に接続 し ま
す。
詳 し い手順については、 127 ページの 「Oracle デー タ ベー ス イ ン
タ フ ェース の定義」 を参照 し て く だ さ い。
2
デー タ ベース ペ イ ン タ を開 き ます。
3
メ ニ ュ ーバーか ら [デザ イ ン|オプシ ョ ン] を選択 し ます。
DB 環境設定 ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。 必要であれば、
[全般] タ ブ を ク リ ッ ク し て [全般] プ ロ パテ ィ ページ を表示 し ま
す。
4
[SQL 構文の終止符] ボ ッ ク ス に SQL 終止符 と し て使用す る 文字
(バ ッ ク ク ォ ー ト な ど) を入力 し ます。
5
[更新] ま たは [OK] ボ タ ン を ク リ ッ ク し ます。
SQL 終止符の設定が現行の接続に適用 さ れ、 以降の接続に も 変更
し ない限 り 適用 さ れ ます。
デー タ ベース ペ イ ン タ を設定 し た後、 IN OUT (参照) パ ラ メ ー タ で結
果集合を返すス ト ア ド プ ロ シージ ャ を作成で き ます。InfoMaker は、結
果集合を検索 し て、 配置す る ために レ ポー ト を設定 し ます。
ス ト ア ド プ ロ シー
ジ ャの作成
結果集合 を 返す ス ト ア ド プ ロ シージ ャ を 作成す る 方法は何種類か あ
り ます。 以下に、 その 1 つを示 し ます。
1 つの結果集合 と 複数の結果集合を返すス ト ア ド プ ロ シージ ャ が ど こ
で使用で き る かについては、 129 ページの 「Oracle ス ト ア ド プ ロ シー
ジ ャ で可能な作業」 を参照 し て く だ さ い。
v
Oracle で結果集合を返すス ト ア ド プ ロ シージ ャ を作成する
1
Oracle ユーザ ア カ ウ ン ト に必要なデー タ ベース ア ク セ スお よ び
Oracle オブジ ェ ク ト (テーブルやプ ロ シージ ャ な ど) に ア ク セ ス
す る 特権が設定 さ れてい る こ と を確認 し ます。
適切 な ア ク セ ス お よ び特権が な い と 、 Oracle ス ト ア ド プ ロ シ ー
ジ ャ を作成す る こ と がで き ません。
2
使用 し てい る Oracle デー タ ベース に tt と い う 名前の以下のテーブ
ルが存在す る も の と し ます。
a
1
2
130
b
Newman
Everett
c
sysdate
sysdate
InfoMaker
第9章
3
Oracle の使い方
結果集合のデー タ 型 と ス ト ア ド プ ロ シージ ャ が定義 さ れ たパ ッ
ケージ を作成 し ま す。 結果集合のデー タ 型は、 テーブルの定義 と
一致 さ せます。
た と えば、 以下の SQL 文に よ っ て、 rctl と い う 結果集合のデー タ 型
で、 proc1 と い う ス ト ア ド プ ロ シージ ャ が定義 さ れた spm と い う
Oracle パ ッ ケージが作成 さ れ ま す。 tt%ROWTYPE 属性に よ っ て、
テーブル tt 内のすべてのカ ラ ム を持つ よ う に rctl は定義 さ れ ます。
プ ロ シージ ャ proc1 は rc1 と い う カー ソ ル変数をパ ラ メ ー タ に受け
取 り ますが、 こ れは rctl デー タ 型の IN OUT パ ラ メ ー タ です。
CREATE OR REPLACE PACKAGE spm
IS TYPE rctl IS REF CURSOR
RETURN tt%ROWTYPE;
PROCEDURE proc1(rc1 IN OUT rctl);END;`
4
定義 し たパ ッ ケージ と は別に Oracle ス ト ア ド プ ロ シージ ャ を作成
し ます。
以下の例は、 1 つの結果集合を返す spm_proc 1 と い う 名前の ス ト ア
ド プ ロ シージ ャ を作成す る 方法を示 し てい ます。
IN OUT の指定は、 InfoMaker がカー ソ ル変数 (rc1 や rc2) を参照渡
し で Oracle プ ロ シージ ャ に渡 し 、 プ ロ シージ ャ がカー ソ ルを開 く
こ と を意味 し てい ます。 プ ロ シージ ャ 呼び出 し の後、 InfoMaker は
カー ソ ルか ら 結果集合を フ ェ ッ チ し 、 続けて カー ソ ルを閉 じ ます。
レポー ト での spm_proc1 の例 以下の ス テー ト メ ン ト は、1 つの結果
集 合 を 返 す spm_proc1 を 作 成 し ま す。 こ の プ ロ シ ー ジ ャ は、
InfoMaker の レ ポー ト のデー タ ソ ー ス と し て使用す る こ と がで き
ます。
CREATE OR REPLACE PROCEDURE spm_proc1(rc1 IN OUT
spm.rctl)
AS
BEGIN
OPEN rc1 FOR SELECT * FROM tt;
END;`
エラー チ ェ ッ ク
必要であれば、 Oracle シ ス テ ム テーブルの public.user_errors でエ ラ ーが
ないか ど う かチ ェ ッ ク を し ます。
レポー ト の作成
デー タ ベース と の接続
ス ト ア ド プ ロ シージ ャ を作成す る と 、 その ス ト ア ド プ ロ シージ ャ を
デー タ ソ ース と し て使用す る レ ポー ト が定義で き ます。
131
デー タ ソ ース と し ての Oracle ス ト ア ド プ ロ シージ ャ の使い方
1 つの結果集合を返すス ト ア ド プ ロ シージ ャ は、 レ ポー ト で使用で き
ます。
以下の手順では、 Oracle ス ト ア ド プ ロ シージ ャ が 1 つの結果集合だけ
を返す こ と を前提 と し てい ます。
v
Oracle で結果集合を返すス ト ア ド プ ロ シージ ャ を使用 し て レ ポー ト を作成
する
1
新規作成 ダ イ ア ロ グボ ッ ク ス の [デー タ ウ ィ ン ド ウ ] ページで提
示様式を選択 し 、 [OK] を ク リ ッ ク し ます。
2
[ス ト ア ド プ ロ シージ ャ ] ア イ コ ン を選択 し 、 [OK] を ク リ ッ ク し
ます。
ス ト ア ド プ ロ シージ ャ の選択 ウ ィ ザー ド ページが表示 さ れ、デー
タ ベース で使用可能な ス ト ア ド プ ロ シージ ャ が一覧 さ れ ます。
3
デー タ ソ ース と し て使用す る ス ト ア ド プ ロ シージ ャ を選択 し 、
[次へ] ボ タ ン を ク リ ッ ク し ます。
4
レ ポー ト を定義 し て、 ウ ィ ザー ド を終了 し ます。
レ ポー ト を プ レ ビ ュ ーす る と 、 InfoMaker は、 カー ソ ルか ら 結果集
合を フ ェ ッ チ し て、 レ ポー ト に格納 し ま す。 ウ ィ ザー ド のデー タ
ソ ース の選択 ページの [プ レ ビ ュ ーの度に検索] を選択 し た場合、
デー タ ウ ィ ン ド ウ を開いた と き に、 プ レ ビ ュ ー ビ ュ ーに結果集合
が表示 さ れ ます。
ラ ージ オブ ジ ェ ク ト 出力パラ メ ー タ の使用
ラ ージ オブジ ェ ク ト (LOB: large-object) を Oracle ス ト ア ド プ ロ シー
ジ ャ や関数用の出力パ ラ メ ー タ と し て定義 し て、 ラ ージ オブジ ェ ク ト
デー タ を検索で き ます。 各ス ト ア ド プ ロ シージ ャ や関数用に定義で き
る LOB 出力引数の数に制限はあ り ません。
Oracle 10g では、 LOB デー タ 型の最大サ イ ズが増加 し 、 「4 ギガバ イ ト
- 1」 か ら 「(4 ギガバ イ ト - 1) x デー タ ベース のブ ロ ッ ク サ イ ズ」 と 変
更にな り ま し た。 デー タ ベー ス のブ ロ ッ ク サ イ ズが 32K の場合、 最
大サ イ ズは 128 テ ラ バ イ ト にな り ます。
132
InfoMaker
第9章
Oracle の使い方
Oracle ユーザ定義デー タ 型の使い方
InfoMaker は デ ー タ ベ ー ス ペ イ ン タ で ISQL セ ッ シ ョ ン ビ ュ ー の
Oracle ユーザ定義デー タ 型(オブジ ェ ク ト ) のための SQL CREATE TYPE
文 と CREATE TABLE 文を サポー ト し ます。 デー タ ベース ペ イ ン タ お よ
びレ ポー ト ペ イ ン タ で、ユーザ定義デー タ 型の SQL SELECT 文、INSERT
文、 UPDATE 文、 DELETE 文を正確に処理 し ます。
InfoMaker の Oracle ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を 使 う
と 、 以下の処理がで き ます。
可能な作業
Oracle 構文を使用 し て、 ユーザ定義デー タ 型
を作成
Oracle 構文を使用 し て、 ユーザ定義デー タ 型
を参照す る カ ラ ム付 き テーブルを作成
ユーザ定義デー タ 型を参照す る Oracle テーブ
ルのカ ラ ム を検索
ユーザ定義デー タ 型を持つ Oracle テーブル内
のデー タ を処理
ユーザ定義デー タ 型を持つ Oracle テーブル構
文を ロ グ フ ァ イ ルにエ ク ス ポー ト する
メ ソ ッ ド を呼び出す
作業場所
デー タ ベース ペ イ ン タ
デー タ ベース ペ イ ン タ
デー タ ベース ペ イ ン タ
デー タ ベース ペ イ ン タ
レ ポー ト ペ イ ン タ
レ ポー ト
デー タ ベース ペ イ ン タ
レ ポ ー ト ペ イ ン タ (SQL
ツールボ ッ ク ス の [計算] タ
ブ)
以下は、 InfoMaker での Oracle ユーザ定義デー タ 型の作成 と 使用法を
説明す る ための簡単な例です。
例
Oracle ユーザ定義デー タ 型についての詳細は、 Oracle のマニ ュ アルを
参照 し て く だ さ い。
v
Oracle ユーザ定義デー タ 型を作成 し 使用する
1
デー タ ベース ペ イ ン タ の ISQL セ ッ シ ョ ン ビ ュ ーで、
ball_stats_type と player_type の 2 つの Oracle ユーザ定義デー タ 型を
作成 し ます。
以下は、 ball_stats_type を作成す る Oracle 構文です。 ball_stats_type 型
の ball_stats オブジ ェ ク ト は、get_avg と い う 関連付け ら れた メ ソ ッ ド
を持つ こ と に注意 し て く だ さ い。
CREATE OR REPLACE TYPE ball_stats_type AS OBJECT
(bat_avg NUMBER(4,3),rbi NUMBER(3),MEMBER FUNCTION
get_avg RETURN NUMBER,PRAGMA RESTRICT_REFERENCES
デー タ ベース と の接続
133
Oracle ユーザ定義デー タ 型の使い方
(get_avg,WNDS,RNPS,WNPS));
CREATE OR REPLACE TYPE BODY ball_stats_type ASMEMBER
FUNCTION get_avg RETURN NUMBER ISBEGINRETURN
SELF.bat_avg;
END;
END;
以下は、 player_type を作成す る Oracle SQL 構文です。 player_type は、
ユーザ定義デー タ 型 ball_stats_type を参照 し ます。 InfoMaker は、 こ
の よ う にデー タ ベース ペ イ ン タ 、 レ ポー ト ペ イ ン タ 、 テーブル ペ
イ ン タ で、 ネ ス ト を グ ラ フ ィ カルに表現 し ます (手順 3 参照)。
CREATE TYPE player_type AS OBJECT (player_no
NUMBER(2),player_name VARCHAR2(30),ball_stats
ball_stats_type);
2
デー タ ベース ペ イ ン タ では、 こ れ ら のユーザ定義デー タ 型を参照
す る lineup と い う 名前のテーブルを作成 し ます。
以下は、 lineup テーブルを作成 し 、 行を挿入す る Oracle SQL 構文
です。 lineup は、 ユーザ定義デー タ 型 player_type を参照 し ます。
CREATE TABLE lineup (position NUMBER(2) NOT NULL,
player player_type);
INSERT INTO lineup VALUES (1,player_type (15,
'Dustin Pedroia', ball_stats_type (0.317, 50)));
3
デー タ ベース ペ イ ン タ ま たは レ ポー ト ペ イ ン タ に lineup を表示 し
ます。
InfoMaker は、 以下の よ う に構造体 -> メ ンバー表記法を使用 し て
テーブルを表示 し ます。
lineup
======
position
player->player_no
player->player_name
player->ball_stats->bat_avg
player->ball_stats->rbi
4
レ ポー ト の計算カ ラ ム を定義す る 場合は、 以下の 構造体 -> メ ンバー
表 記 法 を 使 用 し て、 オ ブ ジ ェ ク ト カ ラ ム player に 含 ま れ る
ball_stats オブジ ェ ク ト の get_avg メ ソ ッ ド にア ク セ ス し ます。 た と
えば、 レ ポー ト ペ イ ン タ で作業をす る 場合、 SQL ツールボ ッ ク ス
の [計算] タ ブで こ の表記法を使用す る こ と も で き ます。
player->ball_stats->get_avg()
134
InfoMaker
第9章
Oracle の使い方
ORA ド ラ イバによ る Oracle 11g の機能のサポー ト
Oracle 11g のセ ッ シ ョ ン プー リ ン グ と 接続プー リ ン グのサポー ト に加
え て、 ORA ド ラ イ バではほかの 11g の機能 も サポー ト さ れます。
ク ラ イアン ト キャ ッ
シ ュ結果
InfoMaker ORA ド ラ イ バは Oracle Client キ ャ ッ シ ュ を サポー ト し ます
が、こ の機能は Oracle Server と Client の構成に依存 し ます。Oracle Client
キ ャ ッ シ ュ は init.ora ま たは sqlnet.ora フ ァ イ ルで設定で き ます。キ ャ ッ
シ ュ さ れた ク エ リ には /*+ result_cache */ と い う ヒ ン ト が付 き 、 結果が ク
エ リ 結果の キ ャ ッ シ ュ に格納 さ れた こ と を 示 し ま す。 StatementCache
DBPARM パ ラ メ ー タ を 使用 し て、 InfoMaker ア プ リ ケ ー シ ョ ン か ら
OCI 文キ ャ ッ シ ュ を有効にで き ます。
ア プ リ ケーシ ョ ン ド
ラ イバ名
OCI アプ リ ケーシ ョ ン の名前を選択 し て、 診断に役立て る こ と がで き
ます。 AppDriverName DPBARM パ ラ メ ー タ で、 InfoMaker ORA イ ン タ
フ ェース で使用す る ク ラ イ ア ン ト ド ラ イ バ名を設定で き ます。 名前
は最大 8 文字です。 V$SESSION_CONNECT_INFO ま たは
GV$SESSION_CONNECT_INFO 動的パフ ォ ーマ ン ス ビ ュ ーの ク エ リ
で、 ク ラ イ ア ン ト ド ラ イ バ名を表示で き ます。
プ ロキシ を介 し た ク ラ
イ ア ン ト ア ク セス
(Oracle 10.2 の機能)
InfoMaker ORA ド ラ イ バは Oracle 10.2 で導入 さ れたプ ロ キ シ認証機能
をサポー ト し ます。 一般にプ ロ キ シ認証では、 エ ン ド ユーザが中間層
(フ ァ イ ア ウ ォ ールな ど) に対 し て認証 さ れ、 ユーザに代わ っ てプ ロ キ
シ ユーザ と し てデー タ ベース に ロ グ イ ン し ます。 ロ グ イ ン後に、 プ ロ
キ シ ユーザか ら エ ン ド ユーザ に切 り 替え て、 そのユーザに割 り 当て
ら れた権限で操作を実行で き ます。
ConnectAs DBParm パ ラ メ ー タ で こ のプ ロ キ シ接続機能 を 利用で き ま
す。 た と えば、 ユーザの ト ラ ン ザ ク シ ョ ン オブ ジ ェ ク ト の LogID が
Scott で ConnectAs DBParm パ ラ メ ー タ を John に設定 し た場合、 OCI ク
ラ イ ア ン ト はプ ロ キ シ ユーザ (Scott) と し てデー タ ベース に ロ グ イ ン
し 、 その後でエ ン ド ユーザの ID (John) に切 り 替え ます。
接続プー リ ン グ ま たはセ ッ シ ョ ン プー リ ン グ を使用 し てい る 場合、 プ
ロ キ シ ユーザ名は接続 ま た は セ ッ シ ョ ン プー リ ン グ の作成者です
(ユーザ名お よ び PoolPwd DBParm パ ラ メ ー タ で指定す る ) 。 ト ラ ンザ
ク シ ョ ン オ ブ ジ ェ ク ト の LogID は 無 視 さ れ ま す。 プ ー リ ン グ が
HomogeneousSession モ ー ド に 設定 さ れ て い る 場合 は プ ロ キ シ セ ッ
シ ョ ンは作成で き ません。
デー タ ベース と の接続
135
ORA ド ラ イバに よ る Oracle 11g の機能のサポー ト
プー リ ングを使用 し ないプ ロキシ接続の制限事項
プー リ ン グ を使用 し ないプ ロ キ シ接続の場合、 NLS_Charset DBPARM
を "Local" ま たはそのほかの Unicode 以外の文字セ ッ ト に設定す る 必
要があ り ます。 こ の DBPARM をデフ ォ ル ト 値の "Unicode" か ら 変更 し
ない と 接続が失敗 し ま す。 こ れは Oracle Client Interface ではプ ロ キ シ
ク ラ イ ア ン ト 属性 と し て Unicode と い う 名前の文字列を受け入れない
ためです。
ロー ド バラ ン シ ン グ
Oracle Real Application Clusters (RAC) デー タ ベース オプシ ョ ン では、
1 つのデー タ ベース をデー タ ベース サーバの複数 ノ ー ド の複数 イ ン ス
タ ン ス でホ ス ト す る こ と がで き ます。 こ れに よ り 、 デー タ ベー ス のハ
イ アベ イ ラ ビ リ テ ィ と フ ェ イ ルオーバ機能 を 実現で き ま す。 1 つの
ノ ー ド に問題が発生 し て も 別の ノ ー ド が処理を引 き 継 ぐ ため、 アベ イ
ラ ビ リ テ ィ が向上 し ます。 すべての イ ン ス タ ン ス がデー タ ベース 全体
にア ク セ ス で き ます。RAC オプシ ョ ン で使われ る ク ラ ス タ リ ン グ デー
タ ベース の共有デ ィ ス ク を使用す る 方法では、 必要に応 じ て ノ ー ド を
追加ま たは解放で き る ため、 ス ケー ラ ビ リ テ ィ が向上 し ます。
RAC 環境では、 RAC ロ ー ド バ ラ ン シ ン グ ア ド バ イ ス か ら 受け取 る
サービ ス メ ト リ ッ ク を セ ッ シ ョ ン プールで利用 し て、アプ リ ケーシ ョ
ンのセ ッ シ ョ ン リ ク エ ス ト の負荷を分散で き ます。現在のサービ ス パ
フ ォ ーマ ン ス に基づいて、 セ ッ シ ョ ン プールに送信 さ れ る 作業 リ ク エ
ス ト を RAC の イ ン ス タ ン ス間に分散 し ます。
作業 リ ク エ ス ト のバ ラ ン シ ン グは接続時
と 実行時に行われ ます。 接続時の ロ ー ド バ ラ ン シ ン グは、 アプ リ ケー
シ ョ ン に よ り セ ッ シ ョ ン が最初に作成 さ れた と き に実行 さ れ ます。 こ
れに よ り 、プール内のセ ッ シ ョ ンが RAC イ ン ス タ ン ス間に適切に分散
さ れ、 各 イ ン ス タ ン ス のセ ッ シ ョ ン に作業を実行す る 機会が与え ら れ
ます。
接続時のロー ド バラ ン シ ング
1 つの イ ン ス タ ン ス のみでのサービ ス し かサポー ト し ないセ ッ シ ョ ン
プールの場合は、プール内の最初の使用可能なセ ッ シ ョ ン で十分です。
複数の イ ン ス タ ン ス におけ る サー ビ ス を サ ポー ト す る プールの場合
は、 作業 リ ク エ ス ト を イ ン ス タ ン ス 間に分散 し て、 適切なサービ ス を
提供で き る イ ン ス タ ン ス や容量の大 き い イ ン ス タ ン ス に多 く の リ ク エ
ス ト を割 り 当て る 必要があ り ます。
136
InfoMaker
第9章
Oracle の使い方
実行時の接続 ロ ー ド バ ラ ン シ ン グ で
は、 基本的には作業 リ ク エ ス ト がセ ッ シ ョ ン プール内の作業に最 も 適
切なセ ッ シ ョ ン にルーテ ィ ン グ さ れ ます。 Oracle 11.1 以上の ク ラ イ ア
ン ト が 10.2 以上の Oracle サーバに接続 さ れ、OCI セ ッ シ ョ ン プー リ ン
グ を使用 し てい る 場合は、 デフ ォ ル ト で実行時の接続 ロ ー ド バ ラ ン シ
ン グが有効にな り ます。
実行時の接続ロー ド バラ ン シ ング
DBPARM パ ラ メ ー タ の RTConnBalancing が実行時の接続 ロ ー ド バ ラ
ン シ ン グ機能をサポー ト し ます。 こ れは、Pooling パ ラ メ ー タ を Session
Pooling に設定 し てい る 場合にのみ使用可能で、 こ の設定は接続の前に
のみ行 う こ と がで き ます。 デフ ォ ル ト では、 プー リ ン グの種類 と し て
Session Pooling を選択 し た場合は、 RTConnBalancing の値が true にな り
ます。
デー タ ベース と の接続
137
ORA ド ラ イバに よ る Oracle 11g の機能のサポー ト
138
InfoMaker
第
4
部
デー タ ベース接続に関する作
業
第 4 部では、 デー タ ベース接続の確立、 管理、 お よび ト ラ
ブルシ ュ ーテ ィ ン グの方法について説明 し ます。
第 1 0 章
デー タ ベース接続の管理
こ の章について
必要なデー タ ベース ソ フ ト ウ ェ アの イ ン ス ト ールや、 デー タ ベー
ス イ ン タ フ ェ ース の定義がすべて終了す る と 、InfoMaker か ら デー
タ ベー ス に接続で き る よ う にな り ます。 デー タ ベー ス に接続す る
こ と で、 デー タ ベー ス に保存 さ れてい る テーブルやビ ュ ーの操作
がで き ます。
こ の章で は、 InfoMaker におい て デー タ ベー ス に接続す る 方法、
デー タ ベー ス プ ロ フ ァ イ ル を 管理す る 方法、 デー タ ベー ス プ ロ
フ ァ イ ルを共有す る 方法について解説 し ます。
内容
用語
項目
デー タ ベース と の接続について
デー タ ベース と の接続
デー タ ベース プ ロ フ ァ イ ルの管理
デー タ ベース プ ロ フ ァ イ ルの共有
デー タ ベース プ ロ フ ァ イ ルの イ ン ポー ト と エ ク ス ポー ト
InfoMaker 拡張属性シ ス テ ム テーブルについて
ページ
141
144
147
148
153
154
こ の章の中でデー タ ベース と い う 用語は、特に指定のない限 り 、以
下の両方を表 し ます。
•
標準デー タ ベース イ ン タ フ ェ ースや適切な ド ラ イ バでア ク セ
ス す る デー タ ベー ス ま たは DBMS (デー タ ベー ス 管理シ ス テ
ム)
•
適切なネ イ テ ィ ブ デー タ ベース イ ン タ フ ェ ース でア ク セ スす
る デー タ ベース ま たは DBMS
デー タ ベース と の接続について
こ の節では、InfoMaker におけ る デー タ ベース接続の概要について
説明 し ます。 ま た、デー タ ベース と の接続を管理す る ために、デー
タ ベース プ ロ フ ァ イ ルを使用す る 利点について も 説明 し ます。
デー タ ベース と の接続
141
デー タ ベース と の接続について
デー タ ベース と の接続 タ イ ミ ング
開発環境におい て、 [DB へ自動的に接続] シ ス テ ム オ プ シ ョ ン は、
InfoMaker で接続 を必要 と す る ペ イ ン タ を 開いた と き にデー タ ベー ス
に接続す る (デフ ォ ル ト ) のか、 InfoMaker の起動時に自動的に接続す
る のか を制御 し ます。
InfoMaker の接続
[DB へ自動的に接続] シ ス テ ム オプシ ョ ンは、 InfoMaker アプ リ ケー
シ ョ ン の実行時には無効です。 PowerBuilder と 同様に、 InfoMaker は、
デー タ ベース にア ク セ ス す る アプ リ ケーシ ョ ン を実行 し た と き にデー
タ ベースへの接続を行い ます。
v
InfoMaker で [DB へ自動的に接続] シ ス テム オプ シ ョ ン を設定するには
1
メ ニ ュ ー バーか ら [ツール|シ ス テ ム オプシ ョ ン] を選択 し ます。
シ ス テ ム オプシ ョ ン ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
2
[全般] タ ブ ページで、以下の よ う に [DB へ自動的に接続] チ ェ ッ
ク ボ ッ ク ス を オ ン ま たはオ フ に し ます。
チ ェ ッ ク ボ ッ ク ス を オンにする 次に InfoMaker を 起動す る と 、 自動
的にデー タ ベース に接続 し 、 InfoMaker を終了す る ま でセ ッ シ ョ ン
を維持 し ます。
142
InfoMaker
第 10 章
デー タ ベース接続の管理
チ ェ ッ ク ボ ッ ク ス を オ フ にする (デフ ォ ル ト ) 次に InfoMaker を起動
す る と 、 接続 を 必要 と す る ペ イ ン タ (デー タ ベー ス、 レ ポー ト 、
フ ォ ーム、 デー タ パ イ プ ラ イ ン、 ク エ リ の各ペ イ ン タ ) を開いた
と き にのみデー タ ベー ス に接続 し ま す。 起動時には自動的にデー
タ ベース に接続 し ません。
3
[OK] ボ タ ン ま たは [更新] ボ タ ン を ク リ ッ ク し ます。
InfoMaker に よ っ て AutoConnect の設定が レ ジ ス ト リ に保存 さ れ ま
す。
接続先デー タ ベースの
決定
InfoMaker デー タ ベース にア ク セ スす る ペ イ ン タ を開 く と 、 InfoMaker
は最後に使用 し たデー タ ベース に接続 し ます。 InfoMaker は、 レ ジ ス
ト リ 内の設定を読み取 る こ と に よ っ て、 最後にア ク セ ス し たデー タ
ベース を判断 し ます。
こ のマニ ュ アルの内容
こ のマニ ュ アルでは、InfoMaker を使用 し て アプ リ ケーシ ョ ン を開発 し
てい る と き の、 開発環境でのデー タ ベース への接続方法について解説
し ます。
デー タ ベース プ ロ フ ァ イルの使い方
デー タ ベース プ ロ
フ ァ イル と は?
デー タ ベー ス プ ロ フ ァ イ ルは、 InfoMaker の開発環境において、 特定
のデー タ ベース と の接続を定義す る パ ラ メ ー タ セ ッ ト であ り 、 レ ジ ス
ト リ 内に格納 さ れ ます。
デー タ ベース プ ロ
フ ァ イルを使 う 理由
デー タ ベー ス プ ロ フ ァ イ ルを作成 し 、 使用す る こ と で、 InfoMaker か
ら のデー タ ベー ス 接続を、 非常に簡単に管理で き ま す。 その理由は以
下の と お り です。
•
デー タ ベース プ ロ フ ァ イ ルを選択 し て、 デー タ ベース と の接続の
確立、 変更を行 う 。 InfoMaker セ ッ シ ョ ン中であれば、 いつで も 簡
単に別のデー タ ベー ス に接続が可能。 こ の機能は、 異な る デー タ
ベース と の接続を頻繁に切 り 替え て使用す る 場合に、 特に効果的
•
デー タ ベース プ ロ フ ァ イ ルを編集 し て、 接続パ ラ メ ー タ を変更 し
た り 、 追加のパ ラ メ ー タ を指定 し た り す る
•
ア ク セ ス す る 必要のな く な っ たデー タ に対 し ては、 デー タ ベー ス
プ ロ フ ァ イ ルを削除す る
•
デー タ ベース プ ロ フ ァ イ ルを イ ン ポー ト お よ びエ ク ス ポー ト す る
デー タ ベース プ ロ フ ァ イ ルは、 使用 し てい る デー タ を定義す る と き に
作成 さ れ、 レ ジ ス ト リ に自動的に保存 さ れ る ため、 以下の利点が あ り
ます。
デー タ ベース と の接続
143
デー タ ベース と の接続
•
いつで も 使用可能
•
デー タ ベース プ ロ フ ァ イ ルを削除 し た り 編集 し た り し ない限 り 、
接続パ ラ メ ー タ がその ま ま保存 さ れ る
デー タ ベース と の接続
InfoMaker で、 デー タ ベー ス と の接続 を 確立 し た り 変更 し た り す る に
は、 デー タ ベース プ ロ フ ァ イ ルを使用 し ます。 ア ク セ ス し たいデー タ
ベース に対応す る デー タ ベース プ ロ フ ァ イ ルは、 DB プ ロ フ ァ イ ル ダ
イ ア ロ グ ボ ッ ク ス で選択で き ます。 デー タ ベース プ ロ フ ァ イ ルの作成
方法については、 10 ページの 「デー タ ベース プ ロ フ ァ イ ルの作成」 を
参照 し て く だ さ い。
デー タ ベース ペ イ ン タ を使用 し たデー タ ベース プ ロ フ ァ イルの選択
デー タ ベー ス ペ イ ン タ は、 オプ シ ョ ン の InfoMaker のペ イ ン タ です。
デー タ ベー ス ペ イ ン タ を イ ン ス ト ール し た場合は、 ア ク セ ス し た い
デー タ ベース に対応す る デー タ ベース プ ロ フ ァ イ ルを、 デー タ ベース
ペ イ ン タ のオブ ジ ェ ク ト ビ ュ ーか ら 選択す る こ と がで き ま す。 た だ
し 、 こ の方法は、 DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス を使用 し た場
合 よ り も 、 使用す る シ ス テ ム リ ソ ース が多 く な り ます。
デー タ ベース プ ロ フ ァ イルの選択
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス か ら デー タ ベース プ ロ フ ァ イ ル
を選択で き ます。
v
DB プ ロ フ ァ イル ダ イ ア ロ グボ ッ ク ス を使用 し てデー タ ベースに接続する
1
144
パ ワ ーバーの [DB プ ロ フ ァ イ ル] ボ タ ン を ク リ ッ ク す る か、 メ
ニ ュ ー バーの [ツール| DB プ ロ フ ァ イ ル] を選択 し ます。
InfoMaker
第 10 章
デー タ ベース接続の管理
[DB プ ロ フ ァ イル] ボ タ ン
パ ワーバーに [DB プ ロ フ ァ イ ル] ボ タ ンが表示 さ れていない場合
は、 カ ス タ マ イ ズ機能を使用 し てパ ワ ーバーにボ タ ン を追加 し て
く だ さ い。 パ ワ ーバーに [DB プ ロ フ ァ イ ル] ボ タ ンがあ る と 、 異
な る デー タ ベー ス と の接続を頻繁に切 り 替え て使用す る 場合に便
利です。 ツールバーのカ ス タ マ イ ズの手順については、 『ユーザー
ズ ガ イ ド 』 マニ ュ アルを参照 し て く だ さ い。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が開 き 、 イ ン ス ト ール済み
のデー タ ベース イ ン タ フ ェース が一覧表示 さ れ ます。
イ ン タ フ ェ ース リ ス ト の保存場所
セ ッ ト ア ッ プ プ ロ グ ラ ム を実行す る と 、 レ ジ ス ト リ 内の Vendors
リ ス ト が更新 さ れ、 イ ン ス ト ールす る イ ン タ フ ェ ー ス が追加 さ れ
ます。 DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス には、 Vendors リ ス ト
に入っ てい る イ ン タ フ ェース が表示 さ れ ます。
2
使用す る イ ン タ フ ェ ー ス 名の左の正符号 (+) を ク リ ッ ク す る か、
イ ン タ フ ェース名を ダブル ク リ ッ ク し ます。
リ ス ト が展開 し 、 そ の イ ン タ フ ェ ー ス に定義 さ れ て い る デー タ
ベース プ ロ フ ァ イ ルが表示 さ れ ます。
3
ア ク セ スす る デー タ ベース プ ロ フ ァ イ ル名を選択 し て [接続] を
ク リ ッ ク す る か、 デー タ ベー ス プ ロ フ ァ イ ルのポ ッ プ ア ッ プ メ
ニ ュ ーを表示 し て [接続] を選択 し ます。
InfoMaker は指定 し たデー タ ベース に接続 し 、 ペ イ ン タ の ワー ク ス
ペース に戻 り ます。
デー タ ベース ペ イ ン
タ のオブ ジ ェ ク ト
ビ ュー
デー タ ベー ス ペ イ ン タ のオブジ ェ ク ト ビ ュ ーか ら デー タ ベー ス プ ロ
フ ァ イ ルを選択す る こ と がで き ます。
v
デー タ ベース ペ イ ン タ を使用 し てデー タ ベースに接続する
1
パ ワーバーの [DB ペ イ ン タ ] ボ タ ン を ク リ ッ ク し ます。
デー タ ベー ス ペ イ ン タ が表示 さ れ ま す。 オブジ ェ ク ト ビ ュ ーに、
イ ン ス ト ール済みのデー タ ベース イ ン タ フ ェ ース の一覧が表示 さ
れます。
デー タ ベース と の接続
145
デー タ ベース と の接続
イ ン タ フ ェ ース リ ス ト の保存場所
セ ッ ト ア ッ プ プ ロ グ ラ ム を実行す る と 、 レ ジ ス ト リ 内の Vendors
リ ス ト が更新 さ れ、 イ ン ス ト ールす る イ ン タ フ ェ ー ス が追加 さ れ
ま す。 デー タ ベー ス ペ イ ン タ の [オ ブ ジ ェ ク ト ] ビ ュ ー に は、
Vendors リ ス ト に入っ てい る イ ン タ フ ェース が表示 さ れます。
2
使用す る イ ン タ フ ェ ー ス 名の左の正符号 (+) を ク リ ッ ク す る か、
イ ン タ フ ェ ース名を ダブル ク リ ッ ク し ます。
リ ス ト が展開 し 、 そ の イ ン タ フ ェ ー ス に定義 さ れ て い る デー タ
ベース プ ロ フ ァ イ ルが表示 さ れ ます。
3
ア ク セ スす る デー タ ベース プ ロ フ ァ イ ルの名前を選択 し て [接続]
ボ タ ン を ク リ ッ ク す る か、 デー タ ベー ス プ ロ フ ァ イ ルの ポ ッ プ
ア ッ プ メ ニ ュ ーを表示 し て [接続] を選択 し ます。
接続時の処理
デー タ ベー ス プ ロ フ ァ イ ル を 選択 し てデー タ ベー ス に接続す る と 、
InfoMaker に よ っ て プ ロ フ ァ イ ル名 と 接続パ ラ メ ー タ が レ ジ ス ト リ
キー HKEY_CURRENT_USER\Software\Sybase\PowerBuilder\11.5\
DatabaseProfiles\PowerBuilder に書 き 込まれ ます。
異な る デー タ ベー ス に接続す る たびに、 レ ジ ス ト リ 内の 「直前に使用
さ れた」 プ ロ フ ァ イ ル名は、 InfoMaker に よ っ て新 し いデー タ ベース に
対す る プ ロ フ ァ イ ル名に置 き 換え ら れ ます。
([DB へ自動的に接続] オプシ ョ ン を オ ンに し て) InfoMaker を起動す
る か、 ま たは、 デー タ ベー ス にア ク セ スす る ペ イ ン タ を開 く と 、 一番
最後に使用 し たデー タ ベース に接続 さ れ ます。InfoMaker は レ ジ ス ト リ
を読み取 り 、 ど のデー タ ベース と 最後に接続 し たか を判断 し ます。
デー タ ベー ス プ ロ フ ァ イ ルの名前が続 く デー タ ベー ス イ ン タ フ ェ ー
ス に関す る 3 文字の略語が、 InfoMaker の メ イ ン タ イ ト ル バーに表示
さ れ ます。 レ ポー ト ま たは フ ォ ーム で作業を し てい る 場合は、 こ の表
示に よ り 正 し い接続を使用 し てい る か を確認 し やす く な り ます。
た と えば、 チ ュ ー ト リ アル PBL を開いて、 EAS Demo デー タ ベース に
接続す る 場合、 タ イ ト ル バーには 「tutor_im.pbl - ODB [EAS Demo DB
V115 IM] - InfoMaker」 と 表示 さ れます。
146
InfoMaker
第 10 章
デー タ ベース接続の管理
デー タ ベース プ ロ フ ァ イルでのパスワー ド の指定
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス でパ ス ワ ー ド を 指定 し て
も 、 画面には表示 さ れません。
し か し 、InfoMaker が こ のプ ロ フ ァ イ ルの値を レ ジ ス ト リ に保存す る と
き に、 パ ス ワ ー ド は DatabasePassword ま たは LogPassword フ ィ ール ド
に暗号化 さ れた形式で表示 さ れ ます。
プ ロ フ ァ イル レ ジ ス
ト リ エ ン ト リ での表
示の抑制
プ ロ フ ァ イ ル レ ジ ス ト リ エ ン ト リ でパ ス ワ ー ド が表示 さ れない よ う
にす る には、 デー タ ベース プ ロ フ ァ イ ルを作成す る と き に以下の操作
を行い ます。
v
プ ロ フ ァ イル レ ジ ス ト リ エ ン ト リ でのパスワー ド 表示を抑制する
1
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス で [接続] タ ブの [DB
情報ダ イ ア ロ グの表示] チ ェ ッ ク ボ ッ ク ス をチ ェ ッ ク し ます。
こ れで、 こ のプ ロ フ ァ イ ルを選択 し てデー タ ベー ス へ接続す る と
き に、 InfoMaker に よ っ て、 不足 し てい る 情報の入力を求め ら れま
す。
2
設定の結果
[パ ス ワ ー ド ] ボ ッ ク ス を 空に し てお き ま す。 かわ り に、 デー タ
ベー ス へ接続す る と き に表示 さ れ る 、 追加情報の入力を求め る ダ
イ ア ロ グ ボ ッ ク ス でパ ス ワ ー ド を指定 し ます。
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス ではな く 、 追加情報の入力
を求め る ダ イ ア ロ グ ボ ッ ク ス でパ ス ワ ー ド を指定す る 場合、 パ ス ワ ー
ド は、 こ のプ ロ フ ァ イ ルに対す る レ ジ ス ト リ エ ン ト リ と し て表示 さ れ
ません。
た と えば、 デー タ ベース プ ロ フ ァ イ ルの作成時に DB プ ロ フ ァ イ ル設
定 - Adaptive Server Enterprise ダ イ ア ロ グボ ッ ク ス でパ ス ワー ド を指定
し ない場合、 Client Library への ロ グ イ ン ダ イ ア ロ グ ボ ッ ク ス が表示 さ
れ、 不足 し てい る 情報の入力が求め ら れます。
デー タ ベース プ ロ フ ァ イルの管理
InfoMaker では、 既存のデー タ ベー ス プ ロ フ ァ イ ルの編集や削除が簡
単にで き ます。
デー タ ベース と の接続
147
デー タ ベース プ ロ フ ァ イルの共有
デー タ ベース プ ロ フ ァ イ ルを編集す る こ と で、 1 つま たは複数の接続
パ ラ メ ー タ を変更す る こ と がで き ます。 デー タ にア ク セ ス す る 必要が
な く な っ た場合は、 そのデー タ ベー ス プ ロ フ ァ イ ルを削除で き ま す。
ま た、 プ ロ フ ァ イ ルを変更す る には、 DB プ ロ フ ァ イ ル設定 ダ イ ア ロ
グ ボ ッ ク ス ま たはデー タ ベース ペ イ ン タ を使い ます。
設定の結果
デー タ ベー ス プ ロ フ ァ イ ルを編集 ま たは削除す る と 、 InfoMaker に よ
り レ ジ ス ト リ 内のデー タ ベー ス プ ロ フ ァ イ ル エ ン ト リ が更新 ま たは
削除 さ れ ます。
ODBC デー タ ソ ースのデー タ ベース プ ロ フ ァ イルの削除
ODBC デー タ ソ ー ス に接続す る デー タ ベー ス プ ロ フ ァ イ ルを削除 し
て も 、 InfoMaker が、 そのプ ロ フ ァ イ ルに対応す る デー タ ソ ー ス 定義
を、 ODBC.INI フ ァ イ ル ま たは レ ジ ス ト リ のサブ キーか ら 削除す る こ
と はあ り ません。 つま り 、 デー タ ソ ー ス を再定義 し な く て も 、 必要に
応 じ て、 後でデー タ ベース プ ロ フ ァ イ ルだけ を再度作成で き ます。
デー タ ベース プ ロ フ ァ イルの共有
InfoMaker で作業 し てい る 場合、 ユーザ間でデー タ ベー ス プ ロ フ ァ イ
ルを共有で き ます。
Sybase ツール間でのデー タ ベース プ ロ フ ァ イルの共有
PowerBuilder お よ び InfoMaker で使用 さ れ る デー タ ベー ス プ ロ フ ァ イ
ルは、 レ ジ ス ト リ 内で共通の場所に格納 さ れ る ので、 こ れ ら の製品が
同 じ コ ン ピ ュ ー タ 上で動作 し てい る 場合、 1 つの製品で作成 し たデー
タ ベース プ ロ フ ァ イ ルは、 ほかの製品で も 自動的に使用可能にな り ま
す。
こ の節では、 InfoMaker において共有デー タ ベー ス プ ロ フ ァ イ ルを設
定、 使用、 管理す る 方法について解説 し ます。
148
InfoMaker
第 10 章
デー タ ベース接続の管理
共有デー タ ベース プ ロ フ ァ イルについて
共有 し た いプ ロ フ ァ イ ルが格納 さ れ て い る フ ァ イ ルの場所 を 指定 し
て、 InfoMaker の開発環境でデー タ ベー ス プ ロ フ ァ イ ルが共有で き ま
す。 こ の場所は、 デー タ ベー ス ペ イ ン タ の DB 環境設定 ダ イ ア ロ グ
ボ ッ ク ス に指定 し ます。
共有プ ロ フ ァ イル
フ ァ イルの保存場所
同一サ イ ト の InfoMaker ユーザ間でデー タ ベース プ ロ フ ァ イ ルを共有
す る には、 すべて のユーザが ア ク セ ス 可能な ネ ッ ト ワ ー ク フ ァ イ ル
サーバにプ ロ フ ァ イ ル フ ァ イ ルを保存 し ます。
デー タ ベー ス プ ロ フ ァ イ ルを共有す る と 、 InfoMaker に よ っ て レ ジ ス
ト リ に格納 さ れてい る デー タ ベース プ ロ フ ァ イ ルに加え て、 指定す る
フ ァ イ ルに格納 さ れて い る 共有デー タ ベー ス プ ロ フ ァ イ ル名が表示
さ れ ます。
共有デー タ ベース プ ロ フ ァ イ ルは上書 き で き ません。 共有プ ロ フ ァ イ
ルを選択 し てデー タ ベー ス に接続す る こ と はで き ますが、 共有 さ れて
い る プ ロ フ ァ イ ル を 編集、 保存、 ま たは削除す る こ と はで き ま せん。
ただ し 、 共有プ ロ フ ァ イ ルに変更を加え て自分の コ ン ピ ュ ー タ に保存
す る こ と はで き ます (151 ページの 「 ロ ーカルで共有デー タ ベース プ
ロ フ ァ イ ルを変更す る 」 を参照)。
共有デー タ ベース プ ロ フ ァ イルの設定
DB 環境設定 ダ イ ア ロ グ ボ ッ ク ス で共有デー タ ベース プ ロ フ ァ イ ルを
設定 し ます。
v
デー タ ベース と の接続
共有デー タ ベース プ ロ フ ァ イルを設定する
1
デー タ ベース ペ イ ン タ で、 メ ニ ュ ー バーか ら 、 [デザ イ ン|オプ
シ ョ ン]を選択 し 、DB 環境設定 ダ イ ア ロ グボ ッ ク ス を表示 し ます。
2
[全般] タ ブ ページの [共有 DB プ ロ フ ァ イ ル] ボ ッ ク ス に、 共有
し たいデー タ ベース プ ロ フ ァ イ ルを含んだ フ ァ イ ルの位置を指定
し ます。 こ の作業は、 以下のいずれかの方法で行い ます。
•
[共有 DB プ ロ フ ァ イ ル]ボ ッ ク ス に、位置(パ ス名) を入力す る
•
参照 ([...]) ボ タ ン を ク リ ッ ク し て、 フ ァ イ ルの位置を検索 し 、
[共有 DB プ ロ フ ァ イ ル] ボ ッ ク ス に表示す る
149
デー タ ベース プ ロ フ ァ イルの共有
以下の例では、 共有デー タ ベース プ ロ フ ァ イ ルの フ ァ イ ルの位置
と し て、 c:\work\share.ini を指定 し てい ます。
3
[OK] を ク リ ッ ク し ます。
InfoMaker は、共有デー タ ベース プ ロ フ ァ イ ルの設定を現行の接続
お よ び以降のすべての接続に適用 し 、 レ ジ ス ト リ にその設定を保
存 し ます。
共有デー タ ベース プ ロ フ ァ イルを使用 し た接続
共有デー タ ベース プ ロ フ ァ イ ルを選択 し て、 デー タ ベース に接続 し ま
す。 こ れは、 レ ジ ス ト リ に格納 さ れたプ ロ フ ァ イ ルを選択す る 方法 と
同 じ です。 DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス ま た は メ ニ ュ ーの
[フ ァ イ ル] か ら 共有プ ロ フ ァ イ ルを選択で き ます。
DB プ ロ フ ァ イル ダ イ
ア ログボ ッ ク ス
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス で、 共有 DB プ ロ フ ァ イ ルを選
択 し て、 接続 し ます。
v
DB プ ロ フ ァ イル ダ イ ア ロ グボ ッ ク スで共有デー タ ベース プ ロ フ ァ イルを選
択する
1
150
パ ワ ーバーの [DB プ ロ フ ァ イ ル] ボ タ ン を ク リ ッ ク す る か、 メ
ニ ュ ー バーの [ツール| DB プ ロ フ ァ イ ル] を選択 し ます。
InfoMaker
第 10 章
デー タ ベース接続の管理
共有プ ロ フ ァ イ ル と ロ ーカル プ ロ フ ァ イ ルの両方が一覧表示 さ れ
た DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。 共有プ
ロ フ ァ イ ルは、 ネ ッ ト ワ ー ク ア イ コ ン と 「(Shared)」 と い う 文字で
示 さ れてい ます。
2
ア ク セ ス し た い共有プ ロ フ ァ イ ルの名前 を 選択 し 、 [接続] を ク
リ ッ ク し ます。
InfoMaker は、 選択 さ れたデー タ ベース に接続 し 、 ペ イ ン タ の ワ ー
ク スペース に戻 り ます。
ロー カルで共有デー タ ベース プ ロ フ ァ イルを変更する
共有プ ロ フ ァ イ ルは、InfoMaker を実行 し てい る 複数のユーザがア ク セ
スす る ので、 こ れ ら のプ ロ フ ァ イ ルは変更すべ き ではあ り ません。 し
か し 、 個人の使用のために共有デー タ ベース プ ロ フ ァ イ ルを変更 し て
その コ ピーを保存 し たい場合は、 個人の コ ン ピ ュ ー タ の レ ジ ス ト リ で
プ ロ フ ァ イ ルの編集や変更 し た コ ピーの保存を行い ます。
v
レ ジ ス ト リ で共有デー タ ベース プ ロ フ ァ イルの変更を保存する
1
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス で、編集 し たい共有プ ロ フ ァ
イ ルを選択 し て、 [編集] ボ タ ン を ク リ ッ ク し ます。
2
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。 必要
に応 じ て、 プ ロ フ ァ イ ル値を編集 し 、 [OK] を ク リ ッ ク し ます。
変更 し たプ ロ フ ァ イ ルの コ ピーを保存す る ための メ ッ セージ ボ ッ
ク ス が表示 さ れ ます。
デー タ ベース と の接続
151
デー タ ベース プ ロ フ ァ イルの共有
3
[はい] を ク リ ッ ク し ます。
変更 し たプ ロ フ ァ イ ルが、InfoMaker に よ っ て ロ ーカル コ ン ピ ュ ー
タ の レ ジ ス ト リ に保存 さ れます。
共有デー タ ベース プ ロ フ ァ イルの管理
個人のマシ ン で InfoMaker のデー タ ベース プ ロ フ ァ イ ルを管理す る 場
合は、 変更を加え る 度に共有デー タ ベー ス プ ロ フ ァ イ ルを更新 し て、
ユーザが利用で き る よ う にす る 必要があ り ます。
共有デー タ ベー ス プ ロ フ ァ イ ルは、 InfoMaker を実行 し てい る 複数の
ユーザがア ク セ ス す る ので、 ネ ッ ト ワ ー ク 上でプ ロ フ ァ イ ルを変更す
る のは、 良い方法 と は言え ま せん。 変更は、 ネ ッ ト ワ ー ク 上で行 う の
ではな く 、 ロ ーカルで更新 し たプ ロ フ ァ イ ルを ユーザに提供に し ます。
v
共有デー タ ベース プ ロ フ ァ イルを個人のマシ ン で管理する
1
個人の コ ン ピ ュ ー タ 上で、 共有プ ロ フ ァ イ ルに必要な変更を し て
保存を し ます。 こ れ ら の変更は レ ジ ス ト リ に保存 さ れ ます。
詳 し い手順については、 151 ページの 「 ロ ーカルで共有デー タ ベー
ス プ ロ フ ァ イ ルを変更す る 」 を参照 し て く だ さ い。
2
レ ジ ス ト リ か ら 、更新 し たプ ロ フ ァ イ ル エ ン ト リ を、共有プ ロ フ ァ
イ ルを含む既存の フ ァ イ ルにエ ク ス ポー ト し ます。
詳 し い手順については、 153 ページの 「デー タ ベー ス プ ロ フ ァ イ
ルの イ ン ポー ト と エ ク ス ポー ト 」 を参照 し て く だ さ い。
3
指定 さ れていない場合は、 ユーザが各自の コ ン ピ ュ ー タ で共有プ
ロ フ ァ イ ルにア ク セ ス で き る よ う に、DB 環境設定プ ロ パテ ィ シー
ト で新 し いプ ロ フ ァ イ ル フ ァ イ ルの位置を各ユーザに指定 さ せま
す。
詳 し い手順については、149 ページの 「共有デー タ ベース プ ロ フ ァ
イ ルの設定」 を参照 し て く だ さ い。
152
InfoMaker
第 10 章
デー タ ベース接続の管理
デー タ ベース プ ロ フ ァ イルのイ ンポー ト と エ ク スポー ト
各デー タ ベース イ ン タ フ ェース には [プ ロ フ ァ イ ルを イ ン ポー ト ] お
よ び [プ ロ フ ァ イ ルを エ ク ス ポー ト ] オプシ ョ ンが提供 さ れてい ます。
[プ ロ フ ァ イ ルを イ ン ポー ト ] オプシ ョ ン を使用す る と 、 定義済みのプ
ロ フ ァ イ ルを イ ン ポー ト し て、 イ ン ス ト ール済みのデー タ ベース イ ン
タ フ ェ ー ス で使用で き ます。 反対に、 [プ ロ フ ァ イ ルを エ ク ス ポー ト ]
オプシ ョ ン を使用す る と 、 定義済みのプ ロ フ ァ イ ルを エ ク ス ポー ト し
て、 ほかのユーザに よ る 使用が可能にな り ます。
プ ロ フ ァ イ ルを イ ン ポー ト お よ びエ ク ス ポー ト す る 機能を使 う と 、 開
発者間でプ ロ フ ァ イ ルを簡単にや り と り で き ます。 つま り 、 共有 さ れ
てい る フ ァ イ ルを保守す る こ と に よ っ てプ ロ フ ァ イ ルを保守す る 必要
も な く な り ます。 ネ ッ ト ワ ー ク への接続を確保で き ないモバ イ ル環境
での開発で フ ァ イ ルを共有す る のに理想的です。
v
プ ロ フ ァ イルを イ ンポー ト する
1
デー タ ベース イ ン タ フ ェース をハ イ ラ イ ト 表示 し て、 ポ ッ プア ッ
プ メ ニ ュ ーか ら [プ ロ フ ァ イ ルを イ ン ポー ト ] を選択 し ます (デー
タ ベー ス ペ イ ン タ で、 [フ ァ イ ル] ま たはポ ッ プア ッ プ メ ニ ュ ー
か ら [プ ロ フ ァ イ ルを イ ン ポー ト ] を選択 し ます)。
2
プ ロ フ ァ イ ル フ ァ イ ルの選択 ダ イ ア ロ グ ボ ッ ク ス で、 プ ロ フ ァ イ
ル を イ ン ポー ト す る フ ァ イ ルを選択 し て [保存] を ク リ ッ ク し ま
す。
3
プ ロ フ ァ イ ルを イ ン ポー ト ダ イ ア ロ グ ボ ッ ク ス で、 イ ン ポー ト す
る プ ロ フ ァ イ ルを選択 し て [OK] を ク リ ッ ク し ます。
プ ロ フ ァ イ ルが レ ジ ス ト リ に コ ピー さ れ ま す。 同名のプ ロ フ ァ イ
ルがすでにあ る 場合は、 上書 き す る か ど う か を尋ね る メ ッ セージ
が表示 さ れます。
v
デー タ ベース と の接続
プ ロ フ ァ イルを エ ク スポー ト する
1
デー タ ベース イ ン タ フ ェース をハ イ ラ イ ト 表示 し て、 ポ ッ プア ッ
プ メ ニ ュ ーか ら [プ ロ フ ァ イ ル を エ ク ス ポー ト ] を 選択 し ま す
(デー タ ベー ス ペ イ ン タ で、 [フ ァ イ ル] ま たはポ ッ プ ア ッ プ メ
ニ ュ ーか ら [プ ロ フ ァ イ ルを エ ク ス ポー ト ] を選択 し ます)。
2
プ ロ フ ァ イ ルを エ ク ス ポー ト ダ イ ア ロ グ ボ ッ ク ス で、 エ ク ス ポー
ト す る プ ロ フ ァ イ ルを選択 し て [OK] を ク リ ッ ク し ます。
153
InfoMaker 拡張属性シ ス テム テーブルについて
定義済みのデー タ ベース イ ン タ フ ェ ース であ る か ど う かにかかわ
ら ず、 プ ロ フ ァ イ ルを エ ク ス ポー ト ダ イ ア ロ グ ボ ッ ク ス に、 レ ジ
ス ト リ に定義済みのすべて のプ ロ フ ァ イ ルが一覧表示 さ れ ま す。
デフ ォ ル ト では、 選択 さ れたデー タ ベース イ ン タ フ ェ ース に定義
済みのプ ロ フ ァ イ ルがエ ク ス ポー ト 用にマーキ ン グ さ れ ます。
3
プ ロ フ ァ イ ル フ ァ イ ルの選択 ダ イ ア ロ グボ ッ ク ス で、 デ ィ レ ク ト
リ と エ ク ス ポー ト さ れたプ ロ フ ァ イ ル を保存す る フ ァ イ ルを選択
し て、 [保存] を ク リ ッ ク し ます。
エ ク ス ポー ト さ れたプ ロ フ ァ イ ルは、 新規 ま たは既存の フ ァ イ ル
に保存で き ま す。 既存の フ ァ イ ルに保存す る 場合、 プ ロ フ ァ イ ル
は既存のプ ロ フ ァ イ ルに追加 さ れ ま す。 同名のプ ロ フ ァ イ ルがす
でにあ る 場合は、 上書 き す る か ど う か を尋ね る メ ッ セージが表示
さ れ ます。
InfoMaker 拡張属性シ ス テム テーブルについて
InfoMaker は 5 つのシ ス テ ム テーブルを使用 し て、デー タ ベース のテー
ブルお よ びカ ラ ム につい て の拡張属性情報 (表示書式、 入力条件則、
フ ォ ン ト 情報な ど) を格納 し ます。 ま た、 InfoMaker において、 テーブ
ルを作成 し た り 変更 し た り す る と き に も 、拡張属性の定義がで き ます。
こ の節では、 以下の項目について解説 し ます。
•
デー タ ベー ス へ初めて ロ グ イ ンす る と き に、 適切な ア ク セ ス 権を
使用 し て InfoMaker 拡張属性シ ス テ ム テーブルを作成す る 方法
•
InfoMaker 拡張属性シ ス テ ム テーブルを表示 し 、 開 く 方法
•
InfoMaker 拡張属性シ ス テ ム テーブルに格納 さ れてい る 情報の種
類について
•
拡張属性シ ス テ ム テーブルへのア ク セ ス を制御す る 方法
デー タ ベースへの初めてのロ グ イ ン
デフ ォ ル ト で、デー タ ベース に最初に接続 し た と き に InfoMaker に よ っ
て拡張属性シ ス テ ム テーブルが作成 さ れ ます。
154
InfoMaker
第 10 章
デー タ ベース接続の管理
InfoMaker が適切な ア ク セ ス 権限を持っ た拡張属性シ ス テ ム テーブル
を作成 し て、 すべて のユーザが こ れ を利用で き る よ う にす る ために、
InfoMaker を使用 し て最初にデー タ ベース に接続す る 担当者は、適切な
権限を使用 し て ロ グ イ ンす る 必要があ り ます。
v
InfoMaker 拡張属性シス テム テーブルを正確に作成する
•
InfoMaker を使用 し て最初にデー タ ベース に接続す る 場合は、 その
担当者がテーブルを作成 し 、PUBLIC を実行す る 権限を持っ てい る
こ と を確認 し て く だ さ い。
つ ま り 、 初回のデー タ ベー ス 接続を行 う ユーザは、 デー タ ベー ス
オーナー、 デー タ ベース管理者、 シ ス テ ム ユーザ、 シ ス テ ム管理
者、 シ ス テ ム オーナー、 ま たは DBMS で指定 さ れたユーザで ロ グ
イ ン し ます。
InfoMaker 拡張属性シ ス テム テーブルの表示
テーブルやカ ラ ムの情報を変更す る と 、 拡張属性シ ス テ ム テーブルは
InfoMaker に よ っ て自動的に更新 さ れます。 InfoMaker 拡張属性シ ス テ
ム テーブルは、 DBMS が提供す る シ ス テ ム テーブル と は異な り ます。
InfoMaker 拡張属性シ ス テ ム テーブルは、 必要に応 じ て、 ほかのテー
ブル と 同様に、 デー タ ベース ペ イ ン タ で開いて表示で き ます。
デー タ ベース と の接続
155
InfoMaker 拡張属性シ ス テム テーブルについて
v
InfoMaker 拡張属性シ ス テム テーブルを表示する
1
デー タ ベース ペ イ ン タ で、 ア ク テ ィ ブな接続のデー タ ベース オブ
ジ ェ ク ト の リ ス ト で [テーブル] を ハ イ ラ イ ト 表示 し て、 ポ ッ プ
ア ッ プ メ ニ ュ ーか ら [シ ス テ ム テーブルを表示] を選択 し ます。
2
次の よ う に、 InfoMaker 拡張属性シ ス テ ム テーブル と DBMS シ ス
テ ム テーブルがテーブル リ ス ト に表示 さ れます。
•
156
InfoMaker シ ス テム テーブル pbcatcol、 pbcatedt、 pbcatfmt、 pbcattbl、
pbcatvld と い う 5 つのシ ス テ ム テーブルがあ り ます。
InfoMaker
第 10 章
•
デー タ ベース接続の管理
DBMS シ ス テム テーブル DBMS で提供 さ れ る シ ス テ ム テーブ
ルは、通常、DBMS 固有の修飾子 (sys や dbo な ど) を伴い ます。
3
InfoMaker シ ス テ ム テーブルの内容が、 オブジ ェ ク ト レ イ ア ウ ト 、
オブジ ェ ク ト の詳細、 ま たはカ ラ ム ビ ュ ーに表示 さ れます。
詳 し い手順については、 『ユーザーズ ガ イ ド 』 マニ ュ アルを参照 し
て く だ さ い。
拡張属性シ ス テム テーブルは編集 し ないで く だ さ い
InfoMaker 拡張属性シ ス テ ム テーブル内の値は変更 し ないで く だ
さ い。
拡張属性シ ス テム テーブルの内容
InfoMaker に示す よ う に、 表 10-1 では、 5 種類の拡張属性情報を シ ス テ
ム テーブルに格納 し てい ます。
デー タ ベース と の接続
157
InfoMaker 拡張属性シ ス テム テーブルについて
表 10-1: 拡張属性シ ス テム テーブル
シス テム
テーブル
情報の種類
カラム
属性
カ ラ ム の名前、 コ メ ン ト 、 ヘ ッ ダ、 ラ ベ
ル、 大文字 と 小文字の区別、 初期値、 位
置揃え
pbcattbl
編集様式
表示書式
テーブル
pbcatvld
入力条件則
編集様式の名前 と 定義
表示書式の名前 と 定義
テーブルの名前、 所有者、 (デー タ 、 ヘ ッ
ダ、 ラ ベルの) デフ ォ ル ト フ ォ ン ト 、 コ
メント
入力条件則の名前 と 定義
pbcatcol
pbcatedt
pbcatfmt
InfoMaker シ ス テ ム テーブルの詳細については、 『ユーザーズ ガ イ ド 』
マニ ュ アルの 「付録」 を参照 し て く だ さ い。
シ ス テム テーブル名の修飾子
デー タ ベース に よ っ て、 InfoMaker は、 デフ ォ ル ト の DBMS 固有の修
飾子を シ ス テ ム テーブル名の先頭に付け ます。 た と えば、 InfoMaker
シ ス テ ム テーブルの名前は、SQL Server デー タ ベース の場合は修飾子
DBO が先頭に付 き (DBO.pbcatcol)、 Oracle デー タ ベース の場合は修飾
子 SYSTEM が先頭に付 き ます (SYSTEM.pbcatfmt)。
前述の表は、 DBMS 固有の修飾子が付いていない、 シ ス テ ム テーブル
の基本 と な る 名前を それぞれ示 し た も のです。
シ ス テム テーブルへのア ク セスの制御
サ イ ト の InfoMaker シ ス テ ム テーブルへの ア ク セ ス を 制御す る た め
に、 InfoMaker に対 し て シ ス テ ム テーブルを作成 ま たは更新 し ない よ
う に指定 し た り 、 一部のユーザ ま たはグループだけがシ ス テ ム テーブ
ルにア ク セ ス で き る よ う に指定 し た り す る こ と がで き ます。
シ ス テ ム テーブルへのア ク セ ス を制御す る には、 以下のいずれかの作
業を行い ます。
158
デー タ ベー ス ペ イ ン タ の DB 環境設定
ダ イ ア ロ グボ ッ ク ス で、 [拡張属性の使用] の設定を し ます。
•
[拡張属性の使用] の設定
•
[読み取 り 専用] の設定
デー タ ベー ス ペ イ ン タ の DB 環境設定 ダ
イ ア ロ グ ボ ッ ク ス で、 [読み取 り 専用] の設定を し ます。
InfoMaker
第 10 章
•
デー タ ベース接続の管理
シ ス テム テーブルのア ク セス権の指定 サ イ ト の ユ ー ザ ま た は グ
ループに対 し て、 シ ス テ ム テーブルの明示的な ア ク セ ス権を与え
ます。
[拡張属性の使用] または [読み取 り 専用] の設定に よ る ア ク セスの制御
v
デー タ ベース と の接続
[拡張属性の使用] または [読み取 り 専用] を設定 し て シス テム テーブルへ
のア ク セス を制御する
1
メ ニ ュ ー バーの [デザ イ ン|オプシ ョ ン] を選択 し て、 DB 環境
設定 ダ イ ア ロ グ ボ ッ ク ス を表示 し ます。
2
[全般] タ ブ ページで [拡張属性の使用] ま たは [読み取 り 専用]
の値を設定 し ます。
159
InfoMaker 拡張属性シ ス テム テーブルについて
環境設定項目
[拡張属性の使用]
必要な操作
チェ ッ ク ボ ッ ク ス
を オ フ にす る
[読み取 り 専用]
チェ ッ ク ボ ッ ク ス
をオンにする
効果
InfoMaker シ ス テ ム テーブルが存在 し ない場合、シ ス テ
ム テーブルが作成 さ れない。 かわ り に、 ペ イ ン タ では、
拡張属性 (ヘ ッ ダ、 ラ ベル、 テ キ ス ト の色な ど) の適
切なデフ ォ ル ト 値が使用 さ れ る
InfoMaker シ ス テ ム テーブルがすでに存在す る 場合、レ
ポ ー ト ま た は フ ォ ー ム を 新 し く 作 成 す る と き に、
InfoMaker はそのシ ス テ ム テーブルを使用 し ない
InfoMaker シ ス テ ム テーブルがすでに存在す る 場合、レ
ポ ー ト ま た は フ ォ ー ム を 新 し く 作 成 す る と き に、
InfoMaker はそのシ ス テ ム テーブルを使用す る が、その
シ ス テ ム テーブルが更新 さ れ る こ と はない
[読み取 り 専用] チ ェ ッ ク ボ ッ ク ス がオ ン の場合、 レ
ポー ト ペ イ ン タ ま たはフ ォーム ペ イ ン タ か ら 、 シ ス テ
ム テーブルやほかのデー タ ベー ス テーブル内の情報
の変更 (更新) はで き ない
3
[OK] ボ タ ン を ク リ ッ ク し ます。
InfoMaker は、 環境設定項目の設定を現行の接続や以降のすべての
接続に適用 し 、 それ ら を レ ジ ス ト リ に保存 し ます。
ア ク セス権によ る シ ス テム テーブルへのア ク セスの制御
使用 し てい る DBMS が SQL GRANT 文や REVOKE 文を サポー ト し てい
る 場合、InfoMaker シ ス テ ム テーブルへのア ク セ ス を制御で き ます。各
リ ポジ ト リ テーブルに対す る デフ ォ ル ト の権限は以下の と お り です。
GRANT SELECT, UPDATE, INSERT, DELETE ON table TO PUBLIC
シ ス テ ム テーブル を作成 し た後で、 た と えば、 SELECT 権限を エ ン ド
ユーザに、 SELECT、 UPDATE、 INSERT、 DELETE 権限 を 開発者に与え る
こ と に よ っ て、 シ ス テ ム テーブルへのア ク セ ス を制御で き ます。 こ の
手法の場合、 DBMS 自体が備え てい る セ キ ュ リ テ ィ と 柔軟性を活用で
き ます。
160
InfoMaker
第 11 章
接続パ ラ メ ー タ の追加設定
こ の章について
デー タ ベー ス 接続の設定を さ ら に細か く 調整 し 、 使用す る イ ン タ
フ ェース がサポー ト す る DBMS 固有の機能を利用す る ために、 必
要に応 じ て接続パ ラ メ ー タ を追加設定で き ます。 追加で き る 接続
パ ラ メ ー タ には、 以下の 2 種類があ り ます。
•
デー タ ベース パ ラ メ ー タ
•
デー タ ベース環境設定項目
こ れ ら の接続パ ラ メ ー タ については、 オ ン ラ イ ン ヘルプの 「デー
タ ベース接続」 で説明 し てい ます。
こ の章では、 InfoMaker のデー タ ベー ス パ ラ メ ー タ と デー タ ベー
ス環境設定項目の内容について解説 し ます。
内容
項目
接続パ ラ メ ー タ を設定す る ための基本手順
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス について
デー タ ベース パ ラ メ ー タ の設定
デー タ ベース環境設定項目の設定
ページ
161
162
163
164
接続パラ メ ー タ を設定する ための基本手順
こ の節では、 InfoMaker か ら 、 デー タ ベー ス パ ラ メ ー タ と デー タ
ベース環境設定項目を設定す る 方法について解説 し ます。
v
デー タ ベース パラ メ ー タ を設定する
1
開発環境でデー タ ベース パ ラ メ ー タ を設定す る 方法を理解 し
ます。
163 ページの 「デー タ ベー ス パ ラ メ ー タ の設定」 を参照 し て
く だ さ い。
2
デー タ ベース と の接続
使用 し てい る デー タ ベー ス イ ン タ フ ェ ース に対 し て設定で き
る デー タ ベース パ ラ メ ー タ を調べます。
161
DB プ ロ フ ァ イル設定 ダ イ ア ログボ ッ ク スについて
サ ポー ト し て い る デー タ ベー ス イ ン タ フ ェ ー ス と 、 そ の イ ン タ
フ ェ ー ス で使用で き る デー タ ベー ス パ ラ メ ー タ の一覧につい て
は、 オ ン ラ イ ン ヘルプの 「デー タ ベース パ ラ メ ー タ と サポー ト し
てい る デー タ ベース イ ン タ フ ェ ース」 を参照 し て く だ さ い。
v
3
オ ン ラ イ ン ヘルプで、 設定す る デー タ ベース パ ラ メ ー タ について
の解説を参照 し ます。
4
データ ベース 接続に対し てデータ ベース パラ メ ータ を 設定し ま す。
デー タ ベース環境設定項目を設定する
1
開発環境の中でデー タ ベー ス 環境設定項目を設定す る 方法を理解
し ます。
164 ページの 「デー タ ベース環境設定項目の設定」 を参照 し て く だ
さ い。
2
使用 し てい る DBMS に対 し て設定で き る デー タ ベース環境設定項
目を調べます。
サ ポー ト し て い る デー タ ベー ス イ ン タ フ ェ ー ス と 、 そ の イ ン タ
フ ェ ー ス で使用で き る デー タ ベー ス 環境設定項目の一覧について
は、 オ ン ラ イ ン ヘルプの 「デー タ ベース パ ラ メ ー タ と サポー ト し
てい る デー タ ベース イ ン タ フ ェ ース」 を参照 し て く だ さ い。
3
オ ン ラ イ ン ヘルプで、 設定す る 環境設定項目についての解説を参
照 し ます。
4
デー タ ベー ス 接続に対 し てデー タ ベー ス 環境設定項目を設定 し ま
す。
DB プ ロ フ ァ イル設定 ダ イ ア ログボ ッ ク スについて
イ ン タ フ ェ ース固有の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス を使
用すれば、 開発環境で追加接続パ ラ メ ー タ を簡単に設定で き ます。 こ
のダ イ ア ロ グボ ッ ク ス では、 以下の処理を行え ます。
•
162
デー タ ベース イ ン タ フ ェース がサポー ト し てい る 接続オプシ ョ ン
の値を指定す る
InfoMaker
第 11 章
接続パ ラ メ ー タ の追加設定
各デー タ ベース イ ン タ フ ェ ース は、 独自の DB プ ロ フ ァ イ ル設定
ダ イ ア ロ グ ボ ッ ク ス を持っ てお り 、 その イ ン タ フ ェ ー ス 専用の接
続パ ラ メ ー タ の設定が入っ てい ま す。 関連す る パ ラ メ ー タ は同 じ
タ ブ ページでグループ化 さ れてい ます。 すべての イ ン タ フ ェ ース
用の DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス には、 [接続] タ ブ
が含 ま れてい ま す。 イ ン タ フ ェ ー ス の機能 と 必要に応 じ て、 こ れ
以外の タ ブ ページ も 表示 さ れます。
•
開発環境で簡単に追加接続パ ラ メ ー タ を設定す る
接続パ ラ メ ー タ (デー タ ベース パ ラ メ ー タ お よ び ト ラ ンザ ク シ ョ
ン オブジ ェ ク ト のプ ロ パテ ィ ) の値は、チ ェ ッ ク ボ ッ ク ス、 ド ロ ッ
プダ ウ ン リ ス ト 、 お よ びテ キ ス ト ボ ッ ク ス を使用 し て、 簡単に指
定す る こ と がで き ます。 デー タ ベース プ ロ フ ァ イ ルを シ ス テ ム レ
ジ ス ト リ に保存す る と 、 InfoMaker に よ り 、 正 し い構文が自動的に
生成 さ れ ます。
デー タ ベース パラ メ ー タ の設定
InfoMaker では、接続用に DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス を
編集す る こ と に よ り 、 デー タ ベース パ ラ メ ー タ を設定で き ます。
開発環境でのデー タ ベース パラ メ ー タ の設定
デー タ ベース プ ロ
フ ァ イルの編集
InfoMaker の開発環境で、 デー タ ベー ス 接続に対 し てデー タ ベー ス パ
ラ メ ー タ を設定す る には、 その接続に対応す る デー タ ベース プ ロ フ ァ
イ ルを編集 し ます。
文字列の文字数制限
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス に指定す る デー タ ベース パ
ラ メ ー タ を含む文字列は、 999 文字以内で指定 し ます。
こ の制限は、 開発環境でデー タ ベース プ ロ フ ァ イ ルに指定す る デー タ
ベース パ ラ メ ー タ だけに適用 さ れます。 ト ラ ンザ ク シ ョ ン オブジ ェ ク
ト のプ ロ パテ ィ と し て コ ー ド に指定す る デー タ ベース 文字列には、 文
字数の制限があ り ません。
デー タ ベース と の接続
163
デー タ ベース環境設定項目の設定
デー タ ベース環境設定項目の設定
設定方法
InfoMaker におい て接続関連のデー タ ベー ス 環境設定項目を設定す る
方法は、 以下の表に示す よ う に異な り ます。
表 11-1: デー タ ベース環境設定項目 と その編集場所
デ ー タ ベ ー ス 環境設定
項目
自動 コ ミ ッ ト モー ド
(AutoCommit)
分離レベル (Lock)
共有 DB プ ロ フ ァ イ ル
(Shared Database Profiles)
開始時にデー タ ベース
に接続 (Connect DB at
Startup)
デフ ォ ル ト のプ ロ フ ァ
イ ルに接続 (Connect to
Default Profile)
読み取 り 専用 (Read
Only)
DB の接続を保持 (Keep
Connection Open)
拡張属性の使用 (Use
Extended Attributes)
SQL 構文の終止符
(SQL Terminator
Character)
開発環境の中で設定する場合の編集対象
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス
DB 環境設定 ダ イ ア ロ グボ ッ ク ス
DB 環境設定 ダ イ ア ロ グボ ッ ク ス
DB 環境設定 ダ イ ア ロ グボ ッ ク ス
DB 環境設定 ダ イ ア ロ グボ ッ ク ス
DB 環境設定 ダ イ ア ロ グボ ッ ク ス
DB 環境設定 ダ イ ア ロ グボ ッ ク ス
DB 環境設定 ダ イ ア ロ グボ ッ ク ス
以下の節では、 開発環境で、 デー タ ベー ス 環境設定項目を設定す る 手
順について解説 し ます。
詳細について
各デー タ ベース環境設定項目の詳細については、 オ ン ラ イ ン ヘルプの
説明を参照 し て く だ さ い。
開発環境でのデー タ ベース環境設定項目の設定
サ ポー ト さ れ て い る すべ て の開発プ ラ ッ ト フ ォ ー ム におけ る
InfoMaker の開発環境でデー タ ベース環境設定項目を設定す る には、 2
つの方法があ り ます。
•
164
AutoCommit や Lock (分離レベル) は、 接続に対応す る DB プ ロ
フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス で設定す る
InfoMaker
第 11 章
•
接続パ ラ メ ー タ の追加設定
ほかのすべてのデー タ ベース環境設定項目は、 デー タ ベース ペ イ
ン タ の DB 環境設定 ダ イ ア ロ グ ボ ッ ク ス で設定す る
デー タ ベース プ ロ フ ァ イルにおける AutoCommit と Lock の設定
AutoCommit お よ び Lock (分離 レベル) 環境設定項目は、 デフ ォ ル ト
ト ラ ン ザ ク シ ョ ン オ ブ ジ ェ ク ト SQLCA の プ ロ パ テ ィ で す。
AutoCommit と Lock (分離レベル) 環境設定項目が InfoMaker の開発環
境で有効 と な る よ う にす る には、 こ れ ら をデー タ ベー ス に接続す る 前
に指定 し ます。 接続 し た後で こ れ ら の環境設定項目を変更 し て も 、 現
行の接続には、 その変更が反映 さ れ ません。
InfoMaker がデー タ ベース に接続す る 前に AutoCommit や Lock を設定
す る には、 以下の手順で、 接続に対応す る DB プ ロ フ ァ イ ル設定 ダ イ
ア ロ グボ ッ ク ス でその値を指定 し ます。
v
デー タ ベース プ ロ フ ァ イルに AutoCommit や Lock (分離レ ベル) を設定す
る
1
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス を表示 し ます。
2
使用す る イ ン タ フ ェ ー ス 名の左の正符号 (+) を ク リ ッ ク す る か、
イ ン タ フ ェース名を ダブル ク リ ッ ク し ます。
リ ス ト が展開 し 、 そ の イ ン タ フ ェ ー ス に定義 さ れ て い る デー タ
ベース プ ロ フ ァ イ ルが表示 さ れ ます。
3
編集 し たいプ ロ フ ァ イ ル を選択 し て [編集] ボ タ ン を ク リ ッ ク し
ます。
選択 し たプ ロ フ ァ イ ルの DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク
ス が表示 さ れ ます。
4
[接続] タ ブで、 以下のいずれかの値、 ま たは両方の値を指定 し ま
す。
•
分離レ ベル デー タ ベー ス が ロ ッ ク や分離レベルを サポー ト す
る 場合、 接続で使用す る 分離レベルを、 [分離レベル] ド ロ ッ
プダ ウ ン リ ス ト か ら 選択 し ます ([分離レベル] ド ロ ッ プダ ウ
ン リ ス ト には、 各 イ ン タ フ ェ ー ス に対 し て有効な ロ ッ ク 値が
格納 さ れてい ます)。
デー タ ベース と の接続
165
デー タ ベース環境設定項目の設定
•
AutoCommit の設定は、 InfoMaker が SQL
文を ト ラ ンザ ク シ ョ ン の ス コ ープの外側で発行す る (True) の
か、 内側で発行す る (False) のか を 制御 し ま す。 デー タ ベー
ス が対応 し ていれば、 [自動 コ ミ ッ ト モー ド ] チ ェ ッ ク ボ ッ ク
ス をチ ェ ッ ク し て AutoCommit を True(オ ン)にす る か、チ ェ ッ
ク ボ ッ ク ス の チ ェ ッ ク を は ず し て (デ フ ォ ル ト 状 態)
AutoCommit を False (オ フ) に し ます。
自動 コ ミ ッ ト モー ド
た と えば、 基本接続パ ラ メ ー タ (サーバ、 ロ グ イ ン ID、 パ ス ワ ー
ド 、 お よ びデー タ ベース) に加え て、 Sales と い う Sybase Adaptive
Server Enterprise プ ロ フ ァ イ ル用の [接続] タ ブでは、 [分離 レ ベ
ル] と [自動 コ ミ ッ ト モー ド ] に対 し てデフ ォ ル ト と 異な る 設定
を し てい ます。
5
[OK] を ク リ ッ ク し て、 DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス
を閉 じ ます。
InfoMaker は、レ ジ ス ト リ 内のデー タ ベース プ ロ フ ァ イ ルのエ ン ト
リ に設定を保存 し ます。
DB 環境設定 ダ イ ア ログボ ッ ク スにおける環境設定項目の設定
以 下 の 接 続 関 連 の デ ー タ ベ ー ス 環 境 設 定 項 目 を 設 定 す る に は、
InfoMaker デー タ ベース ペ イ ン タ で、DB 環境設定 ダ イ ア ロ グボ ッ ク ス
に対 し て入力を し ます。
•
[共有 DB プ ロ フ ァ イ ル]
•
[デフ ォ ル ト のプ ロ フ ァ イ ルに接続]
•
[読み取 り 専用]
•
[DB の接続を保持]
•
[拡張属性の使用]
•
[SQL 構文の終止符]
そのほかのデー タ ベース環境設定項目
DB 環境設定 ダ イ ア ロ グボ ッ ク ス では、 デー タ ベース ペ イ ン タ その も
のの動作に影響を及ぼす、 そのほかのデー タ ベー ス環境設定項目を設
定で き ます。 DB 環境設定 ダ イ ア ロ グ ボ ッ ク ス で設定で き る そのほか
の環境設定項目については、 『ユーザーズ ガ イ ド 』 マ ニ ュ アル を参照
し て く だ さ い。
166
InfoMaker
第 11 章
v
接続パ ラ メ ー タ の追加設定
DB 環境設定 ダ イ ア ログボ ッ ク スで接続関連の環境設定項目を設定する
1
デー タ ベース ペ イ ン タ を開 き ます。
2
メ ニ ュ ーバーか ら [デザ イ ン|オプシ ョ ン] を選択 し ます。
DB 環境設定 ダ イ ア ロ グボ ッ ク ス が表示 さ れます。 必要であれば、
[全般] タ ブ を ク リ ッ ク し て [全般] プ ロ パテ ィ ページ を表示 し ま
す。
3
[全般] プ ロ パテ ィ ページ上で、 以下の表の接続関連の DB 環境設
定項目に対 し て値を指定 し ます。
表 11-2: 接続関連のデー タ ベース環境設定項目
環境設定項目
[共有 DB プ ロ フ ァ イ ル]
[開始時にデ フ ォ ル ト の
プ ロ フ ァ イ ルで接続]
[デ フ ォ ル ト の プ ロ フ ァ
イ ルに接続]
デー タ ベース と の接続
説明
共有す る デー タ ベー ス プ ロ フ ァ イ ルがあ る フ ァ イ ルの
パ ス名を指定す る 。 パ ス名を直接入力す る こ と も 、 参照
( [...] ) ボ タ ン を ク リ ッ ク し てパス名を表示する こ と も
でき る
InfoMaker がデー タ ベース に接続す る タ イ ミ ン グ を指定
す る 。 以下に示す よ う に、 チ ェ ッ ク ボ ッ ク ス をチ ェ ッ ク
ま たはチ ェ ッ ク をはずす
• チ ェ ッ ク ボ ッ ク ス を オ ンにする 次に InfoMaker を 起動
す る と 、 自動的にデー タ ベース に接続 し 、 InfoMaker
を終了す る ま でセ ッ シ ョ ン を維持 し ます。
• チ ェ ッ ク ボ ッ ク ス を オ フ にする (デ フ ォ ル ト ) 次 に
InfoMaker を起動す る と 、 接続を必要 と する ペ イ ン タ
を開いた と き にのみデー タ ベース に接続 し ます。
デー タ ベース ペ イ ン タ 起動時に、 デフ ォ ル ト プ ロ フ ァ
イ ル を使用 し てデー タ ベー ス 接続を確立す る か ど う か
を 指定す る 。 チ ェ ッ ク がはず さ れて い る 場合、 デー タ
ベー ス ペ イ ン タ はデー タ ベー ス 接続を確立せずにデー
タ ベース ペ イ ン タ を開 く
参考資料
148 ページの
「デー タ ベース プ
ロ フ ァ イ ルの共
有」
オ ン ラ イ ン ヘル
プ の 「開 始 時 に
デー タ ベース に接
続」
オ ン ラ イ ン ヘル
プの 「デフ ォ ル ト
のプ ロ フ ァ イ ルに
接続」
167
デー タ ベース環境設定項目の設定
環境設定項目
[読み取 り 専用]
説明
InfoMaker が、 拡張属性シ ス テ ム テーブルやデー タ ベー
ス内のほかのテーブルを更新す る か ど う か を指定す る 。
以下に示す よ う に、 [読み取 り 専用] チ ェ ッ ク ボ ッ ク ス
をチ ェ ッ ク ま たはチ ェ ッ ク をはずす
• チ ェ ッ ク ボ ッ ク ス を オ ンにする 拡 張 属 性 シ ス テ ム
テーブルやデー タ ベー ス 内のほかのテーブルを更新
し てはいけ ません。 [読み取 り 専用] チ ェ ッ ク ボ ッ ク
ス がオン の場合、 レ ポー ト ま たはフ ォーム ペ イ ン タ
か ら 、 拡張属性 シ ス テ ム テ ーブルやほ か のデー タ
ベース テーブル内の情報の変更 (更新) はで き ませ
ん。
• チ ェ ッ ク ボ ッ ク ス を オ フ にする (デフ ォ ル ト )拡張属性
シ ス テ ム テーブルやデー タ ベース内のほかのテーブ
ルを更新 し ます。
参考資料
[DB の接続を保持]
デー タ ベー ス プ ロ フ ァ イ ル を使用せずに InfoMaker か オ ン ラ イ ン ヘ ル
ら デー タ ベース に接続 し てい る と き に、 InfoMaker が接 プの 「デー タ ベー
続を閉 じ る タ イ ミ ン グ を指定す る 。 以下に示す よ う に、 ス の接続を保持」
[DB の接続を保持] チ ェ ッ ク ボ ッ ク ス を チ ェ ッ ク ま た
はチ ェ ッ ク をはずす
• チ ェ ッ ク ボ ッ ク ス を オ ンにする (デフ ォ ル ト ) セ ッ シ ョ
ン中はデー タ ベー ス に接続 し た ま ま で、 セ ッ シ ョ ン
が終了す る と き に接続を閉 じ ます。
• チ ェ ッ ク ボ ッ ク ス を オ フ にする ペ イ ン タ が要求 し た と
き だけ接続 を開 き 、 ペ イ ン タ を閉 じ る と き 、 ま たは
ス ク リ プ ト の コ ン パ イ ルが終了す る と き に、 接続を
閉 じ ます。
オ ン ラ イ ン ヘル
プの 「読み取 り 専
用」
PowerBuilder 専用
[DB の接続を保持] は InfoMaker では何の効果 も あ り ま
せん。
[拡張属性の使用]
[表示す る カ ラ ム数]
168
InfoMaker が拡張属性シ ス テ ム テーブルを作成 し 、 使用 オ ン ラ イ ン ヘ ル
す る か ど う か を指定す る 。 以下に示す よ う に、 [拡張属 プの 「拡張属性の
性の使用] チ ェ ッ ク ボ ッ ク ス をチ ェ ッ ク ま たはチ ェ ッ ク 使用」
をはずす。
• チ ェ ッ ク ボ ッ ク ス を オ ンにする (デフ ォ ル ト )拡張属性
シ ス テ ム テーブルを作成 し 、 使用 し ます。
• チ ェ ッ ク ボ ッ ク ス を オ フ にする 拡 張 属 性 シ ス テ ム
テーブルを作成 し ません。
InfoMaker が テーブル を グ ラ フ ィ カ ルに表示す る と き
に、 表示 さ れ る テーブルの カ ラ ム数 を指定 し ま す。 デ
フ ォ ル ト は 8 です。
InfoMaker
第 11 章
環境設定項目
SQL 構文の終止符
(SQL Terminator
Character)
接続パ ラ メ ー タ の追加設定
説明
参考資料
InfoMaker に お い て、 デー タ ベー ス ペ イ ン タ の ISQL オ ン ラ イ ン ヘ ル
ビ ュ ーで使用す る SQL 文の終止符を指定す る
プの 「SQL 構文の
終止符」
デフ ォ ル ト の終止符はセ ミ コ ロ ン (;)。 デー タ ベース ペ
イ ン タ の ISQL ビ ュ ーで ス ト ア ド プ ロ シージ ャ や ト リ
ガ を作成 し てい る 場合、 SQL 文の終止符を、 DBMS に
おけ る ス ト ア ド プ ロ シージ ャ 、 ま たは ト リ ガで使用す
る 予定のない文字に変更す る 。 バ ッ ク ク ォー ト 文字 (`)
な ど が適切
デー タ ベー ス か ら ど れだけ頻繁にテーブル リ ス ト を リ
フ レ ッ シ ュ す る か を指定 し ます。 デフ ォ ル ト は 30 分で
す。
[テーブル リ ス ト の再描
画]
4
以下のいずれかの操作を し ます。
•
環境設定項目の設定を現行の接続に適用 し た上で、 DB 環境設
定 ダ イ ア ロ グ ボ ッ ク ス を閉 じ ずに操作を続け る には、 [更新]
ボ タ ン を ク リ ッ ク し ます。
•
環境設定項目の設定を現行の接続に適用 し た上で、 DB 環境設
定 ダ イ ア ロ グ ボ ッ ク ス を閉 じ る には、 [OK] ボ タ ン を ク リ ッ
ク し ます。
InfoMaker に よ っ て、 環境設定項目の設定は、 IM.INI の database セ
ク シ ョ ン に保存 さ れ ます。
デー タ ベース と の接続
169
デー タ ベース環境設定項目の設定
170
InfoMaker
第 1 2 章
デー タ ベース接続に関する ト ラ ブル
シ ュ ーテ ィ ン グ
こ の章について
こ の章では、 InfoMaker において、 デー タ ベース と の接続で発生 し
た問題を以下の ツールを使用 し て解決す る 方法について解説 し ま
す。
内容
•
デー タ ベース ト レース
•
ODBC ド ラ イ バ マネージ ャ ト レース
•
JDBC ド ラ イ バ マネージ ャ ト レース
項目
ト ラ ブルシ ュ ーテ ィ ン グ ツールの概要
デー タ ベース ト レース ツールの使い方
ODBC ド ラ イ バ マネージ ャ ト レース ツールの使い方
JDBC ド ラ イ バ マネージ ャ ト レース ツールの使い方
ページ
171
172
181
186
ト ラ ブルシ ュ ーテ ィ ング ツールの概要
InfoMaker は、問題の解決のためにデー タ ベース と の接続を ト レー
スす る のに利用で き る い く つかの ツールを備え てい ます。
表 12-1: デー タ ベース ト レース ツール
使用する ツール
デー タ ベース ト レース
ODBC ド ラ イ バ マネー
ジ ャ ト レース
JDBC ド ラ イ バ マネー
ジ ャ ト レース
デー タ ベース と の接続
ト レースで き るデー タ ベース接続
InfoMaker でデー タ ベース イ ン タ フ ェ ース を
介 し て ア ク セ スする 任意のデー タ ベース
ODBC デー タ ソ ース のみ
JDBC デー タ ベース のみ
171
デー タ ベース ト レース ツールの使い方
デー タ ベース ト レース ツールの使い方
本節では、 デー タ ベー ス ト レ ー ス ツ ールの使い方について説明 し ま
す。
デー タ ベース ト レース ツール
デー タ ベース ト レース ツールを使用す る と 、デー タ ベースへのア ク セ
ス 中に InfoMaker が実行す る 内部 コ マ ン ド が記録 さ れ ます。 開発環境
で、 デー タ ベース と の接続状況を ト レース で き ます。
デー タ ベース ト レース の出力は、 InfoMaker に よ っ て DBTRACE.LOG
(デフ ォ ル ト ) と い う 名前の ロ グ フ ァ イ ルま たは指定 し た ロ グ フ ァ イ
ルに書 き 込まれ ます。 デー タ ベース の ト レース を最初に起動 し た と き
に、 InfoMaker に よ っ て コ ン ピ ュ ー タ 上に ロ グ フ ァ イ ルが作成 さ れ ま
す。 ト レース は、 デー タ ベース と の接続が解除 さ れ る ま で続 き ます。
1 つの接続に対するデー タ ベース ト レース ツールの使い方
デー タ ベース ト レース ツールは、 一度に 1 つの DBMS の、 1 つのデー
タ ベース接続に対 し てだけ使用で き ます。
た と えば、 あ る アプ リ ケーシ ョ ンが、 ODBC デー タ ソ ース と Adaptive
Server Enterprise デー タ ベース の両方に接続 し てい る 場合、 ODBC 接続
と Adaptive Server Enterprise 接続の ど ち ら か を ト レース で き ますが、 両
方を同時に ト レース で き ません。
デー タ ベース ト レース ツールの利用
デー タ ベース に接続 し てい る 場合、デー タ ベース ト レース ツールか ら
得 ら れ る 情報を利用 し て、InfoMaker が内部的に行っ てい る 処理につい
て調べ る こ と がで き ます。 ロ グ フ ァ イ ルの内容か ら 以下の こ と が可能
にな り ます。
172
•
InfoMaker が、 デー タ ベース と ど の よ う なや り と り を し てい る かの
把握
•
デー タ ベース と の接続で発生 し た問題の確認 と 解決
•
デー タ ベース と の接続で発生 し た問題について テ ク ニ カル サポー
ト セ ン タ に連絡す る 際の情報の提供
InfoMaker
第 12 章
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ング
InfoMaker に加え て、 接続 し てい る DBMS に関す る 知識があれば、 ロ
グ の情報 を調べて、 デー タ ベー ス 接続の問題 を自分で解決で き ま す。
技術サポー ト を受け る 必要があ る 場合は、テ ク ニ カル サポー ト セ ン タ
へ連絡す る 前に、 デー タ ベース ト レース ツールを実行 し て く だ さ い。
そ し て、 ト レ ー ス の ロ グ を、 テ ク ニ カル サポー ト セ ン タ の担当者に
送っ て く だ さ い。
デー タ ベース ト レース ロ グの内容
ト レース フ ァ イルの
デ フ ォル ト の内容
デフ ォ ル ト では、デー タ ベース ト レース ツールでデー タ ベース と の接
続を ト レースす る と 、 ロ グ フ ァ イ ルに以下の情報が記録 さ れます。
•
デー タ ベース に接続す る ために使用 し たパ ラ メ ー タ
•
各デー タ ベース処理の実行時間 (マ イ ク ロ 秒単位)
•
デー タ ベー ス 内のテーブルやカ ラ ム情報を、 取得 し た り 表示 し た
り す る ために実行 さ れた内部 コ マ ン ド 。 こ の コ マ ン ド の例を以下
に示 し ます。
•
SELECT、 INSERT、 UPDATE、 DELETE な ど の SQL 文を準備 し 実
行す る コ マ ン ド
•
カ ラ ム の記述を取得す る コ マ ン ド
•
テーブル行を フ ェ ッ チす る コ マ ン ド
•
ユーザが指定す る 値を カ ラ ム にバ イ ン ド す る コ マ ン ド (接続す
る デー タ ベース がバ イ ン ド 変数を サポー ト し てい る 場合)
•
デー タ ベース の変更を コ ミ ッ ト や ロ ールバ ッ ク す る コ マ ン ド
•
デー タ ベース と の接続を解除す る コ マ ン ド
•
デー タ ベース イ ン タ フ ェ ース を シ ャ ッ ト ダ ウ ンす る コ マ ン ド
DBI コ マ ン ド 名や最後のデー タ ベース接続か ら ロ グ入力処理完了ま で
の経過時間を含め る 選択をす る こ と がで き ます。ま た、すべての フ ェ ッ
チ要求か ら 、バ イ ン ド や実行情報お よ びデー タ を除 く こ と がで き ます。
DB ト レース ダ イ ア ロ
グボ ッ ク スでの選択
DB ト レース ダ イ ア ロ グ ボ ッ ク ス では、 以下の項目をデー タ ベース ト
レ ー ス フ ァ イ ルに取 り 込んだ り 除外 し た り す る た めの選択 を 行い ま
す。
•
バイ ン ド 変数
デー タ ベース か ら 取得 し た結果集合カ ラ ム に関す る
メ タ デー タ
デー タ ベース と の接続
•
フ ェ ッ チ ・ バッ フ ァ
•
DBI 名
各フ ェ ッ チ要求か ら の戻 り 値デー タ
処理 さ れ る デー タ ベース イ ン タ フ ェース コ マ ン ド
173
デー タ ベース ト レース ツールの使い方
•
要求の実行時間 DBI コ マ ン ド を 処理す る た めに要求 さ れ る 時間。
間隔の単位は、 千分の ミ リ 秒 (マ イ ク ロ 秒)
•
DBTrace のレ ジ ス ト
リ 設定
デー タ ベー ス に接続 し て か ら の合計時間。 時間の単位
は、 千分の ミ リ 秒 (マ イ ク ロ 秒)
累積時間
DB ト レース ダ イ ア ロ グ ボ ッ ク ス での選択は、 レ ジ ス ト リ に保存 さ れ
ます。 デー タ ベース ト レース ユーテ ィ リ テ ィ 環境設定用の Windows
レ ジ ス ト リ は、
HKEY_CURRENT_USER\Software\Sybase\InfoMaker\11.5\DBTrace
キーの下に格納 さ れ ます。 こ のキーの下の レ ジ ス ト リ 文字列は、
ShowBindings、 FetchBuffers、 ShowDBINames、 Timing、 SumTiming、
LogFileName、 お よ び ShowDialog です。 ト レース出力フ ァ イ ルに完全
な フ ァ イ ル名を割 り 当て る LogFileName 文字列以外は、 すべての文字
列を 0 ま たは 1 で設定す る こ と がで き ます。
デー タ ベース接続が ト レース可能な場合、 ShowDialog レ ジ ス ト リ 文字
列を設定 し て、 DB ト レー ス ダ イ ア ロ グ ボ ッ ク ス の表示を抑制す る こ
と がで き ます。 こ れは、 DB ト レース ダ イ ア ロ グ ボ ッ ク ス で変更す る
こ と がで き ない唯一の ト レース レ ジ ス ト リ 文字列です。 DB ト レー ス
ダ イ ア ロ グボ ッ ク ス を表示 し ない よ う にす る ためには、 ShowDialog を
0 に設定す る 必要があ り ます。
DBTrace の INI フ ァ
イル設定
レ ジ ス ト リ にア ク セ ス し ない場合は、 IM.INI を使用 し て ト レース フ ァ
イ ル設定を格納す る こ と がで き ます。INI フ ァ イ ルに次の値を少な く と
も 1 つ持つ [DbTrace] セ ク シ ョ ン を追加 し 、InfoMaker を再起動 し ます。
[DbTrace]
ShowDBINames=0
FetchBuffers=1
ShowBindings=1
SumTiming=1
Timing=1
ShowDialog=1
LogFileName=dbtrace.log
キー ワ ー ド は レ ジ ス ト リ と 同 じ で、 同 じ 意味を持ち ます。 デー タ ベー
ス に再び接続す る と 、 初期設定を INI フ ァ イ ルか ら 受け取 り 、 それ ら
を修正す る と き に、 変更が INI フ ァ イ ルに書 き 出 さ れ ます。
LogFileName の フ ァ イ ル名が絶対パ ス を 含 ま な い場合は、 Documents
and Settings\<username>\Application Data\InfoMaker11.5 に ロ グ フ ァ イ
ル を 書 き 出 し ま す。 <username> は login ID で す。 INI フ ァ イ ル に
DbTrace 設定がない場合は、 レ ジ ス ト リ 設定が使用 さ れ ます。
174
InfoMaker
第 12 章
エ ラ ー メ ッ セージ
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ング
デー タ ベー ス ト レ ー ス ユーテ ィ リ テ ィ が書 き 込み権限を持つ ト レ ー
ス出力フ ァ イ ルを開 く こ と がで き ない場合には、 指定 さ れた ト レー ス
フ ァ イ ルが作成で き ないか、 ま たは開 く こ と がで き ない こ と を エ ラ ー
メ ッ セージが知 ら せます。 ト レース ユーテ ィ リ テ ィ ド ラ イ バが正常に
ロ ー ド で き ない場合は、 現行の イ ン ス ト ールでは選択 さ れた ト レー ス
DBMS を サ ポー ト し て い な い こ と を メ ッ セージ ボ ッ ク ス が通知 し ま
す。
デー タ ベース ト レース ロ グの書式
デー タ ベー ス ト レー ス ロ グ フ ァ イ ルの内容は、 ア ク セ ス す る デー タ
ベー ス や、 実行す る デー タ ベー ス 処理に よ っ て異な り ま す。 し か し 、
ロ グ フ ァ イ ルへの出力では、 サ ポー ト さ れ て い る すべて のプ ラ ッ ト
フ ォ ームお よ びデー タ ベース で、 以下の基本書式が使用 さ れ ます。
COMMAND:(time)
{additional_information}
パラ メ ー タ
COMMAND
time
additional_information
例
説明
InfoMaker が、 デー タ ベース処理を実行す る 内
部コ マン ド
InfoMaker がデー タ ベース処理を実行す る のに
要 し た時間 (マ イ ク ロ 秒単位)。 適用 さ れ る 精
度は、 使用 し てい る オペレーテ ィ ン グ シ ス テ
ムの タ イ ミ ン グ メ カ ニズ ムに よ っ て異な る
(オプシ ョ ン) コ マ ン ド に関す る 追加情報。 こ
こ に記録 さ れ る 情報はデー タ ベー ス の処理内
容に よ っ て異な る
た と えば、 以下に示す ロ グ フ ァ イ ルの一部では、 InfoMaker が、 コ マ
ン ド を 実行 し て SQL Anywhere デー タ ベー ス テ ー ブ ル か ら 2 行 を
フ ェ ッ チ し た こ と が示 さ れてい ます。
FETCH NEXT:
COLUMN=400
FETCH NEXT:
COLUMN=500
(0.479 MS)
COLUMN=Marketing COLUMN=Evans
(0.001 MS)
COLUMN=Shipping COLUMN=Martinez
ト レース ロ グ フ ァ イ ルに [DBI 名を表示] と [累積時間を表示] を選
択 し た場合、 同 じ ロ グに次の 2 行が追加 さ れ ます。
FETCH NEXT:(DBI_FETCHNEXT) (1.459 MS / 3858.556 MS)
COLUMN=400 COLUMN=Marketing COLUMN=Evans
FETCH NEXT:(DBI_FETCHNEXT) (0.001 MS / 3858.557 MS)
COLUMN=500 COLUMN=Shipping COLUMN=Martinez
デー タ ベース と の接続
175
デー タ ベース ト レース ツールの使い方
デー タ ベース ト レース出力の詳細な例については、179 ページの 「デー
タ ベース ト レース ロ グのサン プル」 を参照 し て く だ さ い。
デー タ ベース ト レース ツールの起動
InfoMaker において、 デー タ ベース ト レース ツールは、 デフ ォ ル ト で
オ フ にな っ てい ます。 デー タ ベース ト レース ツールは、 デー タ ベース
接続を ト レースす る ために起動で き ます。
v
デー タ ベース ト レース ツールを起動する
1
ト レースす る デー タ ベース接続に対応す る DB プ ロ フ ァ イ ル設定
ダ イ ア ロ グボ ッ ク ス を開 き ます。
2
[接続] タ ブで、 [ ト レ ー ス の生成] チ ェ ッ ク ボ ッ ク ス を チ ェ ッ ク
し て、 [OK] ボ タ ン ま たは [更新] ボ タ ン を ク リ ッ ク し ます (DB
プ ロ フ ァ イ ル設定 - OLE DB ダ イ ア ロ グボ ッ ク ス では [ ト レース の
生成] チ ェ ッ ク ボ ッ ク ス は [シ ス テ ム] タ ブにあ り ます)。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ、 編集 し たプ ロ
フ ァ イ ル名がハ イ ラ イ ト 表示 さ れます。
た と えば、 以下に、 Adaptive Server 12.5 Test に対す る デー タ ベース
プ ロ フ ァ イ ル エ ン ト リ の該当部分 を 示 し ま す。 デー タ ベー ス ト
レース を開始す る 設定は、 DBMS です。
[Default]
[value not set]
AutoCommit
"FALSE"
Database
"qadata"
DatabasePassword "00"
DBMS
"TRACE SYC Adaptive Server Enterprise"
DbParm
"Release='12.5'"
Lock
""
LogId
"qalogin"
LogPassword
"00171717171717"
Prompt
"FALSE"
ServerName
"Host125"
UserID
""
3
176
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス で [接続] ボ タ ン を ク リ ッ
ク し てデー タ ベース に接続 し ます。
InfoMaker
第 12 章
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ング
デー タ ベー ス の ト レ ー ス が有効にな っ た こ と を示す DB ト レ ー ス
ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。PowerBuilder が ト レース の出
力 を 書 き 出 す フ ァ イ ル の 位 置 を 入 力 す る こ と が で き ま す。
InfoMaker デフ ォ ル ト では、 InfoMaker はデー タ ベース ト レース の
出力 を DBTRACE.LOG と い う 名前の ロ グ フ ァ イ ルに書 き 込み ま
す。 DB ト レース ダ イ ア ロ グ ボ ッ ク ス で ロ グ フ ァ イ ル名 と 位置を
変更す る こ と がで き ます。
DB ト レ ー ス ダ イ ア ロ グ ボ ッ ク ス では、 デー タ ベー ス ト レ ー ス
フ ァ イ ルに必要な ト レ ー ス 情報の レ ベル を選択す る こ と も で き ま
す。
4
ト レース フ ァ イ ルに含めたい項目を選択 し て、 [OK] ボ タ ン を ク
リ ッ ク し ます。
InfoMaker はデー タ ベー ス に接続 し 、 接続の ト レ ー ス を 起動 し ま
す。
デー タ ベース ト レース ツールの停止
デー タ ベー ス接続の ト レース を い っ たん起動す る と 、 以下のいずれか
の操作が さ れ る ま で、 InfoMaker に よ る ロ グ フ ァ イ ルへの ト レース ロ
グの書 き 込みが続 き ます。
v
•
ト レース を停止 し た状態で同 じ デー タ ベース に再接続す る
•
ト レース の設定を し ていない別のデー タ ベース と 接続す る
デー タ ベース ト レース ツールを停止する
1
ト レース し てい る デー タ ベース に対す る DB プ ロ フ ァ イ ル設定 ダ
イ ア ロ グ ボ ッ ク ス を開 き 、[接続] タ ブの [ ト レース の生成] チ ェ ッ
ク ボ ッ ク ス のチ ェ ッ ク をはず し ます。
2
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グ ボ ッ ク ス の[OK]ボ タ ン を ク リ ッ
ク し ます。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ、 編集 し たプ ロ
フ ァ イ ル名がハ イ ラ イ ト 表示 さ れ ます。
3
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス内で、 接続す る デー タ ベー
ス を右 ク リ ッ ク し 、 ド ロ ッ プダ ウ ン メ ニ ュ ーか ら [再接続] を選
択 し ます。
InfoMaker はデー タ ベー ス に接続 し 、 接続の ト レ ー ス を 停止 し ま
す。
デー タ ベース と の接続
177
デー タ ベース ト レース ツールの使い方
デー タ ベース ト レース ロ グの使い方
InfoMaker は、 デー タ ベース ト レース ツールの出力を PBTRACE.LOG
と い う 名前の フ ァ イ ル (デフ ォ ル ト ) ま たは指定 し た ロ グ フ ァ イ ル
に書 き 込みます。 出力 さ れた ト レース ロ グ を使用 し て、 以下の操作
がで き ます。
•
任意のテ キ ス ト エデ ィ タ で、 デー タ ベース ト レース ロ グ フ ァ イ
ルを表示す る
•
デー タ ベース ト レース ロ グ フ ァ イ ルに、 コ メ ン ト を追加す る
•
デー タ ベース ト レース ロ グ フ ァ イ ルが大 き く な り すぎた場合、
フ ァ イ ルその も の を削除 し た り 、 フ ァ イ ルの内容を消去 し た り す
る
デー タ ベース ト レース ログの表示
InfoMaker セ ッ シ ョ ン中で あれば、 ロ グ フ ァ イ ルの内容はいつで も 表
示で き ます。
v
ログ フ ァ イルの内容を表示する
•
以下の方法か ら 、 ロ グ フ ァ イ ルを開 き ます。
•
InfoMaker のテ キ ス ト エデ ィ タ を使用す る 。 詳 し い手順につい
ては、 『ユーザーズ ガ イ ド 』 マニ ュ アルを参照 し て く だ さ い。
•
InfoMaker 以外の ツールで、 任意のテ キ ス ト エデ ィ タ を使用す
る
ログ フ ァ イルを開いたま まにする
InfoMaker を使用 し てい る 間、 ロ グ フ ァ イ ルを開いた ま ま に し てお く
と 、 デー タ ベース ト レース ツールは ロ グ フ ァ イ ルを更新 し ません。
デー タ ベース ト レース ログへの コ メ ン ト の追加
ト ラ ブルシ ュ ーテ ィ ン グ の た めの ツ ール と し てデー タ ベー ス ト レ ー
ス ロ グ を使用す る 場合、 フ ァ イ ルに コ メ ン ト を追加 し てお く と 便利で
す。 た と えば、 あ る 接続について、 日付、 時刻、 使用 し たデー タ ベー
ス サーバお よ び ク ラ イ ア ン ト ソ フ ト ウ ェ アのバージ ョ ン、ま たはその
ほかの有効な情報を ロ グに記録 し てお く こ と が考え ら れ ます。
178
InfoMaker
第 12 章
v
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ング
ログ フ ァ イルに コ メ ン ト を追加する
1
以下のいずれかの方法で、 DBTRACE.LOG フ ァ イ ルを開 き ます。
•
InfoMaker のテ キ ス ト エデ ィ タ を使用す る 。 (詳 し い手順につ
い て は、 『ユーザーズ ガ イ ド 』 マ ニ ュ ア ル を 参照 し て く だ さ
い。)
•
InfoMaker 以外の ツールで、 任意のテ キ ス ト エデ ィ タ を使用す
る
2
ロ グ フ ァ イ ルに コ メ ン ト を追加 し ます。
3
変更 し た ロ グ フ ァ イ ルを保存 し ます。
ログの削除または消去
ト レース を設定 し てデー タ ベース に接続す る たびに、 既存の ロ グ フ ァ
イ ルに、 ト レー ス の出力が追加 さ れ ます。 し たが っ て、 デー タ ベー ス
に接続す る と き に ト レース を頻繁に設定 し てい る と 、 ト レース ロ グが
す ぐ に大 き く な っ て し ま い ます。
v
ログ フ ァ イルを適切な大き さ に保つ
•
定期的に、 以下のいずれかの操作を実行 し ます。
•
ロ グ フ ァ イ ルを開いて、 その内容を消去 し 、 フ ァ イ ルを空に
し て保存す る
デフ ォ ル ト の DBTRACE.LOG フ ァ イ ルま たは同一のデフ ォ ル
ト 以外の フ ァ イ ルを使用 し てい る 場合、 次回、 ト レース を設定
し てデー タ ベース に接続す る と 、 InfoMaker は、 空の フ ァ イ ル
に ト レース を出力 し ます。
•
ロ グ フ ァ イ ルを削除す る
次 回、 ト レ ー ス を 設 定 し て デ ー タ ベ ー ス に 接 続 す る と 、
InfoMaker に よ り 新 し い ロ グ フ ァ イ ルが自動的に作成 さ れ ま
す。
デー タ ベース ト レース ログのサン プル
こ の節では、 ロ グ フ ァ イ ルに出力 さ れ る デー タ ベー ス ト レー ス ロ グ
の例を示 し 、 ロ グ フ ァ イ ルの内容について簡単に説明 し ます。
デー タ ベース と の接続
179
デー タ ベース ト レース ツールの使い方
こ の例では、 [累積時間を表示] を有効に し て接続を ト レー ス し ます。
こ の ロ グは、 InfoMaker アプ リ ケーシ ョ ン を実行 し て、 公開デー タ ベー
ス の著者に関す る 情報を表示 し た と き の も のです。 SELECT 文は Author
テーブルか ら 情報を取得す る こ と を示 し てい ます。
デー タ ベー ス ト レ ー ス が内部 コ マ ン ド を 記録す る と き に使用す る 精
度 (た と えばマ イ ク ロ 秒単位な ど) は、 使用 し てい る オペレーテ ィ ン
グ シ ス テ ム の タ イ ミ ン グ メ カ ニ ズ ム に よ っ て異な り ま す。 し たが っ
て、 実際のデー タ ベース ト レース ロ グの タ イ ミ ン グの精度は、 こ の例
と は異な る 場合があ り ます。
デー タ ベース と の接続
CONNECT TO TRACE SYC Adaptive Server Enterprise:
DATABASE=pubs2
LOGID=bob
SERVER=HOST12
DPPARM=Release='12.5.2',StaticBind=0
SELECT 文の準備
PREPARE:
SELECT authors.au_id, authors.au_lname, authors.state
FROM authors
WHERE ( authors.state not in ( 'CA' ) )
ORDER BY authors.au_lname ASC (3.386 MS / 20.349 MS)
カ ラ ム記述の取得
DESCRIBE: (0.021 MS / 20.370 MS)
name=au_id,len=12,type=CHAR,pbt=1,dbt=1,ct=0,prec=0,
scale=0
name=au_lname,len=41,type=CHAR,pbt=1,dbt=1,ct=0,
prec=0,scale=0
name=state,len=3,type=CHAR,pbt=1,dbt=1,ct=0,prec=0,
scale=0
メ モ リ バッ フ ァ をカ
ラ ムにバイ ン ド
BIND SELECT OUTPUT BUFFER (DataWindow):
(0.007 MS / 20.377 MS)
name=au_id,len=12,type=CHAR,pbt=1,dbt=1,ct=0,prec=0,
scale=0
name=au_lname,len=41,type=CHAR,pbt=1,dbt=1,ct=0,
prec=0,scale=0
name=state,len=3,type=CHAR,pbt=1,dbt=1,ct=0,prec=0,
scale=0
SELECT 文の実行
EXECUTE: (0.001 MS / 20.378 MS)
結果集合か ら行を
フェ ッチ
FETCH NEXT: (0.028 MS / 20.406 MS)
au_id=648-92-1872 au_lname=Blotchet-Hall state=OR
FETCH NEXT: (0.012 MS / 20.418 MS)
au_id=722-51-5454 au_lname=DeFrance state=IN
...
FETCH NEXT: (0.010 MS / 20.478 MS)
au_id=341-22-1782 au_lname=Smith state=KS
180
InfoMaker
第 12 章
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ング
FETCH NEXT: (0.025 MS / 20.503 MS)
*** DBI_FETCHEND *** (rc 100)
デー タ ベース変更の更
新と コ ミ ッ ト
PREPARE:
UPDATE authors SET state = 'NM'
WHERE au_id = '648-92-1872' AND au_lname = 'BlotchetHalls' AND state = 'OR' (3.284 MS / 23.787 MS)
EXECUTE: (0.001 MS / 23.788 MS)
GET AFFECTED ROWS: (0.001 MS / 23.789 MS)
^ 1 Rows Affected
COMMIT: (1.259 MS / 25.048 MS)
デー タ ベース と の接続
の解除
DISCONNECT: (0.764 MS / 25.812 MS)
デー タ ベース イ ン タ
フ ェ ースのシ ャ ッ ト
ダウン
SHUTDOWN DATABASE INTERFACE: (0.001 MS / 25.813 MS)
ODBC ド ラ イバ マネージ ャ ト レース ツールの使い方
こ の節では、ODBC ド ラ イ バ マネージ ャ ト レース の使い方について説
明 し ます。
ODBC ド ラ イバ マネージ ャ ト レース
ODBC ド ラ イ バ マ ネージ ャ ト レ ー ス を使用す る と 、 InfoMaker か ら 、
ODBC イ ン タ フ ェ ー ス を 経由 し て ア ク セ ス し て い る ODBC デー タ
ソ ースへの接続を ト レース で き ます。
デー タ ベース ト レース ツール と は異な り 、ODBC ド ラ イ バ マネージ ャ
ト レー ス ツールでは、 ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を経
由す る 接続を ト レース で き ません。
ツールの機能
ODBC ド ラ イ バ マネージ ャ ト レース は、 ODBC デー タ ソ ース に接続
し てい る 状態で、 InfoMaker の ODBC API 呼び出 し 、 SQLDriverConnect、
SQLGetInfo、 SQLFetch な ど につい て の情報 を 記録 し ま す。 こ の情報は、
SQL.LOG と い う 名前のデフ ォ ル ト ロ グ フ ァ イ ル、 ま たは指定の ロ グ
フ ァ イ ルに書 き 込まれます。
ツールから の出力の利
用
デー タ ベー ス ト レー ス ツール と 同様に、 ODBC ド ラ イ バ マネージ ャ
ト レー ス か ら 得 ら れ る 情報を使用す る と 、 以下の こ と が可能にな り ま
す。
デー タ ベース と の接続
181
ODBC ド ラ イバ マネージ ャ ト レース ツールの使い方
•
ODBC デー タ ソ ース に接続中の InfoMaker の内部的な処理の把握
•
ODBC と の接続で発生 し た問題の確認 と 解決
•
デー タ ベース と の接続で発生 し た問題について テ ク ニ カル サポー
ト セ ン タ に連絡す る 際の情報の提供
InfoMaker の ODBC API 呼び出 し に関 し て詳細な情報が必要な場合は、
デー タ ベース ト レース ツールではな く ODBC ド ラ イ バ マネージ ャ ト
レース を使用 し ます。
ツールの使い分け
パ フ ォ ーマ ン スに関する注意
ODBC ド ラ イ バ マネージ ャ ト レース を使用す る と 、 InfoMaker で操作
し てい る と き に、 パ フ ォ ーマ ン ス が低下す る 場合があ り ます。 こ のた
め、 ODBC ド ラ イ バ マネージ ャ ト レース は、 デバ ッ グだけ を目的に使
用 し 、 それ以外の場合は使用 し ないで く だ さ い。
InfoMaker は、ODBC ド ラ イ バ マネージ ャ を SQL.LOG と い う デフ ォ ル
ト ロ グ フ ァ イ ル ま た は 指 定 し た ロ グ フ ァ イ ル に 書 き 込 み ま す。
SQL.LOG のデフ ォ ル ト の位置はルー ト デ ィ レ ク ト リ です。
SQL.LOG フ ァ イル
ODBC ド ラ イバ マネージ ャ ト レースの起動
ODBC 接続を ト レースす る ために ODBC ド ラ イ バ マネージ ャ ト レー
ス を起動す る には、 デー タ ベース プ ロ フ ァ イ ルを編集す る 必要があ り
ます。
ODBC ド ラ イバ マネージ ャ ト レースの起動
ODBC ド ラ イ バ マネージ ャ ト レ ー ス を起動す る には、 以下の手順に
従 っ て、 ト レ ー ス す る 接続のデー タ ベー ス プ ロ フ ァ イ ル を 編集 し ま
す。
v
182
ODBC ド ラ イバ マネージ ャ ト レース を起動する
1
ト レースす る ODBC 接続に対応す る DB プ ロ フ ァ イ ル設定 ODBC ダ イ ア ロ グ ボ ッ ク ス を開 き ます。
2
[オプシ ョ ン] タ ブで、 [ODBC API 呼出の ト レース] チ ェ ッ ク ボ ッ
ク ス をチ ェ ッ ク し ます。
3
(オプシ ョ ン) ODBC ド ラ イ バ マネージ ャ ト レース の ロ グの出力
先 と な る ロ グ フ ァ イ ルを指定す る には、[ ト レース フ ァ イ ル] ボ ッ
ク ス にパ ス名を入力 し ます。
InfoMaker
第 12 章
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ング
ま たは
(オプシ ョ ン) 参照 ([...]) ボ タ ン を ク リ ッ ク し て、 [ ト レース フ ァ
イ ル] ボ ッ ク ス に既存の ロ グ フ ァ イ ルのパ ス名を表示 し ます。
デフ ォ ル ト では、 [ODBC API 呼出の ト レース] チ ェ ッ ク ボ ッ ク ス
がチ ェ ッ ク さ れていて、 ト レース フ ァ イ ルが指定 さ れていない場
合、 ODBC ド ラ イ バ マ ネージ ャ ト レ ー ス の出力はデ フ ォ ル ト の
SQL.LOG フ ァ イ ルに書 き 込まれ ます。
4
[OK] ボ タ ン ま たは [更新] ボ タ ン を ク リ ッ ク し ます。
ま たは
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス 内で、 接続す る デー タ ベー
ス を右 ク リ ッ ク し 、 ド ロ ッ プダ ウ ン メ ニ ュ ーか ら [再接続] を選
択 し ます。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ、 編集 し たプ ロ
フ ァ イ ル名がハ イ ラ イ ト 表示 さ れ ます。
設定は、 InfoMaker に よ っ て レ ジ ス ト リ 内のデー タ ベース プ ロ
フ ァ イ ルのエ ン ト リ
(HKEY_CURRENT_USER\Software\Sybase\11.5\DatabaseProfiles
キー) に保存 さ れます。
た と えば、 以下に、 Employee と い う 名前の ODBC デー タ ソ ース に
対す る デー タ ベー ス プ ロ フ ァ イ ル エ ン ト リ の該当部分 を 示 し ま
す。 ODBC ド ラ イ バ マネージ ャ ト レース (ConnectOption DBParm
パ ラ メ ー タ に対応) を開始す る 設定は、 強調で示 さ れてい ます。
DBMS
"ODBC"
...
DbParm
"ConnectString='DSN=Emloyee;UID=dba;
PWD=00c61737',ConnectOption='SQL_OPT_TRACE,SQL_OPT_
TRACE_ON;SQL_OPT_TRACEFILE,C:\Temp\odbctrce.log'"
5
デー タ ベース と の接続
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス で [接続] ボ タ ン を ク リ ッ
ク し てデー タ ベース に接続 し ます。
ま たは
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス 内で、 接続す る デー タ ベー
ス を右 ク リ ッ ク し 、 ド ロ ッ プダ ウ ン メ ニ ュ ーか ら [再接続] を選
択 し ます。
183
ODBC ド ラ イバ マネージ ャ ト レース ツールの使い方
デー タ ベース と の接続が さ れ る と と も に、 その ODBC デー タ ベー
ス接続に対す る ト レース が起動 さ れ、 指定 し た ロ グ フ ァ イ ルに出
力が書 き 込まれます。
ODBC ド ラ イバ マネージ ャ ト レースの停止
ODBC ド ラ イ バ マネージ ャ ト レース で ODBC 接続の ト レース を い っ
たん起動す る と 、 ト レース を停止す る ま で、InfoMaker に よ る ロ グ フ ァ
イ ルへの ト レー ス 出力の書 き 込みが続 き ます。 以降の節に記述 さ れて
い る よ う に、 ト レー ス を停止 し た後に、 変更を反映 さ せ る ために再接
続す る 必要があ り ます。
ODBC ド ラ イバ マネージ ャ ト レースの停止
v
ODBC ド ラ イバ マネージ ャ ト レース を停止する
1
ト レース し てい る デー タ ベース接続に対す る DB プ ロ フ ァ イ ル設
定 ダ イ ア ロ グ ボ ッ ク ス を開 き ます。
詳 し い手順については、182 ページの 「ODBC ド ラ イ バ マネージ ャ
ト レース の起動」 を参照 し て く だ さ い。
2
[オプシ ョ ン] タ ブで、 [ODBC API 呼出の ト レース] チ ェ ッ ク ボ ッ
ク ス のチ ェ ッ ク をはず し ます。
[ ト レー ス フ ァ イ ル] ボ ッ ク ス に ロ グ フ ァ イ ルのパ ス 名を指定 し
た場合、 後で ト レース を再開す る 場合に備え て、 ト レー ス フ ァ イ
ルの名前を残 し ておけ ます。
3
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス の[OK]ボ タ ン を ク リ ッ
ク し ます。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ、 編集 し たプ ロ
フ ァ イ ル名がハ イ ラ イ ト 表示 さ れます。
4
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス の [接続] ボ タ ン を ク リ ッ
ク す る か、 DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス 内で、 接続す る
デー タ ベース を右 ク リ ッ ク し 、 ド ロ ッ プダ ウ ン メ ニ ュ ーか ら [再
接続] を選択 し ます。
InfoMaker はデー タ ベー ス に接続 し 、 接続の ト レ ー ス を 停止 し ま
す。
184
InfoMaker
第 12 章
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ング
ODBC ド ラ イバ マネージ ャ ト レース ログの表示
InfoMaker セ ッ シ ョ ン中であれば、 ODBC ド ラ イ バ マネージ ャ ト レー
ス ロ グ フ ァ イ ルの内容はいつで も 表示で き ます。
SQL.LOG の保存場所
デフ ォ ル ト の SQL.LOG フ ァ イ ルの保存場所については、181 ページの
「ODBC ド ラ イ バ マネージ ャ ト レース」 を参照 し て く だ さ い。
v
ログ フ ァ イルの内容を表示する
•
以下のいずれかの方法で、 SQL.LOG フ ァ イ ル、 ま たは指定 し た ロ
グ フ ァ イ ルを開 き ます。
•
InfoMaker のテ キ ス ト エデ ィ タ を使用す る (詳 し い手順につい
ては、 『ユーザーズ ガ イ ド 』 マニ ュ アルを参照)
•
InfoMaker の外部の環境で、 任意のテ キ ス ト エデ ィ タ を使用す
る
ログ フ ァ イルを開いたま まにする
InfoMaker を使用 し てい る 間、 ロ グ フ ァ イ ルを開いた ま ま に し てお く
と 、 ODBC ド ラ イ バ マネージ ャ ト レー ス ツールはその フ ァ イ ルを更
新 し ません。
ODBC ド ラ イバ マネージ ャ ト レース ログのサン プル
こ の節では、ODBC ド ラ イ バ マネージ ャ ト レース か ら 出力 さ れ る ロ グ
の例を示 し 、 その内容について説明 し ます。 こ の例は EAS Demo DB へ
の ODBC 接続の ト レース の一部です。
各 ODBC API 呼び出 し の詳細については、 ODBC のマニ ュ アルを参照
し て く だ さ い。
IM115 e58-a58EXIT SQLSetConnectAttrW with return
code 0 (SQL_SUCCESS)
SQLHDBC 021E1590
SQLINTEGER 104 <SQL_ATTR_TRACE>
SQLPOINTER 0x00000001 (BADMEM)
SQLINTEGER 0
デー タ ベース と の接続
185
JDBC ド ラ イバ マネージ ャ ト レース ツールの使い方
IM115 e58-a58ENTER SQLSetConnectAttrW
SQLHDBC 021E1590
SQLINTEGER 105 <SQL_ATTR_TRACEFILE>
SQLPOINTER 0x03A67602 (NYI)
SQLINTEGER -3
JDBC ド ラ イバ マネージ ャ ト レース ツールの使い方
こ の節では、 JDBC ド ラ イ バ マネージ ャ ト レース の使い方について説
明 し ます。
JDBC ド ラ イバ マネージ ャ ト レース
JDBC ド ラ イ バ マ ネージ ャ ト レ ー ス を 使用す る と 、 InfoMaker か ら 、
JDBC イ ン タ フ ェ ー ス を経由 し て ア ク セ ス し てい る デー タ ベー ス への
接続を ト レース で き ます。
デー タ ベース ト レース ツール と は異な り 、JDBC ド ラ イ バ マネージ ャ
ト レー ス ツールでは、 ネ イ テ ィ ブ デー タ ベー ス イ ン タ フ ェ ー ス を経
由す る 接続を ト レース で き ません。
ツールの機能
JDBC ド ラ イ バ マ ネ ー ジ ャ ト レ ー ス は、 InfoMaker が JDBC イ ン タ
フ ェ ース を経由 し てデー タ ベース に接続 し てい る と き に、 現在 ロ ー ド
し てい る ド ラ イ バ オブジ ェ ク ト (Sybase の jConnect JDBC ド ラ イ バな
ど) が生成 し たエ ラ ーお よ び情報 メ ッ セージ を ロ グ フ ァ イ ルに記録 し
ま す。 こ の情報は、 JDBC.LOG と い う 名前のデ フ ォ ル ト ロ グ フ ァ イ
ル、 ま たは指定の ロ グ フ ァ イ ルに書 き 込まれます。 ト レース出力の量
は、 使用 し てい る JDBC ド ラ イ バに よ っ て異な り ます。
ツールか らの出力の利
用
デー タ ベース ト レース ツール と 同様に、JDBC ド ラ イ バ マネージ ャ ト
レース か ら 得 ら れ る 情報を使用す る と 、以下の こ と が可能にな り ます。
186
•
JDBC イ ン タ フ ェース を経由 し てデー タ ベース接続中の InfoMaker
の内部的な処理の把握
•
JDBC 接続で発生 し た問題の確認 と 解決
•
デー タ ベース と の接続で発生 し た問題について テ ク ニ カル サポー
ト セ ン タ に連絡す る 際の情報の提供
InfoMaker
第 12 章
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ング
JDBC ド ラ イ バに関 し て詳細な情報が必要な場合は、 デー タ ベース ト
レー ス ツールではな く JDBC ド ラ イ バ マネージ ャ ト レー ス を使用 し
ます。
ツールの使い分け
パフ ォ ーマ ン スに関する注意
JDBC ド ラ イ バ マネージ ャ ト レー ス を使用す る と 、 InfoMaker で操作
し てい る と き に、 パ フ ォ ーマ ン ス が低下す る 場合があ り ます。 こ のた
め、 JDBC ド ラ イ バ マネージ ャ ト レース は、 デバ ッ グだけ を目的に使
用 し 、 それ以外の場合は使用 し ないで く だ さ い。
JDBC.LOG フ ァ イル
InfoMaker は、 JDBC ド ラ イ バ マネージ ャ ト レース の出力を
JDBC.LOG と い う デフ ォ ル ト ロ グ フ ァ イ ル ま たは指定 し た ロ グ フ ァ
イ ルに書 き 込みます。 JDBC.LOG のデフ ォ ル ト の位置は temp デ ィ レ
ク ト リ です。
JDBC ド ラ イバ マネージ ャ ト レースの起動
JDBC 接続を ト レースす る ために JDBC ド ラ イ バ マネージ ャ ト レース
を起動す る には、 デー タ ベース プ ロ フ ァ イ ルを編集す る 必要があ り ま
す。
JDBC ド ラ イバ マネージ ャ ト レースの起動
JDBC ド ラ イ バ マ ネージ ャ ト レ ー ス を起動す る には、 以下の手順に
従 っ て、 ト レ ー ス す る 接続のデー タ ベー ス プ ロ フ ァ イ ル を 編集 し ま
す。
v
デー タ ベース と の接続
JDBC ド ラ イバ マネージ ャ ト レース を起動する
1
ト レース し たい JDB 接続に対応す る DB プ ロ フ ァ イ ル設定 -
JDBC ダ イ ア ロ グ ボ ッ ク ス を開 き ます。
2
[オプシ ョ ン] タ ブで、 [JDBC コ ールを ト レース] チ ェ ッ ク ボ ッ ク
ス をチ ェ ッ ク し ます。
3
(オプシ ョ ン) JDBC ド ラ イ バ マネージ ャ ト レース の ロ グの出力先
と な る ロ グ フ ァ イ ルを指定す る には、 [ ト レー ス フ ァ イ ル] ボ ッ
ク ス にパ ス名を入力す る か、 参照 ([...]) ボ タ ン を ク リ ッ ク し て、
[ ト レ ー ス フ ァ イ ル] ボ ッ ク ス に既存の ロ グ フ ァ イ ルのパ ス 名を
表示 し ます。
187
JDBC ド ラ イバ マネージ ャ ト レース ツールの使い方
デフ ォ ル ト では、 [JDBC コ ールを ト レース] チ ェ ッ ク ボ ッ ク ス が
チ ェ ッ ク さ れていて、 代わ り の ト レース フ ァ イ ルが指定 さ れてい
ない場合、 JDBC ド ラ イ バ マネージ ャ ト レース の出力はデフ ォ ル
ト の JDBC.LOG フ ァ イ ルに書 き 込ま れ ます。
4
[OK] ボ タ ン ま たは [更新] ボ タ ン を ク リ ッ ク し ます。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ、 編集 し たプ ロ
フ ァ イ ル名がハ イ ラ イ ト 表示 さ れます。 InfoMaker は、 レ ジ ス ト リ
内のデー タ ベース プ ロ フ ァ イ ルのエ ン ト リ に設定を保存 し ます。
た と えば、 以下に、 Employee と い う 名前の JDBC デー タ ベース に
対す る デー タ ベー ス プ ロ フ ァ イ ル エ ン ト リ の DBMS と DBParm
文字列の部分 を 示 し ま す。 JDBC ド ラ イ バ マ ネージ ャ ト レ ー ス
(TraceFile DBParm パ ラ メ ー タ に対応) を開始す る 設定は、 強調で
示 さ れてい ます。
DBMS
DbParm
5
"TRACE JDBC"
"Driver='com.sybase.jdbc3.jdbc.SybDriver',
URL='jdbc:sybase:Tds:199.93.178.151:
5007/tsdata',TraceFile='c:\temp\jdbc.log'"
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス で [接続] ボ タ ン を ク リ ッ
ク し てデー タ ベース に接続 し ます。
ま たは
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス 内で、 接続す る デー タ ベー
ス を右 ク リ ッ ク し 、 ド ロ ッ プダ ウ ン メ ニ ュ ーか ら [再接続] を選
択 し ます。
InfoMaker はデー タ ベース に接続 し 、 JDBC デー タ ベース接続の ト
レース を起動 し 、 指定 し た ロ グ フ ァ イ ルに出力を書 き 込みます。
JDBC ド ラ イバ マネージ ャ ト レースの停止
JDBC ド ラ イ バ マネージ ャ ト レース で JDBC 接続の ト レース をい っ た
ん起動す る と 、 ト レー ス を停止す る ま で、 InfoMaker に よ る ロ グ フ ァ
イ ルへの ト レース出力の書 き 込みが続 き ます。
188
InfoMaker
第 12 章
デー タ ベース接続に関する ト ラ ブルシ ュ ーテ ィ ング
JDBC ド ラ イバ マネージ ャ ト レースの停止
v
JDBC ド ラ イバ マネージ ャ ト レース を停止する
1
ト レース し てい る デー タ ベース接続に対す る DB プ ロ フ ァ イ ル設
定 ダ イ ア ロ グ ボ ッ ク ス を開 き ます。
詳 し い手順については、 187 ページの 「JDBC ド ラ イ バ マネージ ャ
ト レース の起動」 を参照 し て く だ さ い。
2
[オプシ ョ ン] タ ブで、 [JDBC コ ールを ト レース] チ ェ ッ ク ボ ッ ク
ス のチ ェ ッ ク をはず し ます。
[ ト レ ー ス フ ァ イ ル] ボ ッ ク ス に ロ グ フ ァ イ ルのパ ス 名を指定 し
た場合、 後で ト レース を再開す る 場合に備え て、 ト レース フ ァ イ
ルの名前を残 し ておけ ます。
3
DB プ ロ フ ァ イ ル設定 - JDBC ダ イ ア ロ グ ボ ッ ク ス の [OK] ボ タ ン
を ク リ ッ ク し ます。
DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ、 編集 し たプ ロ
フ ァ イ ル名がハ イ ラ イ ト 表示 さ れ ます。
4
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス の [接続] ボ タ ン を ク リ ッ
ク す る か、 DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス 内で、 接続す る
デー タ ベース を右 ク リ ッ ク し 、 ド ロ ッ プダ ウ ン メ ニ ュ ーか ら [再
接続] を選択 し ます。
InfoMaker はデー タ ベー ス に接続 し 、 接続の ト レ ー ス を 停止 し ま
す。
JDBC ド ラ イバ マネージ ャ ト レース ログの表示
InfoMaker セ ッ シ ョ ン中で あれば、 JDBC ド ラ イ バ マネージ ャ ト レー
ス ロ グ フ ァ イ ルの内容はいつで も 表示で き ます。
JDBC.LOG の保存場所
デフ ォ ル ト の JDBC.LOG フ ァ イ ルの保存場所については、 186 ページ
の 「JDBC ド ラ イ バ マネージ ャ ト レース」 を参照 し て く だ さ い。
v
ログ フ ァ イルの内容を表示する
•
デー タ ベース と の接続
以下のいずれかの方法で、 JDBC.LOG フ ァ イ ル、 ま たは指定 し た
ロ グ フ ァ イ ルを開 き ます。
189
JDBC ド ラ イバ マネージ ャ ト レース ツールの使い方
•
InfoMaker のテ キ ス ト エデ ィ タ を使用す る (詳 し い手順につい
ては、 『ユーザーズ ガ イ ド 』 マニ ュ アルを参照)
•
InfoMaker の外部の環境で、 任意のテ キ ス ト エデ ィ タ を使用す
る
ログ フ ァ イルを開いたま まにする
InfoMaker を使用 し てい る 間、 ロ グ フ ァ イ ルを開いた ま ま に し てお く
と 、 JDBC ド ラ イ バ マ ネージ ャ ト レ ー ス ツールは ロ グ を更新 し ま せ
ん。
190
InfoMaker
第
5
部
付録
こ の付録では、 PBODB115 初期設定 フ ァ イルを変更する
方法について説明 し ます。
付録
A
こ の付録について
PBODB115 初期設定フ ァ イルへ
の関数の追加
通常は、 PBODB115 初期設定フ ァ イ ルを変更す る 必要はあ り ませ
ん。 し か し 、 使用す る バ ッ ク エ ン ド DBMS と の、 InfoMaker の
ODBC ま た は OLE DB イ ン タ フ ェ ー ス を 介 し た 接続に応 じ て、
PBODB115 初期設定フ ァ イ ルに関数を追加す る 場合があ り ます。
こ の付録では、 必要に応 じ て、 PBODB115 初期設定フ ァ イ ルに関
数を追加す る 方法について解説 し ます。
内容
項目
PBODB115 初期設定フ ァ イ ルについて
PBODB115.INI への関数の追加
ページ
193
194
PBODB115 初期設定 フ ァ イルについて
PBODB115 初期設定フ ァ
イルの目的
ODBC イ ン タ フ ェ ー ス を 介 し て デ ー タ に ア ク セ ス す る と き 、
InfoMaker では、ODBC API 呼び出 し でサポー ト さ れていない、バ ッ
ク エ ン ド DBMS の 拡 張 機 能 へ の ア ク セ ス を 管 理 す る た め に、
PBODB115 初期設定フ ァ イ ル (PBODB115.INI) が使用 さ れ ま す。
拡張機能には、特定の DBMS 固有の SQL 構文や関数呼び出 し な ど
があ り ます。
PBODB115.INI の編集
通常、 PBODB115.INI を変更す る 必要はあ り ません。 こ の フ ァ イ ル
をむやみに変更す る と InfoMaker が正常に動作 し ない こ と があ り
ま す。 テ ク ニ カ ル サ ポ ー ト セ ン タ か ら 指 示 さ れ な い 限 り 、
PBODB115.INI を変更 し ないで く だ さ い。
ただ し 、 使用 し てい る バ ッ ク エ ン ド DBMS 用に関数を追加す る 必
要があ る 場合は、 こ の PBODB115.INI を編集で き ます。
デー タ ベース と の接続
193
PBODB115.INI への関数の追加
PBODB115.INI を変更す る 場合は、 操作の前に必ず、 既存の フ ァ イ ル
のバ ッ ク ア ッ プ コ ピーを作成 し て く だ さ い。 ま た、 ど の よ う な変更を
加え たかについて、記録を残す よ う に し て く だ さ い。PBODB115.INI を
変更 し た後で、 テ ク ニ カルサポー ト セ ン タ の技術サポー ト を受け る 場
合は、 PBODB115.INI を変更 し た こ と を告げ、 その変更内容をお知 ら
せ く だ さ い。
PBODB115.INI への関数の追加
PBODB115.INI には、 ODBC ド ラ イ バがサポー ト す る DBMS の関数が
記述 さ れ て い ま す。 バ ッ ク エ ン ド DBMS と と も に使用す る 関数 を
PBODB115.INI に追加す る 必要が あ る 場合は、 以下のいずれかの操作
を行い ます。
•
既存のセ ク シ ョ ン PBODB115.INI に、 使用 し て い る バ ッ ク エ ン ド
デー タ ベー ス 用の関数セ ク シ ョ ン が存在す る 場合は、 そ の セ ク
シ ョ ン に関数を追加 し ます。
•
新 し いセ ク シ ョ ン PBODB115.INI に、 使用 し て い る バ ッ ク エ ン ド
DBMS 用のセ ク シ ョ ン を新規に作成 し 、 その新規作成 し た関数セ
ク シ ョ ンに関数を追加 し ます。
既存のセ ク シ ョ ンへの関数の追加
PBODB115.INI に、 使用 し てい る バ ッ ク エ ン ド DBMS 用のセ ク シ ョ ン
がすでに存在す る 場合は、 以下の手順に従っ て新 し い関数を追加 し ま
す。
v
PBODB115.INI の既存のセ ク シ ョ ンに関数を追加するには
1
2
194
以下の ど ち ら かの方法で、 PBODB115.INI を開 き ます。
•
InfoMaker のテ キ ス ト エデ ィ タ を使用す る 。 (詳 し い手順につ
い て は、 『ユーザーズ ガ イ ド 』 マ ニ ュ ア ル を 参照 し て く だ さ
い。)
•
InfoMaker の外部の環境で、 任意のテ キ ス ト エデ ィ タ を使用す
る
PBODB115.INI の DBMS ド ラ イ バ / DBMS の設定セ ク シ ョ ン内で
バ ッ ク エ ン ド DBMS のエ ン ト リ を見つけ ます。
InfoMaker
付録 A
PBODB115 初期設定 フ ァ イルへの関数の追加
た と えば、 SQL Anywhere の PBODB115.INI のエ ン ト リ は以下の よ
う にな り ます。
;*********************************************
; 設定に関する詳細はこ のフ ァ イルの後半にある [DBMS
; ド ラ イバ /DBMS 設定] のコ メ ン ト を参照 し て く だ さ い。
;*********************************************
...
[SQL Anywhere]
PBSyntax='WATCOM50_SYNTAX'
PBDateTime='STANDARD_DATETIME'
PBFunctions='ASA_FUNCTIONS'
PBDefaultValues='autoincrement,current date,
current time,current timestamp,timestamp,
null,user'
PBDefaultCreate='YES'
PBDefaultAlter='YES'
PBDefaultExpressions='YES'
DelimitIdentifier='YES'
PBDateTimeInvalidInSearch='NO'
PBTimeInvalidInSearch='YES'
PBQualifierIsOwner='NO'
PBSpecialDataTypes='WATCOM_SPECIALDATATYPES'
IdentifierQuoteChar='"'
PBSystemOwner='sys,dbo'
PBUseProcOwner='YES'
SQLSrvrTSName='YES'
SQLSrvrTSQuote='YES'
SQLSrvrTSDelimit='YES'
ForeignKeyDeleteRule='Disallow if Dependent Rows
Exist (RESTRICT),Delete any Dependent Rows
(CASCADE),Set Dependent Columns to NULL
(SET NULL)'
TableListType='GLOBAL TEMPORARY'
3
PBODB115.INI において、 使用 し てい る バ ッ ク エ ン ド DBMS の関
数情報が記述 さ れてい る セ ク シ ョ ン の名前を検索 し ます。
こ のセ ク シ ョ ン を検索す る には、 DBMS ド ラ イ バ / DBMS を設定
す る エ ン ト リ の中で、 以下の形式の行を調べます。
PBFunctions='section_name'
た と えば、SQL Anywhere 用の DBMS ド ラ イ バ / DBMS の設定エ ン
ト リ に あ る 以 下 の 行 に よ っ て、 関 数 セ ク シ ョ ン の 名 前 が
ASA_FUNCTIONS であ る こ と がわか り ます。
PBFunctions='ASA_FUNCTIONS'
デー タ ベース と の接続
195
PBODB115.INI への関数の追加
4
PBODB115.INI において、 使用 し てい る バ ッ ク エ ン ド DBMS に対
す る 関数セ ク シ ョ ン を検索 し ます。
例 と し て、 SQL Anywhere 用の関数セ ク シ ョ ン を以下に示 し ます。
;*********************************************
; 関数
;*********************************************
[ASA_FUNCTIONS]
AggrFuncs=avg(x),avg(distinct x),count(x),
count(distinct x),count(*),list(x),
list(distinct x),max(x),max(distinct x),
min(x),min(distinct x),sum(x),sum(distinct x)
Functions=abs(x),acos(x),asin(x),atan(x),
atan2(x,y),ceiling(x),cos(x),cot(x),degrees(x),
exp(x),floor(x),log(x),log10(x),
mod(dividend,divisor),pi(*),power(x,y),
radians(x),rand(),rand(x),
remainder(dividend,divisor),round(x,y),
sign(x),sin(x),sqrt(x),tan(x),
"truncate"(x,y),ascii(x),byte_length(x),
byte_substr(x,y,z),char(x),char_length(x),
charindex(x,y),difference(x,y)insertstr(x,y,z),
lcase(x),left(x,y),length(x), locate(x,y,z),
lower(x),ltrim(x),patindex('x',y),repeat(x,y),
replicate(x,y),right(x,y),rtrim(x),
similar(x,y),soundex(x),space(x),str(x,y,z),
string(x,...),stuff(w,x,y,z),substr(x,y,z),
trim(x),ucase(x),upper(x),date(x),
dateformat(x,y),datename(x,y),day(x),
dayname(x),days(x),dow(x),hour(x),hours(x),
minute(x),minutes(x),minutes(x,y),month(x),
monthname(x),months(x),months(x,y),now(*),
quarter(x),second(x),seconds(x),seconds(x,y),
today(*),weeks(x),weeks(x,y),year(x),years(x),
years(x,y),ymd(x,y,z),dateadd(x,y,z),
datediff(x,y,z),datename(x,y),datepart(x,y),
getdate(),cast(x as y),convert(x,y,z),
hextoint(x),inttohex(x),
connection_property(x,...),datalength(x),
db_id(x),db_name(x),db_property(x),
next_connection(x),next_database(x),
property(x),property_name(x),
property_number(x),property_description(x),
argn(x,y,...),coalesce(x,...),
estimate(x,y,z),estimate_source(x,y,z),
experience_estimate(x,y,z),ifnull(x,y,z),
196
InfoMaker
付録 A
PBODB115 初期設定 フ ァ イルへの関数の追加
index_estimate(x,y,z),isnull(x,...),
number(*),plan(x),traceback(*)
5
新 し い関数を追加す る には、 以下に示す よ う に、 適切な関数 リ ス
ト の最後に、 カ ン マに続けて関数名を入力 し ます。
集計関数は、 AggrFuncs リ ス ト の最後に追加 し ます。
•
集計関数
•
ほかの関数 集計関数以外の関数は、 Functions リ ス ト の最後に
追加 し ます。
英字の大文字 と 小文字の区別
使用 し てい る バ ッ ク エ ン ド DBMS が、 英字の大文字 と 小文字を区
別す る 場合は、 関数名を追加す る と き に、 大文字 と 小文字を区別
し て正 し く 指定 し て く だ さ い。
以下の例では、 Functions リ ス ト の最後に、 SQL Anywhere 用の関数
を新 し く 追加 し てい ます。
;*********************************************
; 関数
;*********************************************
[ASA_FUNCTIONS]
AggrFuncs=avg(x),avg(distinct x),count(x),
count(distinct x),count(*),list(x),
list(distinct x),max(x),max(distinct x),
min(x),min(distinct x),sum(x),sum(distinct x)
Functions=abs(x),acos(x),asin(x),atan(x),
atan2(x,y),ceiling(x),cos(x),cot(x),degrees(x),
exp(x),floor(x),log(x),log10(x),
mod(dividend,divisor),pi(*),power(x,y),
radians(x),rand(),rand(x),
...
number(*),plan(x),traceback(*),newfunction()
6
変更内容を PBODB115.INI に保存 し ます。
新 し いセ ク シ ョ ンへの関数の追加
使用 し てい る バ ッ ク エ ン ド DBMS 用のエ ン ト リ が、 PBODB115.INI に
存在 し な い場合は、 以下の手順に従 っ て必要な セ ク シ ョ ン を 作成 し 、
適切な関数を追加 し ます。
デー タ ベース と の接続
197
PBODB115.INI への関数の追加
は じ めに
PBODB115.INI におけ る 、 バ ッ ク エ ン ド DBMS に対す る 設定の詳細に
ついては、 PBODB115.INI の最後にあ る コ メ ン ト を参照 し て く だ さ い。
v
PBODB115.INI の既存のセ ク シ ョ ンに関数を追加するには
1
2
以下の ど ち ら かの方法で、 PBODB115.INI を開 き ます。
•
InfoMaker のテ キ ス ト エデ ィ タ を使用す る 。 (詳 し い手順につ
い て は、 『ユーザーズ ガ イ ド 』 マ ニ ュ ア ル を 参照 し て く だ さ
い。)
•
InfoMaker 以外の ツールで、 任意のテ キ ス ト エデ ィ タ を使用す
る
PBODB115 初期設定フ ァ イ ルの DBMS ド ラ イ バ / DBMS の設定セ
ク シ ョ ン を編集 し 、 使用 し てい る バ ッ ク エ ン ド DBMS 用のエ ン ト
リ を追加 し ます。
名前の検索
使用 し てい る バ ッ ク エ ン ド DBMS 用に DBMS ド ラ イ バ / DBMS の
設定セ ク シ ョ ン で使用す る エ ン ト リ の識別子は、 PBODB115.INI
で、 そのバ ッ ク エ ン ド DBMS に対 し て使用 し てい る 識別子 と 同 じ
識別子を使用 し て く だ さ い。
こ の と き 、 以下の操作を確実にす る 必要があ り ます。
•
PBODB115.INI の最後にあ る コ メ ン ト の指示に従い ます。
•
PBODB115.INI の DBMS ド ラ イ バ / DBMS の設定セ ク シ ョ ン に
おけ る 、 既存のエ ン ト リ と 同 じ 構文を使用 し ます。
•
PBFunctions に対 し てセ ク シ ョ ン名を記述 し ます。
以下は、 DB2/2 デー タ ベース のエ ン ト リ の該当部分を示す例です。
;***********************************************
;DBMS ド ラ イバ /DBMS 設定
;***********************************************
[DB2/2]
...
PBFunctions='DB22_FUNCTIONS'
...
3
198
PBODB115.INI の関数セ ク シ ョ ン を編集 し 、使用 し てい る バ ッ ク エ
ン ド DBMS 用のエ ン ト リ を追加 し ます。
InfoMaker
付録 A
PBODB115 初期設定 フ ァ イルへの関数の追加
こ の と き 、 以下の操作を確実にす る 必要があ り ます。
•
PBODB115.INI の最後にあ る コ メ ン ト の指示に従い ます。
•
PBODB115.INI の関数セ ク シ ョ ン におけ る 、 既存のエ ン ト リ と
同 じ 構文を使用 し ます。
•
DBMS ド ラ イ バ / DBMS の設定エ ン ト リ の PBFunctions で指定
し たセ ク シ ョ ン名を、 関数セ ク シ ョ ンに対 し て指定 し ます。
以下に例を示 し ます。
;***********************************************
; 関数
;***********************************************
[DB22_FUNCTIONS]
AggrFuncs=avg(),count(),list(),max(),min(),sum()
Functions=curdate(),curtime(),hour(), ...
4
以下に示す よ う に、 適切な関数 リ ス ト の最後に、 カ ン マに続け て
関数名を入力 し ます。
集計関数は、 AggrFuncs リ ス ト の最後に追加 し ます。
•
集計関数
•
ほかの関数 集計関数以外の関数は、 Functions リ ス ト の最後に
追加 し ます。
英字の大文字 と 小文字の区別
使用 し てい る バ ッ ク エ ン ド DBMS が、 英字の大文字 と 小文字を区
別す る 場合は、 関数名を追加す る と き に、 大文字 と 小文字を区別
し て正 し く 指定 し て く だ さ い。
以下の例では、 Functions リ ス ト の最後に、 DB2/2 用の関数 substr()
を新 し く 追加 し てい ます (太字で表示)。
;***********************************************
; 関数
;***********************************************
[DB22_FUNCTIONS]
AggrFuncs=avg(),count(),list(),max(),min(),sum()
Functions=curdate(),curtime(),hour(), substr()
5
デー タ ベース と の接続
変更内容を PBODB115.INI に保存 し ます。
199
PBODB115.INI への関数の追加
200
InfoMaker
索引
A
ASE DBMS 識別子 63
AutoCommit デー タ ベース環境設定項目
デー タ ベース プ ロ フ ァ イ ルで設定 165
C
CT-Library ク ラ イ ア ン ト ソ フ ト ウ ェ ア
Sybase Adaptive Server Enterprise 63, 68
Sybase シ ス テ ム 50
D
デー タ ベース環境設定項目
167
144
DBMS
PBODB115 初期設定フ ァ イ ル内のエン ト リ
194, 198
シ ス テ ム テーブル、 表示 155
デー タ ベース プ ロ フ ァ イ ルの値 27
バ ッ ク エン ド 、 ODBC 関数の追加 194
DBMS 識別子
ASE 63
I10 85
IN9 85
O10 117
O90 117
ORA 117
SNC 97
SYC 63
DBParm パ ラ メ ー タ
Sybase Open Client のセキ ュ リ テ ィ サービ ス
72
DBTRACE.LOG フ ァ イ ル
コ メ ン ト の追加 179
デー タ ベース と の接続
削除ま たは消去 179
サンプル出力 180
書式 175
説明 172
内容 173
表示 178
開いた ま ま の 178
DB 環境設定 [DB の接続を保持 ] 167
DB 環境設定 [ 開始時にデー タ ベース に接続 ]
167
DB 環境設定 [ 拡張属性の使用 ] 159, 167
DB 環境設定 ダ イ ア ロ グボ ッ ク ス
[SQL 構文の終止符 ] ボ ッ ク ス 129
説明 166
[ 全般 ] ページ、 値 167
DB 環境設定 ダ イ ア ロ グボ ッ ク ス の [ 全般 ] ページ
167
DB 環境設定プ ロ パテ ィ シー ト
[ 全般 ] プ ロ パテ ィ ページ、 値 149
[DB 環境設定 ] プ ロ パテ ィ シー ト の [ 全般 ] プ ロ
パテ ィ ページ 149
DB 環境設定 [ 読み取 り 専用 ] 159, 167
[DB 情報ダ イ ア ロ グの表示 ] チ ェ ッ ク ボ ッ ク ス
147
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス
DBParm 文字列の文字数制限 163
[JDBC コ ールを ト レース ] チ ェ ッ ク ボ ッ ク ス
188
JDBC ド ラ イ バ マネージ ャ ト レース、 停止
189
[ODBC API 呼出の ト レース ] チ ェ ッ ク ボ ッ ク ス
183
ODBC ド ラ イ バ マネージ ャ ト レース、 停止
184
[ 自動 コ ミ ッ ト モー ド ] チ ェ ッ ク ボ ッ ク ス
165
接続のための値の指定 10
201
索引
[ ト レース の生成 ] チ ェ ッ ク ボ ッ ク ス 177
[ ト レース フ ァ イ ル ] ボ ッ ク ス 188
プ ロ フ ァ イ ルの編集 147
分離レベル (Lock) 165
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス の [JDBC
コ ールを ト レース ] チ ェ ッ ク ボ ッ ク ス 188
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス の [ODBC
API 呼出の ト レース ] チ ェ ッ ク ボ ッ ク ス 183
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス の [ ト レー
ス の生成 ] チ ェ ッ ク ボ ッ ク ス 177
DB プ ロ フ ァ イ ル設定 ダ イ ア ロ グボ ッ ク ス の [ ト レー
ス フ ァ イ ル ] ボ ッ ク ス 188
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス
共有プ ロ フ ァ イ ルの表示 150
説明 144
ボ タ ン 144
[DB へ自動的に接続 ] シ ス テ ム オプシ ョ ン 142
DLL フ ァ イ ル
JDBC 接続 39
ODBC32.DLL 17
ODBC.DLL 17
ODBC 接続 17
PBODB115.DLL 17
デー タ ベース イ ン タ フ ェ ース接続 58
DSN (デー タ ソ ース名) 値、 ODBC 接続文字列 27
境設定項目の設定 149
共有デー タ ベース プ ロ フ ァ イ ルの ロ ーカルな保
存 151
共有時のデー タ ベース プ ロ フ ァ イ ルの場所の指
定 149
説明 148
パ ス ワー ド の表示の抑制 147
InfoMaker 初期設定フ ァ イ ルの AutoConnect の設定
143
Informix ク ラ イ ア ン ト ソ フ ト ウ ェ ア 85, 94
Informix デー タ ベース イ ン タ フ ェース
I10 でサポー ト し てい る 機能 88
イ ン ス ト ール 95
サポー ト し てい る デー タ 型 86
サポー ト し てい る デー タ ベース 85
接続 コ ン ポーネ ン ト 92
接続の確認 95
デー タ ベース の準備 93
必要な ク ラ イ ア ン ト ソ フ ト ウ ェ ア 94
Informix の DateTime デー タ 型 86
Informix の interval デー タ 型 87
Informix の Time デー タ 型 87
ISQL、 ス ト ア ド プ ロ シージ ャ の イ ン ス ト ールに使
用 82
E
J
EAS Demo DB
17
I
I10 DBMS 識別子 85
identity カ ラ ム と デー タ 型 (Sybase Adaptive Server
Enterprise) 64
IN9 DBMS 識別子 85
InfoMaker
[DB へ自動的に接続 ] シ ス テ ム オプシ ョ ン 142
ほかの製品に付属の場合の接続 6
利用で き ない [ プ レ ビ ュ ー ] タ ブ 9
InfoMaker 初期設定フ ァ イ ル
AutoConnect の設定 143
共有デー タ ベース プ ロ フ ァ イ ルのデー タ ベース環
202
Java 仮想マシ ン、 イ ン ス ト ール 39
Java の Web サ イ ト 37
JDBC.LOG フ ァ イ ル
説明 186
デフ ォ ル ト 以外の ロ グ フ ァ イ ルを代わ り に使用
188
パフ ォーマ ン ス に関す る 注意 187
表示 189
開いた ま ま の 189
JDBC イ ン タ フ ェース
Java 仮想マシ ン 39
Java ク ラ ス パ ッ ケージ 39
PBJDB115.DLL 41
コ ン ポーネ ン ト 38
サポー ト さ れてい る デー タ 型 41
InfoMaker
索引
接続パ ラ メ ー タ の指定 43
説明 37
デー タ ベース サーバの設定 42
ド ラ イ バ 40
必須 DLL フ ァ イ ル 39
レ ジ ス ト リ エン ト リ 40
JDBC 接続、 ト ラ ブルシ ュ ーテ ィ ン グ 186
JDBC デー タ ベース イ ン タ フ ェ ース、 ト ラ ブル
シ ュ ーテ ィ ン グ 186
JDBC ド ラ イ バ、 ト ラ ブルシ ュ ーテ ィ ン グ 186
JDBC ド ラ イ バ マネージ ャ ト レース
各種プ ラ ッ ト フ ォームでの利用可能性 187
起動 187
説明 186
停止 189
デフ ォ ル ト 以外の ロ グ フ ァ イ ルの指定 188
パフ ォーマ ン ス に関す る 注意 187
ロ グの表示 189
JDBC の Web サ イ ト 37
L
Lock 値 と 分離レベル、 デー タ ベース プ ロ フ ァ イ
ルでの設定 165
Lock デー タ ベース環境設定項目
デー タ ベース プ ロ フ ァ イ ルで設定 165
LOG フ ァ イ ル
JDBC.LOG 186, 189
JDBC ド ラ イ バ マネージ ャ ト レース のデフ ォ
ル ト 以外の設定 188
PBTRACE.LOG 172, 178
SQL.LOG 181, 185
M
Microsoft SQL Native Client デー タ ベース イ ン タ
フ ェ ース
イ ン ス ト ール 102
サポー ト し てい る デー タ 型 98
サポー ト し てい る バージ ョ ン 97
接続 コ ン ポーネ ン ト 99
接続の確認 102
デー タ ベース と の接続
定義 102
デー タ ベース の準備 100
必要な ク ラ イ ア ン ト ソ フ ト ウ ェ ア 101
Microsoft Universal Data Access Web サ イ ト 45
Microsoft デー タ リ ン ク 、 OLE DB イ ン タ フ ェ ース
で使用 53
N
NewLogic、 デー タ ベース プ ロ フ ァ イ ルの設定
12
O
O10 DBMS 識別子 117
O10 Oracle 10g ド ラ イ バ 117
O90 DBMS 識別子 117
O90 Oracle 9i ド ラ イ バ 117
ODBC 23
ODBCINST 初期設定フ ァ イ ル 26
ODBC イ ン タ フ ェース
ODBC 初期設定フ ァ イ ル 26
PBODB115 初期設定フ ァ イ ル 193
使用 17
説明 16
デー タ ソ ースへの接続 144
ト ラ ブルシ ュ ーテ ィ ン グ 172, 181
必須 DLL フ ァ イ ル 17
必要な初期設定フ ァ イ ル 25
ODBC 関数
PBODB115 初期設定フ ァ イ ル内の新 し いセ ク
シ ョ ンへの追加 197
PBODB115 初期設定フ ァ イ ル内の既存のセ ク
シ ョ ンへの追加 194
ODBC 初期設定フ ァ イ ル
お よ び PBODB115 初期設定フ ァ イ ル 198
説明 26
ODBC 接続の ConnectString DBParm 27
ODBC 接続文字列 27
ODBC デー タ ソ ース
ODBCINST 初期設定フ ァ イ ル 26
ODBC 初期設定フ ァ イ ル 26
203
索引
ODBC 接続 17
PBODB115 初期設定フ ァ イ ル 193
Sybase SQL Anywhere 30
ア ク セ ス 25
コ ン フ ィ グ レーシ ョ ン と デー タ ベース プ ロ フ ァ イ
ルの作成 25
準備 24
定義 25
デー タ ベース プ ロ フ ァ イ ルの共有 148
デー タ ベース プ ロ フ ァ イ ルの編集 147
ト ラ ブルシ ュ ーテ ィ ン グ 172, 181
ト ラ ン ス レー タ 、 ド ラ イ バに対す る 選択 29
複数の定義 28
ODBC デー タ ソ ース の準備
Sybase SQL Anywhere 32
説明 24
ODBC デー タ ソ ース の定義
Sybase SQL Anywhere 33
コ ン フ ィ グ レーシ ョ ン と デー タ ベース プ ロ フ ァ イ
ルの作成 25
説明 25
デー タ ベース プ ロ フ ァ イ ルの共有 148
デー タ ベース プ ロ フ ァ イ ルの編集 147
複数のデー タ ソ ース 28
ODBC ド ラ イ バ
API 合致レベル 22
ODBC 接続 17
PBODB115 初期設定フ ァ イ ル 193
SQL 合致レベル 22
Sybase SQL Anywhere 30
合致レベル、 推奨 21
使用 17
説明 16
ト ラ ブルシ ュ ーテ ィ ン グ 172, 181
ト ラ ン ス レー タ 、 選択 29
複数層 20
ヘルプの表示 15, 23, 29
ODBC ド ラ イ バの合致レベル 21
ODBC ド ラ イ バ マネージ ャ 17
ODBC ド ラ イ バ マネージ ャ ト レース
起動 182
サンプル出力 185
説明 181
204
パフ ォーマ ン ス に関す る 注意 182
ロ グの表示 185
ODBC の API 合致レベル 22
ODBC の SQL 合致レベル 22
ODBC の拡張 SQL 合致レベル 22
ODBC の最小 SQL 合致レベル 22
ODBC の レベル 1 API 合致レベル 22
OLE DB イ ン タ フ ェ ース 46
PBOLE115.DLL 49
コ ン ポーネ ン ト 48
サポー ト し てい る オブジ ェ ク ト イ ン タ フ ェース
46
接続パ ラ メ ー タ の指定 52
デー タ プ ロ バ イ ダ 46
デー タ プ ロ バ イ ダの イ ン ス ト ール 51, 52
デー タ プ ロ バ イ ダの入手、 ほかのベン ダ 49
デー タ リ ン ク の使用 53
ヘルプ情報の入手 45
Open Client ソ フ ト ウ ェ ア、 Sybase 50, 68
Open Database Connectivity (ODBC)
ODBCINST 初期設定フ ァ イ ル 26
ODBC 初期設定フ ァ イ ル 26
コ ン ポーネ ン ト 17
説明 16
デー タ ソ ース の準備 24
デー タ ソ ース の定義 25
ド ラ イ バの合致レベル 22
ト ラ ン ス レー タ 、 ド ラ イ バに対する 選択 29
複数のデー タ ソ ース の定義 28
Oracle SQL*Net ク ラ イ ア ン ト ソ フ ト ウ ェ ア 123
Oracle ス ト ア ド プ ロ シージ ャ
LOB 出力パ ラ メ ー タ の使用 132
RPC 呼び出 し 132
Oracle デー タ ベース イ ン タ フ ェ ース
Oracle ス ト ア ド プ ロ シージ ャ の使用 128
サポー ト し てい る デー タ 型 118
サポー ト し てい る バージ ョ ン 117
接続 コ ン ポーネ ン ト 121
接続の確認 124
接続文字列ま たは記述子、 指定 127
定義 127
デー タ ベース の準備 122
必要な ク ラ イ ア ン ト ソ フ ト ウ ェ ア 123
InfoMaker
索引
ORA DBMS 識別子 117
ORA Oracle 11g ド ラ イ バ
117
P
pbcatcol テーブル 157
pbcatedt テーブル 157
pbcatfmt テーブル 157
pbcattbl テーブル 157
pbcatvld テーブル 157
PBIN9115.DLL フ ァ イ ル 92
PBJDB115.DLL 41
PBO10115.DLL フ ァ イ ル 117
PBO90115.DLL フ ァ イ ル 117
PBODB115.DLL フ ァ イ ル 17
PBODB115 初期設定フ ァ イ ル
ODBC 初期設定フ ァ イ ル内での DBMS セ ク
シ ョ ンの名前の検索 198
新 し いセ ク シ ョ ンへの関数の追加 197
英字の大文字 と 小文字の区別 197, 199
既存のセ ク シ ョ ンへの関数の追加 194
説明 193
特殊な timestamp カ ラ ムのサポー ト 36
PBOLE115.DLL フ ァ イ ル 49
PBORA115.DLL フ ァ イ ル 117
PBSNC115.DLL フ ァ イ ル 99
PBSYC2.SQL ス ク リ プ ト
ISQL で実行 82
PBSYC.SQL ス ク リ プ ト と の比較 81
WISQL で実行 83
実行す る タ イ ミ ン グ 80
説明 80
保存場所 79
PBSYC.SQL ス ク リ プ ト
ISQL で実行 82
PBSYC2.SQL ス ク リ プ ト と の比較 81
WISQL で実行 83
実行す る タ イ ミ ン グ 79
説明 79
保存場所 79
デー タ ベース と の接続
S
SERVER デ ィ レ ク ト リ フ ァ イ ル
Adaptive Server Enterprise デー タ ベース におけ る
ス ト ア ド プ ロ シージ ャ の イ ン ス ト ール
79
SNC DBMS 識別子 97
sp_pb115table ス ト ア ド プ ロ シージ ャ
PBSYC2.SQL ス ク リ プ ト 81
PBSYC.SQL ス ク リ プ ト 79
SQL Anywhere ODBC 設定 ダ イ ア ロ グボ ッ ク ス
33
SQL.LOG フ ァ イ ル
サンプル出力 185
説明 181
パフ ォーマ ン ス に関する 注意 182
表示 185
開いた ま ま の 185
SQL*Net ク ラ イ ア ン ト ソ フ ト ウ ェ ア、 Oracle
123
SQL Server ス ト ア ド プ ロ シージ ャ の PRINT 文
77
SQL 構文の終止符、 デー タ ベース ペ イ ン タ 内での
変更 129, 167
SQL フ ァ イ ル
PBSYC2.SQL 80
PBSYC.SQL 79
Sybase Adaptive Server AnywhereSybase SQL
Anywhere を参照
Sybase Adaptive Server Enterprise デー タ ベース イ ン
タ フ ェ ース
IDENTITY カ ラ ム 64
異種デー タ ベース間の結合に基づ く デー タ ウ ィ
ン ド ウ の作成 77
イ ン ス ト ール 69
サポー ト し てい る デー タ 型 64
サポー ト し てい る バージ ョ ン 63, 64
サポー ト し てい る プ ラ ッ ト フ ォーム 63, 64
ス ト ア ド プ ロ シージ ャ の イ ン ス ト ール 77
セキ ュ リ テ ィ サービ ス、 使用 71
接続の確認 69
定義 70
デ ィ レ ク ト リ サービ ス、 使用 73
デー タ ベース の準備 50, 67
205
索引
必要な ク ラ イ ア ン ト ソ フ ト ウ ェ ア 50, 68
Sybase Open Client ソ フ ト ウ ェ ア 50
説明 68
Sybase Open Client デ ィ レ ク ト リ サービ ス に対す る
DIT ベース 75
Sybase Open Client のセキ ュ リ テ ィ サービ ス
DBParm パ ラ メ ー タ 、 パケ ッ ト 単位のセキ ュ リ
テ ィ 73
DBParm パ ラ メ ー タ 、 ロ グ イ ン認証 72
使用条件 71
説明 71
Sybase Open Client のデ ィ レ ク ト リ サービ ス
DBParm パ ラ メ ー タ 76
サーバ名の指定 75
使用条件 74
説明 73
Sybase SQL Anywhere
LOG フ ァ イ ル 33
PBODB115 初期設定フ ァ イ ルへの関数の追加
194
開始オプシ ョ ン、 指定 34
コ ン フ ィ グ レーシ ョ ン と デー タ ベース プ ロ フ ァ イ
ルの作成 25
サポー ト し てい る バージ ョ ン 31
サポー ト し てい る プ ラ ッ ト フ ォーム 31
使用 17
使用す る ための準備 32
接続 コ ン ポーネ ン ト 31
デー タ ソ ース の定義 33
特殊な timestamp カ ラ ム 35
ネ ッ ト ワー ク サーバ、 含ま ない 30
リ モー ト デー タ ベースへのア ク セ ス 30
Sybase SQL Anywhere Transact-SQL の特殊な timestamp
35
Sybase、 ヘルプ情報の入手 23
sybsystemprocs デー タ ベース、 Sybase Adaptive Server
Enterprise 82, 83
SYC DBMS 識別子 63
T
timestamp、 Transact-SQL の特殊な
206
35
U
Unicode
Adaptive Server 65
ODBC 16, 40
OLE DB 48
Oracle9i、 Oracle 10g 119
サポー ト 16, 40
デー タ ベース パ ス ワー ド の暗号化
12
W
WISQL、 ス ト ア ド プ ロ シージ ャ の イ ン ス ト ール
83
あ
ア ク セ ス権、 シ ス テ ム テーブルに対す る 指定
160
アプ リ ケーシ ョ ン
ODBC 接続 17
デー タ ベース イ ン タ フ ェース接続 58
い
異種デー タ ベース間の結合
イ ン ス ト ール
Java 仮想マシ ン 39
77
え
英字の大文字 と 小文字の区別、 PBODB115 初期設
定フ ァ イ ル内 197, 199
か
拡張属性シ ス テ ム テーブル
DB 環境設定 [ 拡張属性の使用 ] に よ る 作成の制
御 159
DB 環境設定 [ 読み と り 専用 ] に よ る 更新の制御
InfoMaker
索引
159
ア ク セ ス権の制御 160
正確な作成の保証 154
説明 154
内容 157
表示 155
拡張属性シ ス テ ム テーブルに対す る ア ク セ ス権
の指定 160
カラム
identity、 Sybase Adaptive Server Enterprise 64
SQL 命名規約 24
拡張属性シ ス テ ム テーブル内の 157
特殊な timestamp、 Sybase SQL Anywhere 35
関数、 ODBC
PBODB115 初期設定フ ァ イ ル内の新 し いセ ク
シ ョ ンへの追加 197
PBODB115 初期設定フ ァ イ ル内の既存のセ ク
シ ョ ンへの追加 194
ロ ーカルな初期設定フ ァ イ ルへの保存 151
共有デー タ ベース プ ロ フ ァ イ ルの管理 152
く
ク ラ イ アン ト ソ フ ト ウ ェア
Informix 85, 94
Microsoft SQL Server 101
Oracle 123
Sybase Adaptive Server Enterprise
68
け
結果集合、 Oracle ス ト ア ド プ ロ シージ ャ の使用
129
さ
き
規則 x
基本手順
DBParm パ ラ メ ー タ の設定 163
JDBC ド ラ イ バ マネージ ャ ト レース の停止
189
ODBC デー タ ソ ース の準備 24
ODBC ド ラ イ バ マネージ ャ ト レース の停止
184
デー タ ベース イ ン タ フ ェース の定義 61
デー タ ベース環境設定項目の設定 164
デー タ ベース ト レース の停止 177
デー タ ベース パ ラ メ ー タ の設定 161
デー タ ベース プ ロ フ ァ イ ルの イ ン ポー ト お よ
びエ ク ス ポー ト 153
デー タ ベース プ ロ フ ァ イ ルの共有 148
デー タ ベース プ ロ フ ァ イ ルの選択に よ る 接続
144
デー タ ベース プ ロ フ ァ イ ルの編集 147
共有デー タ ベース プ ロ フ ァ イ ル
管理 152
設定 149
デー タ ベース と の接続
サーバ名、 Sybase Open Client デ ィ レ ク ト リ サービ
ス に対する 指定 75
し
シ ス テ ム オプシ ョ ン ダ イ ア ロ グボ ッ ク ス 142
シ ス テ ム テーブル チ ェ ッ ク ボ ッ ク ス の表示 155
シ ス テ ム テーブル、 表示 155
初期設定フ ァ イ ル
DBMS_PROFILES セ ク シ ョ ン 152
InfoMaker の AutoConnect の設定 143
ODBC 26
ODBCINST 26
ODBC 接続 25
PBODB115、 関数の追加 193
共有時のデー タ ベース プ ロ フ ァ イ ルの場所の
指定 149
接続パ ラ メ ー タ の保存 11, 146
パス ワ ー ド の表示の抑制 147
初期設定フ ァ イ ル内のデー タ ベース セ ク シ ョ ン
146
207
索引
す
ス ト ア ド プ ロ シージ ャ
Adaptive Server Enterprise デー タ ベースへの イ ン ス
ト ール 77
ISQL、 イ ン ス ト ールに使用 82
Microsoft SQL Server デー タ ベース イ ン タ フ ェース
に必要な し 78
PBSYC2.SQL ス ク リ プ ト に よ る 作成 81
PBSYC.SQL ス ク リ プ ト に よ る 作成 79
WISQL、 イ ン ス ト ールに使用 83
ス ク リ プ ト の実行 81
ス ク リ プ ト の保存場所 79
説明 78
ス ト ア ド プ ロ シージ ャ 、 Oracle
SQL 終止符の変更 129, 167
結果集合、 使用 129
結果集合、 例 130
使用方法 129
説明 128
デー タ ウ ィ ン ド ウ オブジ ェ ク ト と レ ポー ト の作成
131
ス ト ア ド プ ロ シージ ャ 、 SQL Server、 PRINT 文の使い
方 77
せ
セキ ュ リ テ ィ サービ ス、 Sybase Open ClientSybase
Open Client セキ ュ リ テ ィ サービ ス を参照
接続記述子
ODBC 27
Oracle 127
セ ミ コ ロ ン、 デフ ォ ル ト の SQL 終止符 129
て
デ ィ レ ク ト リ サービ ス、 Sybase Open ClientSybase
Open Client デ ィ レ ク ト リ サービ ス を参照
デー タ 型
Adaptive Server 64
Informix 86
Microsoft SQL Server 98
Oracle 118
208
SQL Server 98
Sybase Adaptive Server Enterprise 64
特殊な timestamp、 Transact-SQL 35
デー タ プ ロ バ イ ダ
お よ び OLE DB イ ン タ フ ェース 46
入手 49
デー タ ベース
InfoMaker での起動時の接続 142
ア ク セ ス 25
起動時ま たはペ イ ン タ か ら の接続 143
デー タ ベース イ ン タ フ ェース接続 58
デー タ ベース プ ロ フ ァ イ ルに よ る 接続 143,
144
初めての ロ グ イ ン 154
デー タ ベース イ ン タ フ ェース
Informix 85
JDBC 38
Microsoft SQL Server 97
Oracle 117
Sybase Adaptive Server Enterprise 63
接続 コ ン ポーネ ン ト 58
説明 57
定義 61
デー タ ベース の準備 60
デー タ ベース プ ロ フ ァ イ ルの イ ン ポー ト お よ び
エ ク ス ポー ト 153
デー タ ベース プ ロ フ ァ イ ルの共有 148
デー タ ベース プ ロ フ ァ イ ルの作成 25
デー タ ベース プ ロ フ ァ イ ルの編集 147
デー タ ベースへの接続 144
ト ラ ブルシ ュ ーテ ィ ン グ 172
デー タ ベース イ ン タ フ ェース で使用す る ための
デー タ ベース の準備
Informix 93
Microsoft SQL Server 100
Oracle 122
Sybase Adaptive Server Enterprise 50, 67
説明 60
デー タ ベース イ ン タ フ ェース の定義
Microsoft SQL Server 102
Oracle 127
Sybase Adaptive Server Enterprise 70
説明 61
デー タ ベース プ ロ フ ァ イ ルの イ ン ポー ト お よ び
InfoMaker
索引
エ ク ス ポー ト 153
デー タ ベース プ ロ フ ァ イ ルの共有 148
デー タ ベース プ ロ フ ァ イ ルの編集 147
167
デー タ ベース環境設定項目
DB 環境設定 ダ イ ア ロ グ ボ ッ ク ス での設定
166
Lock 165
[SQL 構文の終止符 ] 167
[開始時にデー タ ベース に接続] 167
[拡張属性の使用] 159, 167
[共有 DB プ ロ フ ァ イ ル] 167
共有 DB プ ロ フ ァ イ ル 149
自動 コ ミ ッ ト モー ド (AutoCommit) 165
設定方法 161
デー タ ベース プ ロ フ ァ イ ルで設定 9, 165
[読み取 り 専用] 159, 167
デー タ ベース と の接続の ト ラ ブルシ ュ ーテ ィ ン
グ
JDBC ド ラ イ バ マネージ ャ ト レース 186
ODBC ド ラ イ バ マネージ ャ ト レース 181
説明 171
デー タ ベース ト レース 172
デー タ ベース と の接続の ト レース
JDBC ド ラ イ バ マネージ ャ ト レース 186
ODBC ド ラ イ バ マネージ ャ ト レース 181
サンプル出力、 ODBC ド ラ イ バ マネージ ャ ト
レース 185
サンプル出力、 デー タ ベース ト レース 180
説明 171
デー タ ベース ト レース 172
デー タ ベース ト レース
サンプル出力 180
説明 172
ロ グの削除ま たは消去 179
ロ グの表示 178
ロ グ フ ァ イ ルの書式 175
ロ グ フ ァ イ ルの内容 173
ロ グへの コ メ ン ト の追加 179
デー タ ベース パ ラ メ ー タ
ConnectString 27
ODBC 接続 27
Sybase Open Client のデ ィ レ ク ト リ サービ ス
デー タ ベース と の接続
76
設定方法 161
デー タ ベース プ ロ フ ァ イ ル内の文字列の文字
数制限 163
デー タ ベース プ ロ フ ァ イ ル
DBParm 文字列の文字数制限 163
DB プ ロ フ ァ イ ル ダ イ ア ロ グボ ッ ク ス での選択
144
JDBC ド ラ イ バ マネージ ャ ト レース、 起動
187
JDBC ド ラ イ バ マネージ ャ ト レース、 停止
189
Microsoft SQL Native Client デー タ ベース イ ン タ
フ ェ ース 102
ODBC デー タ ソ ース の DBMS 値 27
ODBC デー タ ソ ース の接続文字列 27
ODBC ド ラ イ バ マネージ ャ ト レース、 起動
182
ODBC ド ラ イ バ マネージ ャ ト レース、 停止
184
Oracle デー タ ベース イ ン タ フ ェース 127
Sybase Adaptive Server Enterprise デー タ ベース
イ ン タ フ ェ ース 70
Sybase Open Client デ ィ レ ク ト リ サービ ス に対
する サーバ名 75
イ ン ポー ト お よ びエ ク ス ポー ト 153
共有 148, 150, 152
説明 6, 143
パス ワ ー ド の表示の抑制 147
[ 分離レベル ] お よ び [ 自動 コ ミ ッ ト モー ド ]
の設定 165
編集 147
デー タ ベース プ ロ フ ァ イ ルの イ ン ポー ト 153
デー タ ベース プ ロ フ ァ イ ルのエ ク ス ポー ト 153
デー タ ベースペ イ ン タ 、 SQL 終止符の変更 129
デー タ ベースへのア ク セ ス
JDBC 接続の ト ラ ブルシ ュ ーテ ィ ン グ 186
ODBC 接続の ト ラ ブルシ ュ ーテ ィ ン グ 181
ODBC デー タ ソ ース 25
任意の接続の ト ラ ブルシ ュ ーテ ィ ン グ 172
デー タ ベースへの接続
[DB へ自動的に接続 ] シ ス テ ム オプシ ョ ン
209
索引
142
JDBC 接続の ト ラ ブルシ ュ ーテ ィ ン グ 186
ODBC 接続の ト ラ ブルシ ュ ーテ ィ ン グ 181
概要 11
拡張属性シ ス テ ム テーブルの作成 154
起動時ま たはペ イ ン タ か ら の 143
説明 141, 146
デー タ ベース プ ロ フ ァ イ ルの選択に よ る 144
デー タ ベース プ ロ フ ァ イ ルの使い方 143
任意の接続の ト ラ ブルシ ュ ーテ ィ ン グ 172
ほかの製品に付属の InfoMaker 6
デー タ ベースへの初めての ロ グ イ ン 154
テーブル
SQL 命名規約 24
拡張属性内の 157
シ ス テ ム、 表示 155
テーブル と カ ラ ムの SQL 命名規約 24
テーブル と カ ラ ムの命名規約 24
テーブルの選択 ダ イ ア ロ グボ ッ ク ス、 [ シ ス テ ム テー
ブルを表示 ] チ ェ ッ ク ボ ッ ク ス 155
テ ク ニ カル ド キ ュ メ ン ト 、 Sybase、 ヘルプの使用
15, 61
手順、 基本
DBParm パ ラ メ ー タ の設定 163
と
ト ラ ン ス レー タ 、 ODBC 29
ト ラ ン ス レー タ の選択 ダ イ ア ロ グボ ッ ク ス
29
に
入力条件則、 拡張属性シ ス テ ム テーブル内
157
210
157
ふ
複数層 ODBC ド ラ イ バ 20
複数の ODBC デー タ ソ ース、 定義 28
[ プ レ ビ ュ ー ] タ ブ、 InfoMaker で利用で き ない 9
分離レベル と Lock 値、 デー タ ベース プ ロ フ ァ イ
ルでの設定 165
へ
ヘルプ 23
Java の Web サ イ ト 37
JDBC ド ラ イ バ マネージ ャ ト レース、 使用
187
JDBC の Web サ イ ト 37
Microsoft Universal Data Access 45
ODBC ド ラ イ バ 23, 29
ODBC ド ラ イ バ マネージ ャ ト レース、 使用
182
Sybase の Web サ イ ト 45
オン ラ イ ン ヘルプ、 使用 15, 23
デー タ ソ ース 15
デー タ ベース ト レース、 使用 172
編集
PBODB115 初期設定フ ァ イ ル 193
共有デー タ ベース プ ロ フ ァ イ ル 151
デー タ ベース プ ロ フ ァ イ ル 147
編集様式、 拡張属性シ ス テ ム テーブル内の 157
ら
は
パ ス ワー ド 、 初期設定フ ァ イ ルでの表示の抑制
ひ
表記規則 x
表示書式、 拡張属性シ ス テ ム テーブル内の
147
ラ ージ オブジ ェ ク ト 、 Oracle ス ト ア ド プ ロ シー
ジ ャ の出力パ ラ メ ー タ 132
InfoMaker
索引
れ
レ ジ ス ト リ 、 Windows
ODBCINST 初期設定フ ァ イ ル
ODBC 初期設定フ ァ イ ル 26
接続パ ラ メ ー タ 11, 146
デー タ ベース と の接続
26
211
索引
212
InfoMaker
Fly UP