db2cli - Db2 対話機能 CLI コマンド

コール・レベル・インターフェース (CLI) 環境での設計およびプロトタイピングのために、対話式 CLI 環境を開始します。

許可

db2cli コマンドは、IBM® Data Server 製品のインストール先であるディレクトリーの bin サブディレクトリーに配置されます。UNIX および Linux オペレーティング・システムでは、 db2cli コマンドは home_dir/sqllib/bin ディレクトリーに配置されます。この home_dir はインスタンス所有者のホーム・ディレクトリーです。Windows オペレーティング・システムでは、このコマンドは DB2PATH¥bin ディレクトリーに配置されます。DB2PATHDb2 コピーのインストール場所です。

なし

必要な接続

なし

コマンド構文

構文図を読む構文図をスキップするdb2cli validateValidate options-helpbindfilenameBind options-helpregisterdsnRegister DSN optionscsc-infoExecsql optionsinstallInstall optionswritecfgWrite configuration file optionsrefreshldap-global-help
Validate options
構文図を読む構文図をスキップする-dsndsn_name-databasedatabase:server:port-connectConnect options-all-foutput_file
Connect options
構文図を読む構文図をスキップする-displaylic-odbcdsn-useserverlic-userusername-passwdpassword-userusername--keystoredbpasswordkeystoredbpasswd-userusername
Bind options
構文図を読む構文図をスキップする-dsndsn_name-databasedatabase:server:port-userusername-passwdpassword-options"various_bind_options"
Register DSN options
構文図を読む構文図をスキップする-add-dsndsn_name-alldsn-includeldap-remove-copynamecopy_name-allcopies-force-dsndsn_name-alldsn-list-copynamecopy_name-allcopies-user-system-help
Execsql options
構文図を読む構文図をスキップする execsql -execute-prepareonly Server options-connstringstring -inputsqlsqlfile-outfileoutput_file-statementdelimiterdelimiter-commentstartcomment_indicator-help
Server options
構文図を読む構文図をスキップする-dsndsn_nameAuthentication options
Authentication options
構文図を読む構文図をスキップする-userusername-passwdpasswd
Install options (Windows でのみ使用可能)
構文図を読む構文図をスキップする-setup-cleanup-appdatapathpath_name-cleanup-force-help
Write configuration file options
構文図を読む構文図をスキップするadd-dsndsn_name-description--dsn_descriptiondb-optionsdb-optionsadd-options-parameter-parameters";parameter_name=parameter_value"-sessionglobalvariables";globvar_name=globvar_value"-specialregisters";register_name=register_value"remove-dsndsn_namedb-optionsremove-options-parameter-parameters";parameter_name"-sessionglobalvariables";globvar_name"-force-specialregisters";register_name"-force-help
db-options
構文図を読む構文図をスキップする -database db_name -host host_name -port p_number
add-options
構文図を読む構文図をスキップする-parameter-parameters";parameter_name=parameter_value"-sessionglobalvariables";globvar_name=globvar_value"-specialregisters";register_name=register_value"
remove-options
構文図を読む構文図をスキップする-parameter-parameters";parameter_name"-sessionglobalvariables";globvar_name"-force-specialregisters";register_name"-force

コマンド・パラメーター

validate

CLI 環境構成の妥当性検査とテストを行います。このオプションにより、db2cli.ini ファイルおよび db2dsdriver.cfg ファイルで検出されたキーワードのリストが表示されます。特定のデータ・ソースまたはデータベース名に関して無効なキーワードがある場合、UNKNOWN としてリストされます。 IBM Data Server Client (IBM Data Server Client または IBM Data Server Runtime Client) では、db2cli validate コマンドは、Windows オペレーティング・システム上にインストール済みの Db2 クライアント・パッケージをリストします。

IBM Data Server Clientから db2cli validate コマンドを発行する場合、このリストは Windows オペレーティング・システム上にインストールされた IBM Data Server Clientに限定されます。Windows オペレーティング・システム上にインストールされた IBM Data Server Driver for ODBC and CLI パッケージおよび IBM データ・サーバー・クライアント・パッケージをリストするには、db2cli validate コマンドを IBM Data Server Driver for ODBC and CLI インストール済み環境から発行する必要があります。リストでは、現行コピー名が [C]、デフォルトのコピー名が [D] で表されます。

-dsn dsn_name
妥当性検査を行うデータ・ソース名 (DSN) を指定します。dsn_name の中に空白文字がある場合は、空白文字を二重引用符で囲んでください。
-database database:server:port
妥当性検査を行うデータベース名、サーバー名、ポート番号を指定します。 データベース名、サーバー名、およびポート番号はコロンで区切る必要があります。サーバー名は、完全修飾ドメイン名 (FQDN) で構成されている必要があります (例: TESTDB:dbserver.example.com:19677)。
-all
db2dsdriver.cfg ファイルにあるすべてのデータベースおよび DSN 項目の妥当性検査を行います。
-connect
db2cli validate コマンドは、接続してコマンド出力への接続試行に関する情報を書き込みます。
制約事項: クライアントのバージョンよりも低位のバージョンのゲートウェイに接続する場合、そのクライアント/サーバーの組み合わせでサポートされている新フィーチャーを利用できない可能性があります。
-f OUTPUT_FILE
db2cli コマンドの結果用の出力ファイルを指定します (オプション)。
-help
validate パラメーターの使用法に関連したヘルプ情報を表示します。
Connect
db2cli validate コマンドが接続をテストできる DSN またはデータベースを指定します。 接続試行およびライセンス情報に関する情報がコマンド出力にリストされます。
-displaylic
有効なライセンスの存在およびそのライセンスの配置場所を表示します。 ライセンスが存在できる場所は、クライアントまたはサーバー、あるいはその両方です。 Db2 for IBM i サーバーまたは Db2 for z/OS® サーバーに置かれたライセンスの場合、コマンド出力には、ライセンス交付にユーザー定義関数 (UDF) とストアード・プロシージャー (SP) のどちらが使用されるか、およびライセンスのバージョンに関する情報が含まれます。
-odbcdsn
ODBC ドライバー・マネージャーとのデータベース接続をユーザーが妥当性検査できるようにします。
-useserverlic
ライセンス交付に使用されるユーザー定義関数 (UDF) またはストアード・プロシージャー (SP) を呼び出すことにより、Db2 for IBM i サーバーまたは Db2 for z/OS サーバーに置かれているライセンスをテストします。 -useserverlic オプションは、クライアント・サイドのライセンス検査をバイパスします。 ライセンスのバージョンと、ライセンス交付にユーザー定義関数 (UDF) とストアード・プロシージャー (SP) のどちらが使用されるかを表示します。
要確認: -useserverlic オプションを使用できるのは、Db2 for IBM i サーバーまたは Db2 for z/OS サーバーへの接続が存在する場合のみです。
-user username
接続に使用するユーザー名を指定します。
-passwd password
接続に使用するパスワードを指定します。
-keystoredbpassword keystoredbpasswd
Authentication パラメーターが CERTIFICATE に設定されている場合に、SSL 接続のパスワードを指定します。
bind

指定した filename をターゲット・データベースに対してバインドします。db2cli bind コマンドは、最初に db2cli bind コマンド・パラメーターで提供される情報を使用してターゲット・データベースに接続し、バインド・アクションを実行します。バインド・ファイルの拡張子は .bnd です。

filename
filename には、バインド・ファイル、または複数のバインド・ファイルの名前を含むリスト・ファイルの名前を指定できます。リスト・ファイルを指定する場合、リスト・ファイル名の先頭に @ 文字を付ける必要があります。完全修飾バインド・ファイル名は二重引用符内に指定できます。

パスなしでバインド・ファイル名のみを指定すると、まず、現行ディレクトリーでそのファイルが検索されます。 ファイルが見つかると、そのファイルがピックアップされ、パッケージが作成されます。 現行ディレクトリーでファイルが見つからない場合は、インスタンスまたはインストール・パスからファイルが自動的にピックアップされます。

-dsn dsn_name
バインド先のデータ・ソース名 (DSN) を指定します。このバインド・オプションを使用するときには、ターゲット・データベースに接続するために必要なすべての情報 (有効なユーザー ID とパスワードを除く) を以下に指定する必要があります。
  • db2cli.ini ファイルのデータ・ソース名セクション。
  • db2dsdriver.cfg ファイルのデータベース・セクションまたは DSN セクション。
  • ローカル・カタログ項目。
-database database:server:port
バインド先のデータベース名、サーバー名、およびポート番号を指定します。データベース名、サーバー名、およびポート番号はコロンで区切る必要があります。サーバー名は、完全修飾ドメイン名 (FQDN) で構成されている必要があります (例: TESTDB:dbserver.example.com:19677)。
-user username
接続に使用するユーザー名を指定します。
-passwd password
接続に使用するパスワードを指定します。
-options "various_bind_options"
バインド・オプションおよびその値を指定します。以下のバインド・オプションが使用可能です。
  • BLOCKING
  • COLLECTION
  • ENCODING
  • GENERIC
  • GRANT
  • GRANT_ROLE
  • ISOLATION
  • KEEPDYNAMIC
  • REOPT
-help
bind パラメーターの使用法に関連したヘルプ情報を表示します。
registerdsn

db2cli DSN 登録モードを指定します。このコマンド・パラメーターは、Windows オペレーティング・システムでの DSN を登録する場合に使用します。

-add dsn_name|-alldsn
Microsoft ODBC データ ソース アドミニストレーターに、システムまたはユーザーの ODBC データ・ソースを追加します。description がレジストリーに追加されるのは、db2dsdriver.cfg ファイルまたは db2cli.ini ファイルにその DSN の description 値が存在する場合に限られます。
dsn_name
登録する DSN を指定します。dsn_name の値は、db2cli.ini ファイルに定義された DSN、または db2dsdriver.cfg ファイルに定義された DSN 別名でなければならず、DBALIAS 名にすることはできません。-add dsn-name パラメーターを使用すると、ローカル・データベース・ディレクトリー内にあるカタログ済みのデータベースを表すデータ・ソースを追加できます。dsn-name には、db2cli.ini に定義されたデータ・ソース、または db2dsdriver.cfg ファイルに定義された DSN 別名、および IBM Data Server Client のローカル・データベース・ディレクトリー内のデータベース別名を指定できます。dsn_name の中に空白文字がある場合は、空白文字を二重引用符で囲んでください。
-dsn
Microsoft ODBC データ ソース アドミニストレーターに追加する必要がある DSN 名を指定できるようにします。 db2cli registerdsn -add -dsn コマンドは、Windows オペレーティング・システムで使用可能です。
-alldsn
db2cli.ini ファイルに定義されたデータ・ソース、db2dsdriver.cfg ファイルに定義された DSN 別名、およびローカル・データベース・カタログをすべて登録します。このパラメーターは、-add パラメーターと組み合わせて使用する必要があります。
-includeldap
LDAP サーバー、db2cli.ini ファイル、db2dsdriver.cfg ファイル、およびローカル・データベース・カタログで指定されたすべてのデータ・ソースを登録します。IBM データ・サーバー・ドライバー構成ファイルの LDAP セクションを構成するか、Windows 環境で LDAP 接続を構成することによって、LDAP サーバーに正常に接続できるようにします。
-user
データ・ソースをユーザー ODBC データ・ソースとして登録します。 パラメーターを指定しないと、データ・ソースはユーザー ODBC データ・ソースとして登録されます。
-system
データ・ソースをシステム ODBC データ・ソースとして登録します。
-remove dsn_name
Microsoft ODBC データ ソース アドミニストレーターから、システムまたはユーザーの ODBC データ・ソースを削除します。dsn_name の中に空白文字がある場合は、空白文字を二重引用符で囲んでください。
-alldsn
指定した Db2 コピーに含まれているすべてのユーザーまたはシステム ODBC データ・ソース項目を Microsoft ODBC データ ソース アドミニストレーターから削除します。db2cli register -remove -alldsn コマンドは、Windows オペレーティング・システムで使用可能です。
-copyname copy_name
指定した Db2 コピーに含まれているユーザーまたはシステム ODBC データ・ソース項目を Microsoft ODBC データ ソース アドミニストレーターから削除します。コピー名を指定しない場合、現行コピー名が使用されます。現行コピー名とは、db2cli ユーティリティーが属しているクライアントのコピー名です。 -copyname オプションを -alldsn オプションと一緒に指定すると、Microsoft ODBC データ ソース アドミニストレーターのすべてのデータ・ソース項目が、指定した Db2 コピーから削除されます。db2cli register -remove -copyname コマンドは、Windows オペレーティング・システムで使用可能です。
-allcopies
すべての Db2 コピーに含まれているユーザーまたはシステム ODBC データ・ソース項目をすべて Microsoft ODBC データ ソース アドミニストレーターから削除します。-force オプションも指定している場合を除き、すべての ODBC データ・ソース項目を削除するかどうかを確認するプロンプトが出されます。db2cli register -remove -allcopies コマンドは、Windows オペレーティング・システムで使用可能です。
-force
確認を求めるプロンプトを出さずに、ユーザーまたはシステム ODBC データ・ソース項目をすべて削除します。-force オプションは、-allcopies オプションを指定する場合にのみ使用できます。db2cli register -remove -allcopies -force コマンドは、Windows オペレーティング・システムで使用可能です。
-dsn
Microsoft ODBC データ ソース アドミニストレーターから削除する DSN 名を指定します。db2cli register -remove -dsn コマンドは、Windows オペレーティング・システムで使用可能です。デフォルト・オプションは -user であり、ユーザー DSN が削除されます。システム DSN を削除する場合は、-system オプションを指定する必要があります。
-list
Microsoft ODBC データ ソース アドミニストレーターに登録されているシステムまたはユーザーの IBM Data Server ODBC データ・ソースをすべてリストします。
-copyname copy_name
Microsoft ODBC データ ソース アドミニストレーター内の指定した Db2 コピーに含まれているユーザーまたはシステム ODBC データ・ソース項目をリストします。コピー名を指定しない場合、現行コピー名が使用されます。現行コピー名とは、db2cli ユーティリティーが属しているクライアントのコピー名です。 db2cli register -list -copyname コマンドは、Windows オペレーティング・システムで使用可能です。
-allcopies
Microsoft ODBC データ ソース アドミニストレーター内のすべての Db2 コピーに含まれている、ユーザーまたはシステム ODBC データ・ソース項目をすべてリストします。db2cli register -list -allcopies コマンドは、Windows オペレーティング・システムで使用可能です。
-help
registerdsn パラメーターの使用法に関連したヘルプ情報を表示します。
注: 64 ビットの Windows マシン上で 32 ビットの ODBC データ・ソース項目を追加、削除、またはリストする場合は、db2cli32 コマンドを使用してください。
csc-info
接続スーパーバイザー・クライアント (CSC) 情報を表示します。CSC は、エンドツーエンドのモニターを行うために CLI が使用する動的にロード可能なライブラリーです。
-execsql

入力ファイルで指定した SQL ステートメントを実行または準備します。 また、ファイルに出力を保存することもできます。

-execute
SQL スクリプト・ファイル内の SQL ステートメントを準備して実行するように指定します。 パラメーターを指定しない場合は、これがデフォルトになります。 結果がコンソールに表示されます。 ファイルに出力を保存するには、ファイルの絶対パスか相対パスとともにオプション -output を指定します。 SQL スクリプト・ファイル内の SQL ステートメントに、パラメーター・マーカーを含めることはできません。
-prepareonly
-inputSql オプションで指定したファイル内の SQL ステートメントを準備するものの実行はしないように指定します。 このオプションは、ステートメントを実行しないで SQL ステートメントの構文を検査する場合に使用します。
-commentstart comment_indicator
コメント行を表す、行の先頭に表示する文字の組み合わせを指定します。 comment_indicator のデフォルト値は、2 つのダッシュ (--) です。 コメントが複数行にまたがる場合、各行を comment_indicator 文字の組み合わせで開始します。 コメント行の最大長は 128 文字です。 入力 SQL ファイルでは、コメント文字の後のテキストにステートメント・カーソルの属性を含めることができます。 カーソル属性は、コメント直後の SQL ステートメントに適用されます。
-connstring string
ターゲット・データベースのデータベース名、サーバー、およびポート番号を指定します。 これらの情報は、SQLDriverConnect API 関数の InConnectionString 引数で定義されたフォーマットで指定する必要があります。例えば、
DATABASE=SAMPLE;HOSTNAME=test.ibm.com;PORT=50000;UID=db2user;PWD=db2pwd
.
-dsn dsn_name
db2cli.ini ファイル内のデータ・ソース名、または db2dsdriver.cfg ファイルに定義された DSN 別名を指定します。 dsn_name の中に空白文字がある場合は、空白文字を二重引用符で囲んでください。
-help
使用法情報の要約を表示します。
-inputsql sqlfile
SQL ステートメントが入っている入力ファイルを指定します。 sqlfile の値は、ファイルの絶対パスか相対パスになります。 このファイル内の SQL ステートメントは、区切り文字で区切られます。 準備可能なステートメントのみが使用されます。 DESCRIBE TABLEBIND などの Db2 コマンドは使用できません。

入力 SQL ファイルに含めることができるのは、SQL ステートメントとコメントだけです。 このファイルに、CLI 固有の属性やキーワードを含めることはできません。バッチ SQL ステートメントには対応していません。

-outfile outputfile
出力結果を格納するファイルの絶対パスまたは相対パスを指定します。 このオプションを指定しない場合、結果はコンソールに表示されます。
-passwd password
データベースで認証を行うために使用するパスワードを指定します。
-statementdelimiter delimiter
ステートメントを分離するために使用する、入力 SQL ファイルで用いる文字の組み合わせを指定します。 区切り文字のデフォルト値は、復帰文字です。
-user username
データベースで認証を行うユーザーを指定します。
install

Windows レジストリーで、IBM Data Server Driver for ODBC and CLI の登録または登録解除を行います。

-setup
IBM Data Server Driver for ODBC and CLI を、ODBC のもとで Windows レジストリーに登録します。このパラメーターにより、デフォルトのアプリケーション・データ・パスに構成フォルダー (cfg、cfgcache、db2dump) とサンプル構成ファイルも作成されます。
-appdatapath <path name>
パス名に、構成フォルダー (cfg、cfgcache、db2dump) とサンプル構成ファイルを作成します。
-cleanup
現行の IBM Data Server Driver for ODBC and CLI を、ODBC のもとで Windows レジストリーから登録解除します。 その後、このクリーンアップは、現行のインストール環境のアプリケーション・データ・パスに作成されたフォルダー、構成サンプル・ファイル、ライセンス管理ファイルを削除します。 –force オプションを指定しない限り、ユーザー作成のファイルやフォルダーは削除されません。
-force
–cleanup オプションと一緒に指定すると、インストール専用フォルダー全体がアプリケーション・データ・パスから削除されます。このフォルダーは、このインストールだけに属するフォルダーです。 このフォルダー内にユーザー作成のファイルやフォルダーがある場合、プロンプトも警告も表示されずに削除されます。
-help
install パラメーターの使用法に関連したヘルプ情報を表示します。
writecfg add|remove
db2dsdriver.cfg 構成ファイルを更新します。
add -dsn| -database | -parameter[s]
DSN、データベース、またはパラメーターに関する情報を db2dsdriver.cfg 構成ファイルに追加します。
-dsn dsn_name [-description dsn_description] -database db_name -host host_name -port port_number
DSN 別名をオプションの description 値と一緒に指定します。 対象となる DSN 別名について、パラメーター・エレメント、セッション・グローバル変数のパラメーター・エレメント、または -dsn サブセクション全体を、構成ファイルで追加または更新できます。 dsn_name の中に空白文字がある場合は、空白文字を二重引用符で囲んでください。 -dsn dsn_name オプションは、-description dsn_description では必須です。

DSN 別名として dsn_name が指定された -dsn サブセクションが構成ファイル内にない場合は、dsncollection セクションに新しい -dsn サブセクションが追加されます。

構成ファイルに DSN 別名として dsn_name が指定された -dsn サブセクションがある場合は、既存の -dsn サブセクションに新しいパラメーターまたはセッション・グローバル変数の情報が付加されます。

db2dsdriver.cfg 構成ファイルに db_name 情報が同じ -database サブセクションが存在する場合は、指定されたパラメーター・エレメントが -database サブセクションに追加されます。それ以外の場合は、指定されたパラメーター・エレメントまたはセッション・グローバル変数パラメーター・エレメントが新しい -database サブセクションに追加されます。

-parameter[s] par1=par1_val[;...;parN=parN_val]
db2dsdriver.cfg 構成ファイルに指定した -dsn サブセクションのパラメーター・エレメントを追加または更新するためのパラメーター情報を指定します。

db2dsdriver.cfg 構成ファイルの -dsn サブセクションで検出されない新規パラメーター・エレメントを指定した場合、新規パラメーター・エレメントは -dsn サブセクションに追加されます。

構成ファイルに既に指定されたパラメーター・エレメントが存在する場合は、<dsn> サブセクションの既存のパラメーター値が、-parameter[s] オプションで指定する値で更新されます。

値の中のパス区切り文字などの特殊文字は、「¥」エスケープ文字を前に置く必要があります。

db2cli writecfg コマンドは、構文検査も、指定のパラメーターの値の妥当性検査も行いません。

-sessionglobalvariables globvar_name=globvar_value[;...;globvar_nameN=globvarN_value]
db2dsdriver.cfg 構成ファイルに指定した DSN のパラメーター・エレメントを追加または更新するためのセッション・グローバル変数情報を指定します。

db2dsdriver.cfg 構成ファイルの -dsn サブセクションで検出されない新規セッション・グローバル変数パラメーターを指定した場合、新規セッション・グローバル変数パラメーターは dsn サブセクションに追加されます。

構成ファイルに既に指定されたセッション・グローバル変数パラメーター・エレメントが存在する場合は、-dsn サブセクションのセッション・グローバル変数値が、-sessionglobalvariables オプションで指定する値で更新されます。

値の中のパス区切り文字などの特殊文字は、「¥」エスケープ文字を前に置く必要があります。

db2cli writecfg コマンドは、構文検査も、指定されたセッション・グローバル変数パラメーターの値の妥当性検査も行いません。

-specialregisters register_name=register_value[;...;register_nameN=registerN_value]
db2dsdriver.cfg 構成ファイル内の指定した DSN のパラメーター・エレメントを追加または更新するために使用される特殊レジスター情報を指定します。

db2dsdriver.cfg 構成ファイルの <dsn> サブセクションにない特殊レジスター・パラメーターを指定した場合は、そのサブセクションに新しい特殊レジスター・パラメーター・エレメントが追加されます。指定した特殊レジスター・パラメーター・エレメントが既に構成ファイルにある場合は、-dsn サブセクション内の特殊レジスター値が更新されて、-specialregisters パラメーターに指定した値が設定されます。

特殊レジスター値 (registerN_value) の中の特殊文字の前には、エスケープ文字「¥」が必要です。

db2cli writecfg コマンドは、構文の検査も、指定された特殊レジスター・パラメーターの値の妥当性検査も行いません。

-database db_name -host host_name -port port_number
<database> サブセクションの接続情報を指定します。この情報は、データベース名、データベースがあるホストの名前、およびデータベース・サーバーのポート番号で構成されます。

db2dsdriver.cfg 構成ファイルに db_name 情報が同じ <database> サブセクションが存在する場合は、指定されたパラメーター・エレメントが <database> サブセクションに追加されます。 それ以外の場合は、指定されたパラメーター・エレメントまたはセッション・グローバル変数パラメーター・エレメントが新しい <database> サブセクションに追加されます。

-parameter[s] parameter_name1=par1_val[;...;parN=parN_val]
db2dsdriver.cfg 構成ファイルに指定されたデータベース名のパラメーター・エレメントを追加または更新するためのパラメーター情報を指定します。

db2dsdriver.cfg 構成ファイルの <database> サブセクションで検出されない新規パラメーター・エレメントを指定した場合、新規パラメーター・エレメントは <database> サブセクションに追加されます。

構成ファイルに既に指定されたパラメーター・エレメントが存在する場合は、<database> サブセクションの既存のパラメーター値が、-parameter[s] オプションで指定する値で更新されます。

値の中のパス区切り文字などの特殊文字は、「¥」エスケープ文字を前に置く必要があります。

db2cli writecfg コマンドは、構文検査も、指定のパラメーターの値の妥当性検査も行いません。

-sessionglobalvariables globvar_string
globvar_string の形式は次のとおりです。
globvar_name=globvar_value[;...;globvar_nameN=globvarN_value]

db2dsdriver.cfg 構成ファイルに指定されたデータベース名のパラメーター・エレメントを追加または更新するためのセッション・グローバル変数情報を指定します。

db2dsdriver.cfg 構成ファイルの <database> サブセクションで検出されない新規セッション・グローバル変数パラメーターを指定した場合、新規セッション・グローバル変数パラメーターは <database> サブセクションに追加されます。

構成ファイルに既に指定されたセッション・グローバル変数パラメーター・エレメントが存在する場合は、<database> サブセクションのセッション・グローバル変数値が、-sessionglobalvariables オプションで指定する値で更新されます。

値の中のパス区切り文字などの特殊文字は、「¥」エスケープ文字を前に置く必要があります。

db2cli writecfg コマンドは、構文検査も、指定されたセッション・グローバル変数パラメーターの値の妥当性検査も行いません。

-specialregisters register_name=register_value[;...;register_nameN=registerN_value]
db2dsdriver.cfg 構成ファイル内の指定したデータベース名のパラメーター・エレメントを追加または更新するために使用される特殊レジスター情報を指定します。

db2dsdriver.cfg 構成ファイルの <database> サブセクションにない特殊レジスター・パラメーターを指定した場合は、そのサブセクションに特殊レジスター・パラメーター・エレメントが追加されます。指定した特殊レジスター・パラメーター・エレメントが既に構成ファイルにある場合は、<database> サブセクション内の特殊レジスター値が更新されて、-specialregisters パラメーターに指定した値が設定されます。

特殊レジスター値 (registerN_value) の中の特殊文字の前には、エスケープ文字「¥」が必要です。

db2cli writecfg コマンドは、構文の検査も、指定された特殊レジスター・パラメーターの値の妥当性検査も行いません。

-parameter[s] parameter_name1=par1_val[;...;parN=parN_val]
db2dsdriver.cfg 構成ファイル内のすべてのデータベースおよび DSN のパラメーター・エレメントを追加または更新するためのパラメーター情報を指定します。

パラメーターをグローバル <parameters> セクションに追加するには、データベースやデータ・ソースを指定せずに、パラメーター情報を指定します。

db2dsdriver.cfg 構成ファイルの <parameters> サブセクションで検出されない新規パラメーター・エレメントを指定した場合、新規パラメーター・エレメントは <parameters> サブセクションに追加されます。

構成ファイルに既に指定されたパラメーター・エレメントが存在する場合は、<parameters> サブセクションの既存のパラメーター値が、-parameter[s] オプションで指定する値で更新されます。

値の中のパス区切り文字などの特殊文字は、「¥」エスケープ文字を前に置く必要があります。

db2cli writecfg コマンドは、構文検査も、指定のパラメーターの値の妥当性検査も行いません。

-sessionglobalvariables globvar_string
globvar_string の形式は次のとおりです。
globvar_name=globvar_value[;...;globvar_nameN=globvarN_value]

db2dsdriver.cfg 構成ファイル内のすべてのデータベースまたは DSN のパラメーター・エレメントを追加または更新するためのパラメーター情報を指定します。

db2dsdriver.cfg 構成ファイルの <parameters> サブセクションで検出されない新規セッション・グローバル変数パラメーターを指定した場合、新規セッション・グローバル変数パラメーターは <parameters> サブセクションに追加されます。

構成ファイルに既に指定されたセッション・グローバル変数パラメーター・エレメントが存在する場合は、<parameters> サブセクションのセッション・グローバル変数値が、-sessionglobalvariables オプションで指定する値で更新されます。

値の中のパス区切り文字などの特殊文字は、「¥」エスケープ文字を前に置く必要があります。

db2cli writecfg コマンドは、構文検査も、指定のパラメーターの値の妥当性検査も行いません。

-specialregisters register_string
register_string の形式は次のとおりです。
register_name=register_value[;...;register_nameN=registerN_value]

db2dsdriver.cfg 構成ファイル内のすべてのデータベースのパラメーター・エレメントを追加または更新するために使用される特殊レジスター情報を指定します。

db2dsdriver.cfg 構成ファイルの <parameters> サブセクションにない特殊レジスター・パラメーターを指定した場合は、<parameters> サブセクションに特殊レジスター・パラメーター・エレメントが追加されます。指定した特殊レジスター・パラメーター・エレメントが既に構成ファイルにある場合は、<parameters> サブセクション内の特殊レジスター値が更新されて、-specialregisters パラメーターに指定した値が設定されます。

特殊レジスター値 (registerN_value) の中の特殊文字の前には、エスケープ文字「¥」が必要です。

db2cli writecfg コマンドは、構文の検査も、指定された特殊レジスター・パラメーターの値の妥当性検査も行いません。

remove -dsn| -database | -parameter[s]
DSN、データベース、またはパラメーターに関する情報を db2dsdriver.cfg 構成ファイルから削除します。
-dsn dsn_name
構成ファイル内のパラメーター・エレメント、セッション・グローバル変数パラメーター・エレメント、あるいは <dsn> サブセクション全体を削除する場合に使用する DSN を指定します。dsn_name の中に空白文字がある場合は、空白文字を二重引用符で囲んでください。

パラメーター・エレメントまたはセッション・グローバル変数パラメーター・エレメントの情報を削除するには、対応する DSN とパラメーター、またはセッション・グローバル変数の情報を指定します。

データ・ソース・サブセクション全体を削除するには、パラメーターやセッション・グローバル変数の情報を指定せずに、DSN のみを指定します。

-parameter[s] parameter_name1[;...;parameter_nameN]
db2dsdriver.cfg 構成ファイルに指定された DSN から削除するパラメーター情報を指定します。

構成ファイルの指定の <dsn> サブセクションに、示されたパラメーターがない場合、アクションは何も実行されません。

-sessionglobalvariables globvar_name[;...;globvar_nameN]
db2dsdriver.cfg 構成ファイルに指定された DSN から削除するセッション・グローバル変数情報を指定します。

指示したセッション・グローバル変数が構成ファイル内の指定した <dsn> サブセクションにない場合、アクションは実行されません。

-sessionglobalvariables -force
db2dsdriver.cfg 構成ファイル内の指定した <dsn> サブセクションから、すべてのセッション・グローバル変数情報を削除します。<dsn> サブセクションにセッション・グローバル変数がない場合、アクションは実行されません。
-specialregisters register_name[;...;register_nameN]
db2dsdriver.cfg 構成ファイル内の指定した <dsn> サブセクションから削除する特殊レジスター情報を指定します。構成ファイルの指定の <dsn> サブセクションに、示された特殊レジスターがない場合、アクションは何も実行されません。
-specialregisters -force
db2dsdriver.cfg 構成ファイル内の指定した <dsn> サブセクションから、すべての特殊レジスター情報を削除します。<dsn> サブセクションに特殊レジスターがない場合、アクションは実行されません。
-database db_name -host host_name -port port_number
構成ファイル内のパラメーター・エレメント、セッション・グローバル変数パラメーター・エレメント、あるいは <database> サブセクション全体を削除する場合に使用するデータベース名を指定します。

パラメーター・エレメントまたはセッション・グローバル変数パラメーター・エレメントの情報を削除するには、対応するデータベース名およびパラメーターまたはセッション・グローバル変数の情報を指定します。

データベース・サブセクション全体を削除するには、パラメーターやセッション・グローバル変数の情報を指定せずに、データベース名のみを指定します。

-parameter[s] parameter_name1[;...;parameter_nameN]
db2dsdriver.cfg 構成ファイルに指定されたデータベース名から削除するパラメーター情報を指定します。

構成ファイルの <database> サブセクションに、示されたパラメーターがない場合、アクションは何も実行されません。

-sessionglobalvariables globvar_name[;...;globvar_nameN]
db2dsdriver.cfg 構成ファイルに指定されたデータベース名から削除するセッション・グローバル変数情報を指定します。

指示したセッション・グローバル変数が構成ファイルの <database> サブセクションで指定されていない場合、アクションは実行されません。

-sessionglobalvariables -force
db2dsdriver.cfg 構成ファイル内の指定したデータベース名から、すべてのセッション・グローバル変数情報を削除します。 <database> サブセクションにセッション・グローバル変数がない場合、アクションは実行されません。
-specialregisters register_name[;...;register_nameN]
db2dsdriver.cfg 構成ファイルに指定されたデータベース名から削除する特殊レジスター情報を指定します。構成ファイルの指定の <database> サブセクションに、示された特殊レジスターがない場合、アクションは何も実行されません。
-specialregisters -force
db2dsdriver.cfg 構成ファイル内の指定したデータベース名から、すべての特殊レジスター情報を削除します。 <database> サブセクションに特殊レジスターがない場合、アクションは実行されません。
-parameter[s] parameter_name1[;...;parameter_nameN]
db2dsdriver.cfg 構成ファイル内の <parameters> セクションから削除するパラメーター情報を指定します。

構成ファイルの <parameters> セクションに、示されたパラメーターがない場合、アクションは何も実行されません。

-sessionglobalvariables globvar_name[;...;globvar_nameN]
db2dsdriver.cfg 構成ファイル内の <parameters> セクションから削除するセッション・グローバル変数情報を指定します。

構成ファイルの <parameters> セクションに、示されたセッション・グローバル変数がない場合、アクションは何も実行されません。

-sessionglobalvariables -force
db2dsdriver.cfg 構成ファイル内の <parameters> セクションから、すべてのセッション・グローバル変数情報を削除します。<parameters> サブセクションにセッション・グローバル変数がない場合、アクションは実行されません。
-specialregisters register_name=register_value[;...;register_nameN=registerN_value]
db2dsdriver.cfg 構成ファイル内の <parameters> セクションから削除する特殊レジスター情報を指定します。指示した特殊レジスターが構成ファイルの <parameters> サブセクションにない場合、アクションは実行されません。
-specialregisters -force
db2dsdriver.cfg 構成ファイル内の <parameters> セクションから、すべての特殊レジスター情報を削除します。<parameters> サブセクションに特殊レジスターがない場合、アクションは実行されません。
-help
writecfg パラメーターの使用法に関連したヘルプ情報を表示します。
refreshldap
IBM データ・サーバー・ドライバー構成ファイル (db2dsdriver.cfg) のすべての構成情報を、Lightweight Directory Access Protocol (LDAP) サーバーで指定されている構成情報で更新および追加します。db2cli refreshldap コマンドは、LDAP サーバーへの接続に使用する現行のユーザー ID に対して指定されている構成情報を取得します。db2cli refreshldap コマンドを使用して作成された、IBM データ・サーバー・ドライバー構成ファイル内のすべての DSN 項目には、LDAP=1 属性が含まれています。

LDAP サーバー内のデータベースに対して定義されている認証タイプは、IBM データ・サーバー・ドライバー構成ファイル内の DSN 別名に関する <dsn> セクションに追加または更新されます。

LDAP サーバー内のデータベースに対して定義された Protocol パラメーターは、値が TCPIP 以外の場合にのみ、DSN 別名に関する <dsn> セクションに追加または更新されます。

以下の表に、DCS パラメーターと、IBM データ・サーバー・ドライバー構成ファイルでサポートされている同等のキーワードを示します。ここに示された DCS パラメーターのみ、refreshldap オプションで追加または更新できます。
表 1. DCS パラメーターおよび同等の IBM データ・サーバー・ドライバー構成キーワード
DCS パラメーター 同等のキーワード
map-file SQLCODEMAP
INTERRUPT_ENABLED InterruptProcessingMode
SYSPLEX ConnectionLevelLoadBalancing
BIDI BiDiCCSID
SYSPLEX パラメーターを除くすべてのサポート対象 DCS パラメーターが、<dsn> セクションに追加または更新されます。LDAP サーバーに存在する SYSPLEX パラメーターは、対応する <database> セクションに追加または更新されます。refreshldap オプションを使用して IBM データ・サーバー・ドライバー構成ファイルを更新する場合は、db2cli.ini ファイルを構成しないことによって、予期せぬ動作を避けることができます。db2cli.ini ファイルの構成の方が、IBM データ・サーバー・ドライバー構成ファイルよりも優先されます。

IBM データ・サーバー・ドライバー構成ファイルがない場合は、db2cli refreshldap コマンドによって作成されます。

db2cli refreshldap コマンドによって、LDAP サーバーで指定されている CLI キーワードと同等のキーワードを使用して IBM データ・サーバー・ドライバー構成ファイルが更新されます。同等の IBM データ・サーバー・ドライバー構成キーワードを持たない LDAP サーバーで指定された CLI キーワードを使用すると、警告メッセージが表示されます。GWNODE オプションを使用して指定された LDAP サーバー上のゲートウェイ設定は、追加も更新もされず、警告メッセージが表示されます。LDAP サーバーの代替サーバー設定は、追加も更新もされず、警告メッセージが表示されます。

LDAP サーバー上の DSN 項目が、LDAP サーバー項目で作成されていない (LDAP=1 属性がない) IBM データ・サーバー・ドライバー構成ファイルの既存の DSN 項目に一致する場合、警告が返され、DSN 項目は更新されません。

同じデータベースに対してだが異なる別名を持つ複数の DSN 項目が IBM データ・サーバー・ドライバー構成ファイルに存在する場合、LDAP サーバー項目から作成された (LDAP=1 属性がある) DSN 項目のみが、LDAP サーバー上の DSN 項目が削除されたときに削除されます。

db2cli refreshldap コマンドは、 IBM Data Server Driver Package および IBM Data Server Driver for ODBC and CLI 製品でのみ実行できます。

db2cli refreshldap コマンドは、IBM Data Server Client 製品、IBM Data Server Runtime Client 製品、または IBM データベース・サーバー製品から発行できる REFRESH LDAP IMMEDIATE ALL コマンドに似ています。
-global
IBM データ・サーバー・ドライバー構成ファイルのすべての構成情報を、LDAP サーバー上のすべてのユーザー ID に関して指定されているグローバルな構成情報で更新および追加します。
-help
db2cli コマンドのヘルプ情報を表示します。

使用上の注意

対話式 CLI インターフェースは、 CLI 関数呼び出しの設計、プロトタイプ作成、およびテストに使用できる一連のコマンドで構成されています。 このツールはプログラマーの便宜を図ったテスト用ツールであり、ツールのパフォーマンスに関しては IBM の保証はありません。このインターフェースは、ユーザーを対象にしてはいないので、広範囲にわたるエラー・チェック機能はありません。

以下の 3 タイプのコマンドがサポートされています。
CLI コマンド
CLI がサポートする各関数呼び出しに対応している (同じ名前の) コマンド。
サポート・コマンド
CLI 関数には等価なものがないコマンド。
追加モード
db2cli コマンドの追加モードを使用して、CLI 環境構成の 妥当性検査およびテストを行うことができます。

コマンドは対話式に発行することも、またはファイル内から発行することもできます。 同様に、コマンドの出力は、端末に表示することもファイルに書き込むこともできます。IBM Data Server Driver for ODBC and CLI の便利なフィーチャーの 1 つに、 セッション中に入力されたコマンドをすべてキャプチャーし、それをファイルに書き込むことによってコマンド・スクリプト を作成する機能があります。 このスクリプトは後で再実行することができます。

Windows 64 ビットのオペレーティング・システム上の IBM Data Server Client パッケージの場合、64 ビット・バージョンの db2cli コマンドのほかに、32 ビット・バージョンの db2cli (db2cli32.exe) もサポートされています。

SQL ステートメントは、SQLExecDirect() 関数を使用して実行されます。 SQL ステートメントの実行時に、db2cli execsql コマンドでは、db2cli.ini ファイルと db2dsdriver.cfg ファイルで指定されたデータベース設定値が使用されます。

db2cli コマンドによって戻されるエラー・メッセージは、SQLGetDiagRec() 関数と同じフォーマットでフォーマット設定されます。

コマンド行 ODBC の登録: Windows で DSN を構成および登録するには、以下のようにします。
  1. サーバー・ノードのカタログを作成します。 詳しくは、『CLP によるクライアントからの TCP/IP ノードのカタログ』を参照してください。
  2. 接続先のデータベースのカタログを作成します。 詳しくは、『CLP を使用したクライアントからのデータベースのカタログ作成』を参照してください。
  3. (オプション) データベース接続サービス (DCS) ディレクトリーのカタログを作成します。 詳しくは、『CATALOG DCS DATABASE コマンド』を参照してください。
  4. db2cli 対話式ツールを使って DSN を登録します。
    • 32 ビットの ODBC DSN の場合、db2cli32 コマンドを使用します。
    • 64 ビットの ODBC DSN の場合、db2cli コマンドを使用します。
64 ビットのインストール済み環境では、DSN の登録に db2clidb2cli32 の両方のバージョンを使用できます。 db2cli コマンドは 64 ビットの DSN を登録し、db2cli32 コマンドは 32 ビットの DSN を登録します。

32 ビットのインストール済み環境では、db2cli コマンドは、デフォルトで 32 ビットの DSN のみを登録します。

登録する DSN は、db2cli.ini ファイルまたは db2dsdriver.cfg ファイルになければなりません。

db2cli validate
以下の例では、ユーティリティーは、db2cli.ini ファイルの [COMMON] セクション、db2cli.ini ファイルにある sample DSN 名の [DSN] セクション、db2dsdriver.cfg ファイルにある sample DSN 名の <dsn> エレメントを読み取ります。 有効なキーワードと無効なキーワードの両方が表示されます。 無効なキーワードは、UNKNOWN としてリストされます。
db2cli validate –dsn sample
次の例では、ユーティリティーは、db2cli.ini ファイルの [COMMON] セクション、データベース dbname1 の <database> セクション、db2dsdriver.cfg ファイルにあるサーバー server1.net1.com とポート 50001 を読み取ります。 有効なキーワードと無効なキーワードの両方が表示されます。 無効なキーワードは、UNKNOWN としてリストされます。
db2cli validate -database dbname1:server1.net1.com:50001
次の例では、データ・ソース名を指定してユーティリティーを使用しています。 データ・ソース名に二重引用符 ("") が付けられています。
db2cli validate -dsn "IBM - User Acceptance" 
   -connect -user <userid> -passwd <password>
db2cli writecfg
このセクションに記載されている例では、db2dsdriver.cfg ファイルの内容は以下のとおりであると想定します。
<configuration>
  <dsncollection>
   <dsn alias="alias1" name="name1" host="server1.net1.com" port="50001"> 
    <parameter name="DisableAutoCommit" value="TRUE"/>
   </dsn>
  </dsncollection>
  <databases>
   <database name="name1" host="server1.net1.com" port="50001">
    <parameter name="CurrentSchema" value="OWNER1"/>
   </database> 
  </databases>
  <parameters>
     <parameter name="IsolationLevel" value="SQL_TXN_READ_COMMITTED"/>
  </parameters>
</configuration>
以下の例では、db2dsdriver.cfg 構成ファイルに新しいデータ・ソース・エレメントが追加されます。
db2cli writecfg add –dsn alias2 –database name2 -host server1.net1.com -port 50001
このコマンドの結果、dsncollection セクションは以下のように変更されます。
<dsncollection>
 <dsn alias="alias1" name="name1" host="server1.net1.com" port="50001"> 
  <parameter name="DisableAutoCommit" value="TRUE"/>
 </dsn>
 <dsn alias="alias2" name="name2" host="server1.net1.com" port="50001"/>
</dsncollection>
以下の例では、description で指定された新しいデータ・ソース・エレメントが db2dsdriver.cfg 構成ファイルに追加されます。
db2cli writecfg add –dsn alias3 -description alias3description –database name3 -host server1.net1.com -port 50001
このコマンドの結果、dsncollection セクションは以下のように変更されます。
<dsncollection>
<dsn alias="alias1" name="name1" host="server1.net1.com" port="50001">
  <parameter name="DisableAutoCommit" value="TRUE"/>
</dsn>
<dsn alias="alias2" name="name2" host="server1.net1.com" port="50001"/>
<dsn alias="alias3" description="alias3description" name="name3" host="server1.net1.com" port="50001"/>
</dsncollection>
以下の例では、構成ファイル内の dsn エレメントが削除されます。
db2cli writecfg remove –dsn alias3
このコマンドの結果、dsncollection セクションは以下のように変更されます。
<dsncollection>
<dsn alias="alias1" name="name1" host="server1.net1.com" port="50001">
  <parameter name="DisableAutoCommit" value="TRUE"/>
</dsn>
<dsn alias="alias2" name="name2" host="server1.net1.com" port="50001"/>
</dsncollection>
以下の例では、構成ファイル内の既存のデータ・ソースにパラメーター情報が追加されます。
db2cli writecfg add –dsn alias2 –parameters “DisableAutoCommit=FALSE;CurrentSchema=OWNER2;pureQueryXml=C:¥¥clico”
このコマンドの結果、dsncollection セクションは以下のように変更されます。
<dsncollection>
 <dsn alias="alias1" name="name1" host="server1.net1.com" port="50001"> 
  <parameter name="DisableAutoCommit" value="TRUE"/>
 </dsn>
 <dsn alias="alias2" name="name2" host="server1.net1.com" port="50001">
  <parameter name="DisableAutoCommit" value="FALSE"/>
  <parameter name="CurrentSchema" value="OWNER2"/>
..<parameter name="pureQueryXml" value="C:¥clico"/>
 </dsn>
</dsncollection>
以下の例では、構成ファイル内のパラメーターに新しいデータベース・エレメントが追加されます。
db2cli writecfg add –database name2 –host server1.net1.com -port 50001  -parameters “LockTimeout=20;KeepAliveTimeout=20000”
このコマンドの結果、databases セクションは以下のように変更されます。
<databases>
 <database name="name1" host="server1.net1.com" port="50001">
  <parameter name="CurrentSchema" value="OWNER1"/>
 </database> 
 <database name="name2" host="server1.net1.com" port="50001">
  parameter name=" LockTimeout" value="20"/>
  parameter name="KeepAliveTimeout" value="20000"/>
 </database> 
</databases>
以下の例では、構成ファイル内の既存の dsn エレメントの既存のパラメーターが変更されます。
db2cli writecfg add –dsn alias1 –parameter “DisableAutoCommit=FALSE”
このコマンドの結果、dsncollection セクションは以下のように変更されます。
<dsncollection>
 <dsn alias="alias1" name="name1" host="server1.net1.com" port="50001"> 
  <parameter name="DisableAutoCommit" value="FALSE"/>
 </dsn>
 <dsn alias="alias2" name="name2" host="server1.net1.com" port="50001">
  <parameter name="DisableAutoCommit" value="FALSE"/>
  <parameter name="CurrentSchema" value="OWNER2"/>
..<parameter name="pureQueryXml" value="C:¥clico"/>
 </dsn>
</dsncollection>
以下の例では、構成ファイル内のグローバル・セクションにパラメーター・エレメントが追加されます。
db2cli writecfg add -parameter "ReceiveTimeout=20000"
このコマンドの結果、グローバル・セクションが以下のように変更されます。
<parameters>
 <parameter name="IsolationLevel" value=" SQL_TXN_READ_COMMITTED"/>
 <parameter name="ReceiveTimeout" value="20000"/> 
</parameters>
以下の例では、構成ファイル内のデータベースからパラメーター・エレメントが削除されます。
db2cli writecfg remove –database name1 -host server1.net1.com -port 50001 –parameter “CurrentSchema”
このコマンドの結果、databases セクションは以下のように変更されます。
<databases>
 <database name="name1" host="server1.net1.com" port="50001">
 </database>
 <database name="name2" host="server1.net1.com" port="50001">
  parameter name="LockTimeout" value="20"/>
  parameter name="KeepAliveTimeout" value="20000"/>
 </database>
 </databases>
以下の例では、構成ファイル内の dsn エレメントが削除されます。
db2cli writecfg remove –dsn alias1
このコマンドの結果、dsncollection セクションは以下のように変更されます。
<dsncollection>
 <dsn alias="alias2" name="name2" host="server1.net1.com" port="50001">
  <parameter name="DisableAutoCommit" value="FALSE"/>
  <parameter name="CurrentSchema" value="OWNER2"/>
  <parameter name="pureQueryXml" value="C:¥clico"/>
 </dsn>
</dsncollection>
db2cli execsql
以下の例では、SAMPLE データベースに以下の表およびプロシージャーが作成されているとします。
create table employee(empid integer, empname varchar(100)

  CREATE PROCEDURE proc1 (  ) 
  DYNAMIC RESULT SETS 1 P1: 
  BEGIN
    DECLARE cursor1 CURSOR WITH RETURN FOR  SELECT * FROM fprem;  
    OPEN cursor1;
  END P1

  CREATE PROCEDURE PROC2(IN ID1 INTEGER,OUT NAME VARCHAR(20)) 
  BEGIN 
  DECLARE CUR1 CURSOR WITH RETURN TO CALLER FOR SELECT * FROM EMPLOYEE1 WHERE ID=ID1; 
    OPEN CUR1; 
  END
また、この例では、SQL ファイル test.sql に以下のテキストが含まれているとします。
--Populate table( employee )
insert into employee(empid, empname) values(1, 'Adam')
insert into employee(empid, empname) values(2, 'Atul')
select empid, empname  from employee

--Execute the stored procedure
Call proc1( )
コンソール・ウィンドウに以下の db2cli コマンドを入力して、 ファイル内の SQL ステートメントを実行します。
db2cli execsql –dsn sample –inputsql test.sql
以下のテキストが、コンソール・ウィンドウに表示されます。
IBM DATABASE 2 Interactive CLI Sample Program
(C) COPYRIGHT International Business Machines Corp. 1993,1996
All Rights Reserved
Licensed Materials - Property of IBM

insert into employee(empid, empname) values(1, 'Adam')
The SQL command completed successfully.

insert into employee(empid, empname) values(2, 'Atul')
The SQL command completed successfully.

select empid, empname  from employee

EMPID EMPNAME
1, Adam
2, Atul

Call proc1()

EMPID EMPNAME
1, Adam
2, Atul
OUT 引数を持つストアード・プロシージャーの CALL ステートメントを実行します。疑問符 (?) を OUT パラメーターとして使用することができます。
以下の例では、 SQL スクリプト・ファイル test2.sql に以下のテキストが含まれているとします。
CALL PROC2( 1, ?)
コンソール・ウィンドウに以下の db2cli コマンドを入力して、 ファイル内の SQL ステートメントを実行します。
db2cli execsql –dsn sample –inputsql test2.sql 
以下のテキストが、コンソール・ウィンドウに表示されます。
Value of output parameters
--------------------------
Parameter Name  : NAME
Parameter Value : -

ID
-----------
    1

-prepareonly オプションを指定して、 SQL ステートメントを実行せずに準備します。この SQL ステートメントに必要な DDL ステートメントは、 -prepareonly オプションを指定して db2cli execsql コマンドを 実行する前に、実行しておく必要があります。

以下の例では、 SQL ファイル test3.sql に以下のテキストが含まれているとします。
--populate table( employee )
insert into employee(empid, empname) values(1, 'Adam');
insert into employee(empid, empname) values(2, 'Atul');
select empid, empname  from employee;
また、 表 EMPLOYEE がデータベースに作成されているとします。コンソール・ウィンドウに以下の db2cli コマンドを入力して、 ファイル内の SQL ステートメントを準備します。
db2cli execsql –prepareonly –dsn sample –inputsql test3.sql
以下のテキストが、コンソール・ウィンドウに表示されます。
IBM DATABASE 2 Interactive CLI Sample Program
(C) COPYRIGHT International Business Machines Corp. 1993,1996
All Rights Reserved
Licensed Materials - Property of IBM

insert into employee(empid, empname) values(1, 'Adam')
The SQL command prepared successfully.

insert into employee(empid, empname) values(2, 'Atul')
The SQL command prepared successfully.

select empid, empname  from employee
The SQL command prepared successfully.
If you place DDL statements that are required for DML statements in
the same file, the DML statements that require the DDL statements 
fail. For example, assume that the following text is in the file 
test4.sql, and assume that and the EMPLOYEE table has not been 
created in the database:
--create and populate table( employee )
create table employee(empid integer, empname varchar(100));
insert into employee(empid, empname) values(1, 'Adam');
insert into employee(empid, empname) values(2, 'Atul');
select empid, empname  from employee;

-- try to create another table with the same name
create table employee(empid integer, empname varchar(100));
INSERT および SELECT ステートメントを正常に実行するには、 事前に CREATE TABLE ステートメントを実行しておく必要があります。
コンソール・ウィンドウに以下の db2cli コマンドを入力して、 ファイル内の SQL ステートメントを準備します。
db2cli execsql –prepareonly –dsn sample –inputsql test4.sql
以下のテキストが、コンソール・ウィンドウに表示されます。

IBM DATABASE 2 Interactive CLI Sample Program
(C) COPYRIGHT International Business Machines Corp. 1993,1996
All Rights Reserved
Licensed Materials - Property of IBM

create table employee(empid integer, empname varchar(100))
The SQL command prepared successfully.

insert into employee(empid, empname) values(1, 'Adam')
The SQL command failed. During SQL processing it returned:
[IBM][CLI Driver][DB2/6000] SQL0204N  "EMPLOYEE" is an undefined name.  SQLSTATE=42704

insert into employee(empid, empname) values(2, 'Atul')
The SQL command failed. During SQL processing it returned:
[IBM][CLI Driver][DB2/6000] SQL0204N  "EMPLOYEE" is an undefined name.  SQLSTATE=42704

select empid, empname  from employee
The SQL command failed. During SQL processing it returned:
[IBM][CLI Driver][DB2/6000] SQL0204N  "EMPLOYEE" is an undefined name.  SQLSTATE=42704

create table employee(empid integer, empname varchar(100))
The SQL command prepared successfully.
この例では、2 つの CREATE SQL ステートメントが正常に準備されましたが、 EMPLOYEE 表はデータベースに作成されませんでした。EMPLOYEE 表がデータベースに存在しなかったため、 INSERT および SELECT ステートメントが正常に準備されませんでした。
db2cli bind
以下の例では、db2cli.lst リスト・ファイルをバインドします。
$ db2cli bind @db2cli.lst –database “mydb:test.torolab.ibm.com:446” 
–options “BLOCKING unambig REOPT always ISOLATION RR”
LINE    MESSAGES FOR db2cli.lst
------  --------------------------------------------------------------
        SQL0061W  The binder is in progress.
        SQL0091N  Binding was ended with "0" errors and "0" warnings.
db2cli refreshldap
以下の db2dsdriver.cfg ファイルは、db2cli refreshldap コマンドで変更されます。

<configuration>
<dsncollection>
 <dsn alias="sample" name="sample" host="hotel53.ibm.com" port="40576” ldap=1>
  <parameter name="DisbaleAutoCommit" value="0"/>
  <parameter name="AllowDeferredPrepare" value="1"/> 
 </dsn>
 <dsn alias="EC205" name="STLEC1"  host="INEC005.ibm.com" port="446" ldap=1>
  <parameter name="InterruptProcessingMode" value="1"/>
 </dsn>
 <dsn alias="test1" name="test" host="xyz.ibm.com" port="446" ldap=1>
  <parameter name="QueryTimeoutInterval" value="15"/>
  <parameter name="Authentication" value="SERVER"/>
 </dsn>
</dsncollection>
 <databases>
  <database name="sample" host="hotel53.ibm.com" port="40576"/>
  <database name="STLEC1" host="INEC006.ibm.com" port="446">
   <parameter name="ConnectionLevelLoadBalancing" value="1"/>
  </database>
  <database name="test" host="xyz.ibm.com" port="446"/>
 </databases>
</configuration>