CLI の手引きおよび解説書

目次

本書について

本書の対象読者
本書の構成

第 1 章 CLI の紹介

DB2 CLI の背景情報
DB2 CLI と組み込み SQL との違い
組み込み SQL と DB2 CLI との比較
DB2 CLI を使用する場合の利点
組み込み SQL か DB2 CLI かの決定
サポートされている環境
その他の情報源

第 2 章 DB2 CLI アプリケーションの作成

初期設定および終了
ハンドル
1 つまたは複数のデータ・ソースへの接続
初期設定および接続の例
トランザクション処理
診断
データ・タイプとデータ変換
ストリング引き数の処理
環境およびデータ・ソース情報の照会

第 3 章 拡張機能の使用

環境、接続、およびステートメントの属性
マルチスレッドのアプリケーション作成
マルチ・スレッドの用途
プログラミングのヒント
複数サイト更新 (2 フェーズ・コミット)
DB2 をトランザクション・モニターとして使用する場合
Microsoft Transaction Server (MTS) をトランザクション・モニターとして使用する場合
プロセス・ベースの XA 準拠トランザクション・プログラム・モニター (XA TP)
ホストおよび AS/400 データベース・サーバー
システム・カタログ情報の照会
カタログ関数での入力引き数
カタログ関数の例
スクロール可能カーソル
静的な読み取り専用カーソル
キーセット主導カーソル
使用するカーソル・タイプの決定
結果セットから返される行セットの指定
典型的なスクロール可能カーソルのアプリケーション
スクロール可能カーソルでのブックマークの使用
長形式データの分割送信 / 取り出し
実行時パラメーター値の指定
データの分割取り出し
分割入力および取り出しの例
配列の使用によるパラメーター値の入力
列方向配列の挿入
行方向配列の挿入
診断情報の取り出し
パラメーター・バインドの相対位置
配列の入力例
配列への結果セットの取り出し
列方向バインドによる配列データの取り出し
行方向バインド・データへの配列データの戻り
列バインドの相対位置
列方向、行方向のバインド例
記述子の使用
記述子タイプ
記述子に保管される値
記述子の割り当ておよび解放
記述子フィールドの入手、設定、およびコピー
記述子のサンプル
複合 SQL の使用
ATOMIC および NOT ATOMIC 複合 SQL
複合 SQL のエラー処理
複合 SQL の例
ラージ・オブジェクトの使用
LOB の例
ODBC アプリケーションでの LOB の使用
ユーザー定義タイプ (UDT) の使用
ユーザー定義タイプの例
ストアード・プロシージャーの使用
ストアード・プロシージャーの呼び出し
ストアード・プロシージャーの登録
ストアード・プロシージャー引き数の処理 (SQLDA)
ストアード・プロシージャーから結果セットを返す
CLI でのストアード・プロシージャーの作成
ストアード・プロシージャーの例
組み込み SQL と DB2 CLI の混合
組み込み SQL と DB2 CLI の混合の例
CLI の非同期実行
典型的な非同期アプリケーション
サンプルの非同期アプリケーション
ベンダー・エスケープ文節の使用
エスケープ文節の構文
ODBC 日付、時刻、タイム・スタンプのデータ
ODBC 外部結合構文
LIKE 述部エスケープ文節
ストアード・プロシージャー呼び出し構文
ODBC スカラー関数

第 4 章 CLI の構成およびサンプル・アプリケーションの実行

DB2 CLI 実行時環境の設定
CLI/ODBC プログラムの実行
CLI/ODBC アクセスのためのプラットフォーム固有の詳細情報
詳細な構成情報
アプリケーション開発環境
サンプル・アプリケーションのコンパイル
コンパイルおよびリンク・オプション
DB2 CLI/ODBC 構成キーワードのリスト
構成キーワード

第 5 章 DB2 CLI 関数

DB2 CLI 関数の要約
SQLAllocConnect - 接続ハンドルを割り振る
SQLAllocEnv - 環境ハンドルを割り振る
SQLAllocHandle - ハンドルを割り振る
SQLAllocStmt - ステートメント・ハンドルを割り振る
SQLBindCol - アプリケーション変数または LOB ロケーターに列をバインドする
SQLBindFileToCol - LOB 列に LOB ファイル参照をバインドする
SQLBindFileToParam - LOB パラメーターに LOB ファイル参照をバインドする
SQLBindParameter - バッファーまたは LOB ロケーターにパラメーター・マーカーをバインドする
SQLBrowseConnect - データ・ソースへの接続に必要な属性を入手する
SQLBuildDataLink - DATALINK 値の作成
SQLBulkOperations - 行のセットの追加、更新、削除、または取り出し
SQLCancel - ステートメントを取り消す
SQLCloseCursor - カーソルをクローズして保留の結果を廃棄する
SQLColAttribute - 列属性を返す
SQLColAttributes - 列属性を入手する
SQLColumnPrivileges - 表の列に関連した特権を入手する
SQLColumns - 表の列の情報を入手する
SQLConnect - データ・ソースに接続する
SQLCopyDesc - ハンドル間で記述子情報をコピーする
SQLDataSources - データ・ソースのリストを入手する
SQLDescribeCol - 列の属性のセットを返す
SQLDescribeParam - パラメーター・マーカーの記述を返す
SQLDisconnect - データ・サーバーからの切断
SQLDriverConnect - データ・ソースに (拡張) 接続する
SQLEndTran - 接続のトランザクションの終了
SQLError - エラー情報を取り出す
SQLExecDirect - ステートメントの直接実行
SQLExecute - ステートメントの実行
SQLExtendedBind - 列の配列のバインド
SQLExtendedFetch - 拡張取り出し (行の配列の取り出し)
SQLExtendedPrepare - ステートメントの準備とステートメント属性の設定
SQLFetch - 次の行の取り出し
SQLFetchScroll - バインド列すべての行セットを取り出し、データを返す
SQLForeignKeys - 外部キー列のリストを入手する
SQLFreeConnect - 接続ハンドルの解放
SQLFreeEnv - 環境ハンドルの解放
SQLFreeHandle - ハンドル資源を解放する
SQLFreeStmt - ステートメント・ハンドルの解放 (またはリセット)
SQLGetConnectAttr - 現行属性設定を入手する
SQLGetConnectOption - 接続オプションの現行設定値を戻す
SQLGetCursorName - カーソル名の入手
SQLGetData - 列からのデータの入手
SQLGetDataLinkAttr - データ・リンク属性値を入手する
SQLGetDescField - 記述子レコードの単一フィールド設定を入手する
SQLGetDescRec - 記述子レコードの複数フィールド設定を入手する
SQLGetDiagField - 診断データのフィールドの入手
SQLGetDiagRec - 診断レコードの複数のフィールド設定を取得する
SQLGetEnvAttr - 現行の環境属性値を検索する
SQLGetFunctions - 関数の入手
SQLGetInfo - 一般情報の入手
SQLGetLength - ストリング値の長さを取り出す
SQLGetPosition - ストリングの開始位置を戻す
SQLGetSQLCA - SQLCA データ構造を入手する
SQLGetStmtAttr - ステートメント属性の現行設定値を入手する
SQLGetStmtOption - ステートメント・オプションの現行設定値を戻す
SQLGetSubString - ストリング値の部分を取り出す
SQLGetTypeInfo - データ・タイプ情報の入手
SQLMoreResults - さらに結果セットがあるかどうかを判別する
SQLNativeSql - ネイティブの SQL テキストを入手する
SQLNumParams - SQL ステートメント内のパラメーター数を入手する
SQLNumResultCols - 結果列の数の入手
SQLParamData - データ値が必要な次のパラメーターを入手する
SQLParamOptions - パラメーターに入力配列を指定する
SQLPrepare - ステートメントを準備する
SQLPrimaryKeys - 表の基本キー列を入手する
SQLProcedureColumns - プロシージャーの入力 / 出力情報を入手する
SQLProcedures - プロシージャー名のリストを入手する
SQLPutData - パラメーターのデータ値を渡す
SQLRowCount - 行カウントを入手する
SQLSetColAttributes - 列属性を設定する
SQLSetConnectAttr - 接続属性を設定する
SQLSetConnection - 接続ハンドルを設定する
SQLSetConnectOption - 接続オプションを設定する
SQLSetCursorName - カーソル名を設定する
SQLSetDescField - 記述子レコードの単一フィールドを設定する
SQLSetDescRec - 列またはパラメーター・データに複数の記述子フィールドを設定する
SQLSetEnvAttr - 環境属性を設定する
SQLSetParam - バッファーまたは LOB ロケーターに 1 つのパラメーター・マーカーをバインドする
SQLSetPos - 行セット (Rowset) でカーソル位置を設定する
SQLSetStmtAttr - ステートメントに関連したオプションの設定
SQLSetStmtOption - ステートメント・オプションの設定
SQLSpecialColumns - 特殊な (行識別子) 列の入手
SQLStatistics - 基本表の索引および統計情報の入手
SQLTablePrivileges - 表に関連した特権の入手
SQLTables - 表情報の入手
SQLTransact - トランザクション管理

付録 A. プログラミングのヒントと提案

共通接続属性の設定
SQL_ATTR_AUTOCOMMIT
SQL_ATTR_TXN_ISOLATION
共通ステートメント属性の設定
SQL_ATTR_MAX_ROWS
SQL_ATTR_CURSOR_HOLD
SQL_ATTR_TXN_ISOLATION
バインドと SQLGetData との比較
転送効率を向上する
カタログ関数の使用を制限する
関数生成による結果セットの列名を使用する
ODBC アプリケーションから DB2 CLI 固有の関数をロードする
動的 SQL ステートメント・キャッシュを使用する
グローバル動的ステートメント・キャッシュを利用する
データの挿入および検索を最適化する
ラージ・オブジェクト・データを最適化する
オブジェクト識別子の大小文字の区別
SQLConnect の代わりに SQLDriverConnect を使用する
SQL 管理プログラムを使用する
ステートメント走査をオフにする
複数のロールバックでカーソルを保留する
複合 SQL サブステートメントの作成
ユーザー定義タイプ (UDT) のキャスト
非同期実行を使用せずマルチ・スレッドを使用する
据え置き準備を使用してネットワーク・フローを減らす

付録 B. アプリケーションの移行

変更の要約
非互換性
64 ビット環境でサポートされない、使用すべきでない関数
バージョン 2.1.1 から 5.0.0 への変更点
バージョン 5 で使用すべきでない DB2 CLI 関数
ストアード・プロシージャーの疑似カタログ表の置換
SQLSetConnectAttr() を使用してステートメント属性のサブセットを設定する
クライアントでのステートメント・ハンドルのキャッシュ
SQLColumns() 戻り値の変更
SQLProcedureColumns() 戻り値の変更
SQLGetInfo() の InfoTypes の変更
デフォルトでの据え置き準備
バージョン 2.1.0 から 2.1.1 への変更点
複数行の結果セットを戻すストアード・プロシージャー
SQLGetInfo のデータ変換および値
バージョン 1.x から 2.1.0 への変更点
AUTOCOMMIT と CURSOR WITH HOLD の省略時値
図形データ・タイプの値
SQLSTATES
組み込み SQL の混合 (CONNECT RESET を用いない場合)
VARCHAR FOR BIT DATA の使用
述部内でのユーザー定義タイプ
SQLGetInfo のデータ変換値
関数プロトタイプの変更
DB2CLI_VER 定義の設定

付録 C. DB2 CLI と ODBC

ODBC 関数リスト
分離レベル

付録 D. 拡張スカラー関数

ストリング関数
数値関数
日時関数
システム関数
変換関数

付録 E. SQLSTATE 相互参照

付録 F. データ変換

データ・タイプ属性
精度
位取り
長さ
表示サイズ
SQL から C データ・タイプへのデータ変換
文字 SQL データから C データへの変換
グラフィック SQL データから C データへの変換
SQL 数値データを C データに変換
2 進 SQL データから C データへの変換
日付 SQL データから C データへの変換
時刻 SQL データから C データへの変換
タイム・スタンプ SQL データから C データへの変換
SQL から C へのデータ変換例
C から SQL データ・タイプへのデータ変換
C 文字データを SQL データに変換
C 数値データから SQL データへの変換
2 進 C データから SQL データへの変換
DBCHAR C データから SQL データへの変換
日付 C データから SQL データへの変換
時刻 C データから SQL データへの変換
タイム・スタンプ C データから SQL データへの変換
C から SQL へのデータ変換例

付録 G. ストアード・プロシージャーのカタログ表示

付録 H. ストアード・プロシージャー登録の疑似カタログ表

付録 I. サポートされている SQL ステートメント

付録 J. CLI サンプル・コード

組み込み SQL の例
対話式 SQL の例

付録 K. DB2 CLI/ODBC/JDBC トレース機能の使用

db2cli.ini ファイルを使用してトレースを使用可能にする
結果ファイルの位置決め
トレース情報の読み取り
詳細トレース・ファイルの形式
サンプル・トレース・ファイル
マルチスレッド・アプリケーションまたはマルチプロセス・アプリケーションのトレース
ODBC ドライバー・マネージャー・トレース

付録 L. DB2 ライブラリーの使用法

DB2 PDF ファイルおよびハードコピー版資料
DB2 情報
PDF 資料の印刷
印刷資料の注文方法
DB2 オンライン文書
オンライン・ヘルプへのアクセス
オンライン情報の表示
DB2 ウィザードの使用
文書サーバーのセットアップ
オンライン情報の検索

付録 M. 特記事項

商標
他社の商標

付録 N. IBM と連絡をとる

製品情報

参考文献

索引


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]