<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.ibm-db2.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ja',
  ),
  'this' => 
  array (
    0 => 'function.db2-set-option.php',
    1 => 'db2_set_option',
    2 => '接続リソースあるいはステートメントリソースのオプションを設定する',
  ),
  'up' => 
  array (
    0 => 'ref.ibm-db2.php',
    1 => 'IBM DB2 関数',
  ),
  'prev' => 
  array (
    0 => 'function.db2-server-info.php',
    1 => 'db2_server_info',
  ),
  'next' => 
  array (
    0 => 'function.db2-special-columns.php',
    1 => 'db2_special_columns',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ja',
    'path' => 'reference/ibm_db2/functions/db2-set-option.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.db2-set-option" class="refentry">
  <div class="refnamediv">
    <h1 class="refname">db2_set_option</h1>
    <p class="verinfo">(PECL ibm_db2 &gt;= 1.0.0)</p><p class="refpurpose"><span class="refname">db2_set_option</span> &mdash; <span class="dc-title">接続リソースあるいはステートメントリソースのオプションを設定する</span></p>

  </div>
  <div class="refsect1 description" id="refsect1-function.db2-set-option-description">
    <h3 class="title">説明</h3>
    <div class="methodsynopsis dc-description">
      <span class="methodname"><strong>db2_set_option</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span> <code class="parameter">$resource</code></span>, <span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$options</code></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$type</code></span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>

    <p class="simpara">
     ステートメントリソースあるいは接続リソースのオプションを設定します。
     結果セットリソースのオプションを設定することはできません。
    </p>
  </div>

  <div class="refsect1 parameters" id="refsect1-function.db2-set-option-parameters">
    <h3 class="title">パラメータ</h3>
    <dl>
       
         <dt><code class="parameter">resource</code></dt>
         <dd>
           <span class="simpara">
            <span class="function"><a href="function.db2-prepare.php" class="function">db2_prepare()</a></span> が返す有効なステートメントリソースか、
            あるいは <span class="function"><a href="function.db2-connect.php" class="function">db2_connect()</a></span> や
            <span class="function"><a href="function.db2-pconnect.php" class="function">db2_pconnect()</a></span> が返す有効な接続リソース。
           </span>
         </dd>
       
       
         <dt><code class="parameter">options</code></dt>
         <dd>
           <p class="para">
            ステートメントあるいは接続のオプションを含む連想配列。
            このパラメータは、自動コミットの値を変更したりカーソルの型を
            (スクロール可能、あるいは前進のみに) 変更したり、結果セットに表示されるカラム名を
            (小文字、大文字、あるいは元のままに) 設定したりする際に使用します。
             <dl>
               
                 <dt><code class="parameter">autocommit</code></dt>
                 <dd>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-autocommit-on">DB2_AUTOCOMMIT_ON</a></code></strong> を渡すと、
                    指定した接続リソースの自動コミットをオンにします。
                   </span>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-autocommit-off">DB2_AUTOCOMMIT_OFF</a></code></strong> を渡すと、
                    指定した接続リソースの自動コミットをオフにします。
                   </span>
                 </dd>
               
               
                 <dt><code class="parameter">cursor</code></dt>
                 <dd>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-forward-only">DB2_FORWARD_ONLY</a></code></strong> を渡すと、
                    ステートメントリソースに前進のみのカーソルを指定します。
                    これはデフォルトのカーソル型であり、
                    すべてのデータベースサーバーでサポートされています。
                   </span>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-scrollable">DB2_SCROLLABLE</a></code></strong> を渡すと、
                    ステートメントリソースにスクロール可能なカーソルを指定します。
                    このカーソルは、順番どおり以外の方法で結果セットの行にアクセス可能です。
                    しかし、IBM DB2 Universal Database でしかサポートされていません。
                   </span>
                 </dd>
               
               
                 <dt><code class="parameter">binmode</code></dt>
                 <dd>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-binary">DB2_BINARY</a></code></strong> を渡すと、
                    バイナリデータがそのままの形式で返されるようになります。
                    これはデフォルトのモードです。<var class="filename">php.ini</var> で
                    <code class="literal">ibm_db2.binmode=1</code> とするのと同じことです。
                   </span>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-convert">DB2_CONVERT</a></code></strong> を渡すと、
                    バイナリデータを十六進エンコーディングで変換して返します。
                    これは、<var class="filename">php.ini</var> で
                    <code class="literal">ibm_db2.binmode=2</code> とするのと同じことです。
                   </span>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-passthru">DB2_PASSTHRU</a></code></strong> を渡すと、
                    バイナリデータを <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong> に変換するようになります。これは
                    <var class="filename">php.ini</var> で <code class="literal">ibm_db2.binmode=3</code>
                    とするのと同じことです。
                   </span>
                 </dd>
               
               
                 <dt><code class="parameter">db2_attr_case</code></dt>
                 <dd>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-case-lower">DB2_CASE_LOWER</a></code></strong> を渡すと、
                    結果セットのカラム名を小文字で返します。
                   </span>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-case-upper">DB2_CASE_UPPER</a></code></strong> を渡すと、
                    結果セットのカラム名を大文字で返します。
                   </span>
                   <span class="simpara">
                    <strong><code><a href="ibm-db2.constants.php#constant.db2-case-natural">DB2_CASE_NATURAL</a></code></strong> を渡すと、
                    結果セットのカラム名をそのまま何もせずに返します。
                   </span>
                 </dd>
               
               
                <dt><code class="parameter">deferred_prepare</code></dt>
                <dd>
                 <span class="simpara">
                  <strong><code><a href="ibm-db2.constants.php#constant.db2-deferred-prepare-on">DB2_DEFERRED_PREPARE_ON</a></code></strong> を渡すと、
                  指定したステートメントリソースについて遅延プリペアを有効にします。
                 </span>
                 <span class="simpara">
                  <strong><code><a href="ibm-db2.constants.php#constant.db2-deferred-prepare-off">DB2_DEFERRED_PREPARE_OFF</a></code></strong> を渡すと、
                  指定したステートメントリソースについて遅延プリペアを無効にします。
                 </span>
                </dd>
               
             </dl>
           </p>
           <p class="para">
            以下の新しい i5/OS オプションは、ibm_db2 のバージョン 1.5.1 以降で使用可能です。
            これらのオプションが適用されるのは、PHP と ibm_db2 が
            i5 システム上でネイティブに動作している場合のみです。
             <dl>
               
                 <dt><code class="parameter">i5_fetch_only</code></dt>
                 <dd>
                   <span class="simpara">
                    <code class="literal">DB2_I5_FETCH_ON</code> -
                    カーソルは読み込み専用となり、場所を指定しての更新や削除には使用できません。
                    これは、<code class="literal">SQL_ATTR_FOR_FETCH_ONLY</code>
                    が <code class="literal">SQL_FALSE</code> に設定されていない場合のデフォルト設定です。
                   </span>
                   <span class="simpara">
                    <code class="literal">DB2_I5_FETCH_OFF</code> -
                    カーソルは、場所を指定しての更新や削除に使用できるようになります。
                   </span>
                 </dd>
               
              </dl>
           </p>
           <p class="para">
            以下の新しいオプションが、ibm_db2 バージョン 1.8.0 以降で使用可能です。
             <dl>
               
                 <dt><code class="parameter">rowcount</code></dt>
                 <dd>
                   <span class="simpara">
                    <code class="literal">DB2_ROWCOUNT_PREFETCH_ON</code> -
                    クライアントは、取得する前に全行数を問い合わせることができます。つまり、
                    <code class="literal">ROLLFORWARD_ONLY</code> カーソルを使っている場合でも
                    選択された行数を <span class="function"><a href="function.db2-num-rows.php" class="function">db2_num_rows()</a></span> で取得することができます。
                   </span>
                   <span class="simpara">
                    <code class="literal">DB2_ROWCOUNT_PREFETCH_OFF</code> -
                    クライアントは、取得する前に全行数を問い合わせることができません。
                   </span>
                 </dd>
               
             </dl>
           </p>
           <p class="para">
            以下の新しいオプションが、ibm_db2 バージョン 1.7.0 以降で使用可能です。
             <dl>
               
                 <dt><code class="parameter">trusted_user</code></dt>
                 <dd>
                   <span class="simpara">
                    ユーザーを信頼済みユーザーに変更する際に、信頼済みユーザーのユーザー ID
                    (文字列) をこのキーの値として渡します。
                    このオプションは、接続リソース上でのみ設定可能です。
                    このオプションを使用するには、
                    信頼済みコンテキストを接続リソース上で有効にしなければなりません。
                   </span>
                 </dd>
               
               
                 <dt><code class="parameter">trusted_password</code></dt>
                 <dd>
                   <span class="simpara">
                    trusted_user キーで指定したユーザーに対応するパスワード (文字列)。
                   </span>
                 </dd>
               
              </dl>
           </p>
           <p class="para">
            以下の新しいオプションが、ibm_db2 バージョン 1.6.0 以降で使用可能です。
            これらは、有用な情報を提供します。これらの情報は、
            <span class="function"><a href="function.db2-get-option.php" class="function">db2_get_option()</a></span> によって取得します。
            <blockquote class="note"><p><strong class="note">注意</strong>: 
             <span class="simpara">
              各オプションの値を設定する際、
              サーバーによっては指定したすべての内容を処理できないことがあります。
              その場合、値が切り詰められます。
             </span>
             <span class="simpara">
              指定したオプションが正しく変換されてホストシステムに送信されることを確実にするには、
              A から Z までの文字と 0 から 9 までの数字、そしてアンダースコア
              (_) とピリオド (.) のみを使用するようにします。
             </span>
            </p></blockquote>
            <dl>
             
              <dt><code class="parameter">userid</code></dt>
              <dd>
               <p class="para">
                <code class="literal">SQL_ATTR_INFO_USERID</code> -
                ヌル終端の文字列へのポインタで、DB2 接続の際にホストデータベースサーバーに送信する
                クライアントのユーザー ID として使用します。
                <blockquote class="note"><p><strong class="note">注意</strong>: 
                 <span class="simpara">
                  z/OS および OS/390 サーバー版の DB2 は 16 文字までの長さをサポートしています。
                  このユーザー ID を、認証時に使用するユーザー ID と混同しないでください。
                  これは識別のためだけに使用するものであり、認証には用いられません。
                 </span>
                </p></blockquote>
               </p>
              </dd>
             
             
              <dt><code class="parameter">acctstr</code></dt>
              <dd>
               <p class="para">
                <code class="literal">SQL_ATTR_INFO_ACCTSTR</code> -
                ヌル終端の文字列へのポインタで、DB2 接続の際にホストデータベースサーバーに送信する
                クライアントのアカウンティング・ストリングとして使用します。
                <blockquote class="note"><p><strong class="note">注意</strong>: 
                 <span class="simpara">
                  z/OS および OS/390 サーバー版の DB2 は 200 文字までの長さをサポートしています。
                 </span>
                </p></blockquote>
               </p>
              </dd>
             
             
              <dt><code class="parameter">applname</code></dt>
              <dd>
               <p class="para">
                <code class="literal">SQL_ATTR_INFO_APPLNAME</code> -
                ヌル終端の文字列へのポインタで、DB2 接続の際にホストデータベースサーバーに送信する
                クライアントのアプリケーション名として使用します。
                <blockquote class="note"><p><strong class="note">注意</strong>: 
                 <span class="simpara">
                  z/OS および OS/390 サーバー版の DB2 は 32 文字までの長さをサポートしています。
                 </span>
                </p></blockquote>
               </p>
              </dd>
             
             
              <dt><code class="parameter">wrkstnname</code></dt>
              <dd>
               <p class="para">
                <code class="literal">SQL_ATTR_INFO_WRKSTNNAME</code> -
                ヌル終端の文字列へのポインタで、DB2 接続の際にホストデータベースサーバーに送信する
                クライアントのワークステーション名として使用します。
                <blockquote class="note"><p><strong class="note">注意</strong>: 
                 <span class="simpara">
                  z/OS および OS/390 サーバー版の DB2 は 18 文字までの長さをサポートしています。
                 </span>
                </p></blockquote>
               </p>
              </dd>
             
            </dl>
           </p>
         </dd>
       
       
         <dt><code class="parameter">type</code></dt>
         <dd>
           <span class="simpara">
            この関数に渡すリソースの型を、整数値で指定します。
            リソースの型とこの値は必ず一致していなければなりません。
           </span>
           <span class="simpara">
            <code class="literal">1</code> は、
            接続リソースがこの関数に渡されることを表します。
           </span>
           <span class="simpara">
            <code class="literal">1</code> 以外の整数を指定すると、
            ステートメントリソースがこの関数に渡されることを表します。
           </span>
         </dd>
       
     </dl>
    <p class="simpara">
    </p>
    <p class="para">
     次の表は、それぞれのオプションがどのリソース型で使用可能かをまとめたものです。
      <table class="doctable table">
        <caption><strong>リソースとパラメータの対応</strong></caption>
        
          <col style="text-align: center;" />
          <col style="text-align: center;" />
          <col style="text-align: center;" />
          <col style="text-align: center;" />
          <col style="text-align: center;" />

          <thead>
            <tr>
              <th>キー</th>
              <th>値</th>
              <th colspan="3">リソースの型</th>
            </tr>

          </thead>


          <tbody class="tbody">
            <tr>
              <td class="empty">&nbsp;</td><td class="empty">&nbsp;</td><td>接続</td>
              <td>ステートメント</td>
              <td>結果セット</td>
            </tr>

            <tr>
              <td>autocommit</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-autocommit-on">DB2_AUTOCOMMIT_ON</a></code></strong></td>
              <td>X</td>
              <td>-</td>
              <td>-</td>
            </tr>

            <tr>
              <td>autocommit</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-autocommit-off">DB2_AUTOCOMMIT_OFF</a></code></strong></td>
              <td>X</td>
              <td>-</td>
              <td>-</td>
            </tr>

            <tr>
              <td>cursor</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-scrollable">DB2_SCROLLABLE</a></code></strong></td>
              <td>-</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>cursor</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-forward-only">DB2_FORWARD_ONLY</a></code></strong></td>
              <td>-</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>binmode</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-binary">DB2_BINARY</a></code></strong></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>binmode</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-convert">DB2_CONVERT</a></code></strong></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>binmode</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-passthru">DB2_PASSTHRU</a></code></strong></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>db2_attr_case</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-case-lower">DB2_CASE_LOWER</a></code></strong></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>db2_attr_case</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-case-upper">DB2_CASE_UPPER</a></code></strong></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>db2_attr_case</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-case-natural">DB2_CASE_NATURAL</a></code></strong></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>deferred_prepare</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-deferred-prepare-on">DB2_DEFERRED_PREPARE_ON</a></code></strong></td>
              <td>-</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>deferred_prepare</td>
              <td><strong><code><a href="ibm-db2.constants.php#constant.db2-deferred-prepare-off">DB2_DEFERRED_PREPARE_OFF</a></code></strong></td>
              <td>-</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>i5_fetch_only</td>
              <td><code class="literal">DB2_I5_FETCH_ON</code></td>
              <td>-</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>i5_fetch_only</td>
              <td><code class="literal">DB2_I5_FETCH_OFF</code></td>
              <td>-</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>rowcount</td>
              <td><code class="literal">DB2_ROWCOUNT_PREFETCH_ON</code></td>
              <td>-</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>rowcount</td>
              <td><code class="literal">DB2_ROWCOUNT_PREFETCH_OFF</code></td>
              <td>-</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>trusted_user</td>
              <td><code class="literal">&lt;USER NAME&gt; (文字列)</code></td>
              <td>X</td>
              <td>-</td>
              <td>-</td>
            </tr>

            <tr>
              <td>trusted_password</td>
              <td><code class="literal">&lt;PASSWORD&gt; (文字列)</code></td>
              <td>X</td>
              <td>-</td>
              <td>-</td>
            </tr>

            <tr>
              <td>userid</td>
              <td><code class="literal">SQL_ATTR_INFO_USERID</code></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>acctstr</td>
              <td><code class="literal">SQL_ATTR_INFO_ACCTSTR</code></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>applname</td>
              <td><code class="literal">SQL_ATTR_INFO_APPLNAME</code></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

            <tr>
              <td>wrkstnname</td>
              <td><code class="literal">SQL_ATTR_INFO_WRKSTNNAME</code></td>
              <td>X</td>
              <td>X</td>
              <td>-</td>
            </tr>

          </tbody>
        
      </table>

    </p>
  </div>


  <div class="refsect1 returnvalues" id="refsect1-function.db2-set-option-returnvalues">
    <h3 class="title">戻り値</h3>
    <p class="simpara">
     成功した場合に <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> を、失敗した場合に <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> を返します。
    </p>
  </div>

  

  
  <div class="refsect1 examples" id="refsect1-function.db2-set-option-examples">
    <h3 class="title">例</h3>
    <p class="para">

      <div class="example" id="example-1">
        <p><strong>例1 接続リソースにひとつのパラメータを設定する</strong></p>
        <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* データベース接続用のパラメータ */<br /></span><span style="color: #0000BB">$database </span><span style="color: #007700">= </span><span style="color: #DD0000">'SAMPLE'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$hostname </span><span style="color: #007700">= </span><span style="color: #DD0000">'localhost'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$port </span><span style="color: #007700">= </span><span style="color: #0000BB">50000</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$protocol </span><span style="color: #007700">= </span><span style="color: #DD0000">'TCPIP'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$username </span><span style="color: #007700">= </span><span style="color: #DD0000">'db2inst1'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password </span><span style="color: #007700">= </span><span style="color: #DD0000">'ibmdb2'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続文字列 */<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">= </span><span style="color: #DD0000">"DRIVER={IBM DB2 ODBC DRIVER};DATABASE=</span><span style="color: #0000BB">$database</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"HOSTNAME=</span><span style="color: #0000BB">$hostname</span><span style="color: #DD0000">;PORT=</span><span style="color: #0000BB">$port</span><span style="color: #DD0000">;PROTOCOL=</span><span style="color: #0000BB">$protocol</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"UID=</span><span style="color: #0000BB">$username</span><span style="color: #DD0000">;PWD=</span><span style="color: #0000BB">$password</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続リソースを取得します */<br /></span><span style="color: #0000BB">$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn_string</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 有効なキーと値を使用して、オプションの連想配列を作成します */<br /></span><span style="color: #0000BB">$options </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'autocommit' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_AUTOCOMMIT_ON</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 正しいリソースとオプションの配列、そして型を表す値を指定して関数をコールします */<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_set_option</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #0000BB">$options</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* すべてのオプションが正しく設定できたかどうかを調べます */<br /></span><span style="color: #007700">if(</span><span style="color: #0000BB">$result</span><span style="color: #007700">)<br />{<br />  echo </span><span style="color: #DD0000">'オプションの設定に成功しました'</span><span style="color: #007700">;<br />}<br />else<br />{<br />  echo </span><span style="color: #DD0000">'オプションが設定できませんでした'</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
        </div>

        <div class="example-contents"><p>上の例の出力は以下となります。</p></div>
        <div class="example-contents screen"><div class="examplescode"><pre class="examplescode">オプションの設定に成功しました</pre>
</div></div>
      </div>

      <div class="example" id="example-2">
        <p><strong>例2 接続リソースに複数のパラメータを設定する</strong></p>
        <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* データベース接続用のパラメータ */<br /></span><span style="color: #0000BB">$database </span><span style="color: #007700">= </span><span style="color: #DD0000">'SAMPLE'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$hostname </span><span style="color: #007700">= </span><span style="color: #DD0000">'localhost'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$port </span><span style="color: #007700">= </span><span style="color: #0000BB">50000</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$protocol </span><span style="color: #007700">= </span><span style="color: #DD0000">'TCPIP'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$username </span><span style="color: #007700">= </span><span style="color: #DD0000">'db2inst1'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password </span><span style="color: #007700">= </span><span style="color: #DD0000">'ibmdb2'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続文字列 */<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">= </span><span style="color: #DD0000">"DRIVER={IBM DB2 ODBC DRIVER};DATABASE=</span><span style="color: #0000BB">$database</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"HOSTNAME=</span><span style="color: #0000BB">$hostname</span><span style="color: #DD0000">;PORT=</span><span style="color: #0000BB">$port</span><span style="color: #DD0000">;PROTOCOL=</span><span style="color: #0000BB">$protocol</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"UID=</span><span style="color: #0000BB">$username</span><span style="color: #DD0000">;PWD=</span><span style="color: #0000BB">$password</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続リソースを取得します */<br /></span><span style="color: #0000BB">$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn_string</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 有効なキーと値を使用して、オプションの連想配列を作成します */<br /></span><span style="color: #0000BB">$options </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'autocommit' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_AUTOCOMMIT_OFF</span><span style="color: #007700">,<br />                    </span><span style="color: #DD0000">'binmode' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_PASSTHRU</span><span style="color: #007700">,<br />              </span><span style="color: #DD0000">'db2_attr_case' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_CASE_UPPER</span><span style="color: #007700">,<br />                     </span><span style="color: #DD0000">'cursor' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_SCROLLABLE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 正しいリソースとオプションの配列、そして型を表す値を指定して関数をコールします */<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_set_option</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #0000BB">$options</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* すべてのオプションが正しく設定できたかどうかを調べます */<br /></span><span style="color: #007700">if(</span><span style="color: #0000BB">$result</span><span style="color: #007700">)<br />{<br />  echo </span><span style="color: #DD0000">'オプションの設定に成功しました'</span><span style="color: #007700">;<br />}<br />else<br />{<br />  echo </span><span style="color: #DD0000">'オプションが設定できませんでした'</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
        </div>

        <div class="example-contents"><p>上の例の出力は以下となります。</p></div>
        <div class="example-contents screen"><div class="examplescode"><pre class="examplescode">オプションの設定に成功しました</pre>
</div></div>
      </div>

      
      <div class="example" id="example-3">
        <p><strong>例3 複数のパラメータを間違ったキーで設定する</strong></p>
        <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* データベース接続用のパラメータ */<br /></span><span style="color: #0000BB">$database </span><span style="color: #007700">= </span><span style="color: #DD0000">'SAMPLE'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$hostname </span><span style="color: #007700">= </span><span style="color: #DD0000">'localhost'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$port </span><span style="color: #007700">= </span><span style="color: #0000BB">50000</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$protocol </span><span style="color: #007700">= </span><span style="color: #DD0000">'TCPIP'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$username </span><span style="color: #007700">= </span><span style="color: #DD0000">'db2inst1'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password </span><span style="color: #007700">= </span><span style="color: #DD0000">'ibmdb2'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続文字列 */<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">= </span><span style="color: #DD0000">"DRIVER={IBM DB2 ODBC DRIVER};DATABASE=</span><span style="color: #0000BB">$database</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"HOSTNAME=</span><span style="color: #0000BB">$hostname</span><span style="color: #DD0000">;PORT=</span><span style="color: #0000BB">$port</span><span style="color: #DD0000">;PROTOCOL=</span><span style="color: #0000BB">$protocol</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"UID=</span><span style="color: #0000BB">$username</span><span style="color: #DD0000">;PWD=</span><span style="color: #0000BB">$password</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続リソースを取得します */<br /></span><span style="color: #0000BB">$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn_string</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 有効なキーと値を使用して、オプションの連想配列を作成します */<br /></span><span style="color: #0000BB">$options </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'autocommit' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_AUTOCOMMIT_OFF</span><span style="color: #007700">,<br />             </span><span style="color: #DD0000">'MY_INVALID_KEY' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_PASSTHRU</span><span style="color: #007700">,<br />              </span><span style="color: #DD0000">'db2_attr_case' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_CASE_UPPER</span><span style="color: #007700">,<br />                     </span><span style="color: #DD0000">'cursor' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_SCROLLABLE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 正しいリソースとオプションの配列、そして型を表す値を指定して関数をコールします */<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_set_option</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #0000BB">$options</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* すべてのオプションが正しく設定できたかどうかを調べます */<br /></span><span style="color: #007700">if(</span><span style="color: #0000BB">$result</span><span style="color: #007700">)<br />{<br />  echo </span><span style="color: #DD0000">'オプションの設定に成功しました'</span><span style="color: #007700">;<br />}<br />else<br />{<br />  echo </span><span style="color: #DD0000">'オプションが設定できませんでした'</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
        </div>

        <div class="example-contents"><p>上の例の出力は以下となります。</p></div>
        <div class="example-contents screen"><div class="examplescode"><pre class="examplescode">オプションが設定できませんでした</pre>
</div></div>
      </div>

      
      <div class="example" id="example-4">
        <p><strong>例4 複数のパラメータを間違った値で設定する</strong></p>
        <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* データベース接続用のパラメータ */<br /></span><span style="color: #0000BB">$database </span><span style="color: #007700">= </span><span style="color: #DD0000">'SAMPLE'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$hostname </span><span style="color: #007700">= </span><span style="color: #DD0000">'localhost'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$port </span><span style="color: #007700">= </span><span style="color: #0000BB">50000</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$protocol </span><span style="color: #007700">= </span><span style="color: #DD0000">'TCPIP'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$username </span><span style="color: #007700">= </span><span style="color: #DD0000">'db2inst1'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password </span><span style="color: #007700">= </span><span style="color: #DD0000">'ibmdb2'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続文字列 */<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">= </span><span style="color: #DD0000">"DRIVER={IBM DB2 ODBC DRIVER};DATABASE=</span><span style="color: #0000BB">$database</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"HOSTNAME=</span><span style="color: #0000BB">$hostname</span><span style="color: #DD0000">;PORT=</span><span style="color: #0000BB">$port</span><span style="color: #DD0000">;PROTOCOL=</span><span style="color: #0000BB">$protocol</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"UID=</span><span style="color: #0000BB">$username</span><span style="color: #DD0000">;PWD=</span><span style="color: #0000BB">$password</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続リソースを取得します */<br /></span><span style="color: #0000BB">$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn_string</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 有効なキーと値を使用して、オプションの連想配列を作成します */<br /></span><span style="color: #0000BB">$options </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'autocommit' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_AUTOCOMMIT_OFF</span><span style="color: #007700">,<br />                    </span><span style="color: #DD0000">'binmode' </span><span style="color: #007700">=&gt; </span><span style="color: #DD0000">'INVALID_VALUE'</span><span style="color: #007700">,<br />              </span><span style="color: #DD0000">'db2_attr_case' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_CASE_UPPER</span><span style="color: #007700">,<br />                     </span><span style="color: #DD0000">'cursor' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_SCROLLABLE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 正しいリソースとオプションの配列、そして型を表す値を指定して関数をコールします */<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_set_option</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #0000BB">$options</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* すべてのオプションが正しく設定できたかどうかを調べます */<br /></span><span style="color: #007700">if(</span><span style="color: #0000BB">$result</span><span style="color: #007700">)<br />{<br />  echo </span><span style="color: #DD0000">'オプションの設定に成功しました'</span><span style="color: #007700">;<br />}<br />else<br />{<br />  echo </span><span style="color: #DD0000">'オプションが設定できませんでした'</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
        </div>

        <div class="example-contents"><p>上の例の出力は以下となります。</p></div>
        <div class="example-contents screen"><div class="examplescode"><pre class="examplescode">オプションが設定できませんでした</pre>
</div></div>
      </div>

      <div class="example" id="example-5">
        <p><strong>例5 複数のパラメータを接続リソースに設定する (間違った型を指定する)</strong></p>
        <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* データベース接続用のパラメータ */<br /></span><span style="color: #0000BB">$database </span><span style="color: #007700">= </span><span style="color: #DD0000">'SAMPLE'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$hostname </span><span style="color: #007700">= </span><span style="color: #DD0000">'localhost'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$port </span><span style="color: #007700">= </span><span style="color: #0000BB">50000</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$protocol </span><span style="color: #007700">= </span><span style="color: #DD0000">'TCPIP'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$username </span><span style="color: #007700">= </span><span style="color: #DD0000">'db2inst1'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password </span><span style="color: #007700">= </span><span style="color: #DD0000">'ibmdb2'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続文字列 */<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">= </span><span style="color: #DD0000">"DRIVER={IBM DB2 ODBC DRIVER};DATABASE=</span><span style="color: #0000BB">$database</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"HOSTNAME=</span><span style="color: #0000BB">$hostname</span><span style="color: #DD0000">;PORT=</span><span style="color: #0000BB">$port</span><span style="color: #DD0000">;PROTOCOL=</span><span style="color: #0000BB">$protocol</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"UID=</span><span style="color: #0000BB">$username</span><span style="color: #DD0000">;PWD=</span><span style="color: #0000BB">$password</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続リソースを取得します */<br /></span><span style="color: #0000BB">$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn_string</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 有効なキーと値を使用して、オプションの連想配列を作成します */<br /></span><span style="color: #0000BB">$options </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'autocommit' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_AUTOCOMMIT_OFF</span><span style="color: #007700">,<br />                    </span><span style="color: #DD0000">'binmode' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_PASSTHRU</span><span style="color: #007700">,<br />              </span><span style="color: #DD0000">'db2_attr_case' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_CASE_UPPER</span><span style="color: #007700">,<br />                     </span><span style="color: #DD0000">'cursor' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_SCROLLABLE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 正しいリソースとオプションの配列、そして間違った型を表す値を指定して関数をコールします */<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_set_option</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #0000BB">$options</span><span style="color: #007700">, </span><span style="color: #0000BB">2</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* すべてのオプションが正しく設定できたかどうかを調べます */<br /></span><span style="color: #007700">if(</span><span style="color: #0000BB">$result</span><span style="color: #007700">)<br />{<br />  echo </span><span style="color: #DD0000">'オプションの設定に成功しました'</span><span style="color: #007700">;<br />}<br />else<br />{<br />  echo </span><span style="color: #DD0000">'オプションが設定できませんでした'</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
        </div>

        <div class="example-contents"><p>上の例の出力は以下となります。</p></div>
        <div class="example-contents screen"><div class="examplescode"><pre class="examplescode">オプションが設定できませんでした</pre>
</div></div>
      </div>

      <div class="example" id="example-6">
        <p><strong>例6 複数のパラメータを間違ったリソースに設定する</strong></p>
        <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* データベース接続用のパラメータ */<br /></span><span style="color: #0000BB">$database </span><span style="color: #007700">= </span><span style="color: #DD0000">'SAMPLE'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$hostname </span><span style="color: #007700">= </span><span style="color: #DD0000">'localhost'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$port </span><span style="color: #007700">= </span><span style="color: #0000BB">50000</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$protocol </span><span style="color: #007700">= </span><span style="color: #DD0000">'TCPIP'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$username </span><span style="color: #007700">= </span><span style="color: #DD0000">'db2inst1'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password </span><span style="color: #007700">= </span><span style="color: #DD0000">'ibmdb2'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続文字列 */<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">= </span><span style="color: #DD0000">"DRIVER={IBM DB2 ODBC DRIVER};DATABASE=</span><span style="color: #0000BB">$database</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"HOSTNAME=</span><span style="color: #0000BB">$hostname</span><span style="color: #DD0000">;PORT=</span><span style="color: #0000BB">$port</span><span style="color: #DD0000">;PROTOCOL=</span><span style="color: #0000BB">$protocol</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"UID=</span><span style="color: #0000BB">$username</span><span style="color: #DD0000">;PWD=</span><span style="color: #0000BB">$password</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続リソースを取得します */<br /></span><span style="color: #0000BB">$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn_string</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 有効なキーと値を使用して、オプションの連想配列を作成します */<br /></span><span style="color: #0000BB">$options </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'autocommit' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_AUTOCOMMIT_OFF</span><span style="color: #007700">,<br />                    </span><span style="color: #DD0000">'binmode' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_PASSTHRU</span><span style="color: #007700">,<br />              </span><span style="color: #DD0000">'db2_attr_case' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_CASE_UPPER</span><span style="color: #007700">,<br />                     </span><span style="color: #DD0000">'cursor' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_SCROLLABLE</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$stmt </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_prepare</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #DD0000">'SELECT * FROM EMPLOYEE'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 間違ったリソース、そして正しいオプションの配列と型を表す値を指定して関数をコールします */<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_set_option</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">, </span><span style="color: #0000BB">$options</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* すべてのオプションが正しく設定できたかどうかを調べます */<br /></span><span style="color: #007700">if(</span><span style="color: #0000BB">$result</span><span style="color: #007700">)<br />{<br />  echo </span><span style="color: #DD0000">'オプションの設定に成功しました'</span><span style="color: #007700">;<br />}<br />else<br />{<br />  echo </span><span style="color: #DD0000">'オプションが設定できませんでした'</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
        </div>

        <div class="example-contents"><p>上の例の出力は以下となります。</p></div>
        <div class="example-contents screen"><div class="examplescode"><pre class="examplescode">オプションが設定できませんでした</pre>
</div></div>
      </div>

      <div class="example" id="example-7">
        <p><strong>例7 すべてひとつにまとめる</strong></p>
        <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* データベース接続用のパラメータ */<br /></span><span style="color: #0000BB">$database </span><span style="color: #007700">= </span><span style="color: #DD0000">'SAMPLE'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$hostname </span><span style="color: #007700">= </span><span style="color: #DD0000">'localhost'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$port </span><span style="color: #007700">= </span><span style="color: #0000BB">50000</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$protocol </span><span style="color: #007700">= </span><span style="color: #DD0000">'TCPIP'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$username </span><span style="color: #007700">= </span><span style="color: #DD0000">'db2inst1'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password </span><span style="color: #007700">= </span><span style="color: #DD0000">'ibmdb2'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続文字列 */<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">= </span><span style="color: #DD0000">"DRIVER={IBM DB2 ODBC DRIVER};DATABASE=</span><span style="color: #0000BB">$database</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"HOSTNAME=</span><span style="color: #0000BB">$hostname</span><span style="color: #DD0000">;PORT=</span><span style="color: #0000BB">$port</span><span style="color: #DD0000">;PROTOCOL=</span><span style="color: #0000BB">$protocol</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">.= </span><span style="color: #DD0000">"UID=</span><span style="color: #0000BB">$username</span><span style="color: #DD0000">;PWD=</span><span style="color: #0000BB">$password</span><span style="color: #DD0000">;"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* 接続リソースを取得します */<br /></span><span style="color: #0000BB">$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn_string</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">, </span><span style="color: #DD0000">''</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 有効なキーと値を使用して、オプションの連想配列を作成します */<br /></span><span style="color: #0000BB">$options </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'db2_attr_case' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_CASE_LOWER</span><span style="color: #007700">,<br />                        </span><span style="color: #DD0000">'cursor' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">DB2_SCROLLABLE</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$stmt </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_prepare</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #DD0000">'SELECT * FROM EMPLOYEE WHERE EMPNO = ? OR EMPNO = ?'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* 正しいリソースとオプションの配列、そして型を表す値を指定して関数をコールします */<br /></span><span style="color: #0000BB">$option_result </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_set_option</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">, </span><span style="color: #0000BB">$options</span><span style="color: #007700">, </span><span style="color: #0000BB">2</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'000130'</span><span style="color: #007700">, </span><span style="color: #DD0000">'000140'</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">/* スクロール可能なカーソルのため、1 行目より先に 2 行目を取得します */<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">db2_fetch_assoc</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">, </span><span style="color: #0000BB">2</span><span style="color: #007700">));<br />print </span><span style="color: #DD0000">'&lt;br /&gt;&lt;br /&gt;'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">db2_fetch_assoc</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
        </div>

        <div class="example-contents"><p>上の例の出力は以下となります。</p></div>
        <div class="example-contents screen"><div class="examplescode"><pre class="examplescode">Array
(
    [empno] =&gt; 000140
    [firstnme] =&gt; HEATHER
    [midinit] =&gt; A
    [lastname] =&gt; NICHOLLS
    [workdept] =&gt; C01
    [phoneno] =&gt; 1793
    [hiredate] =&gt; 1976-12-15
    [job] =&gt; ANALYST
    [edlevel] =&gt; 18
    [sex] =&gt; F
    [birthdate] =&gt; 1946-01-19
    [salary] =&gt; 28420.00
    [bonus] =&gt; 600.00
    [comm] =&gt; 2274.00
)

Array
(
    [empno] =&gt; 000130
    [firstnme] =&gt; DELORES
    [midinit] =&gt; M
    [lastname] =&gt; QUINTANA
    [workdept] =&gt; C01
    [phoneno] =&gt; 4578
    [hiredate] =&gt; 1971-07-28
    [job] =&gt; ANALYST
    [edlevel] =&gt; 16
    [sex] =&gt; F
    [birthdate] =&gt; 1925-09-15
    [salary] =&gt; 23800.00
    [bonus] =&gt; 500.00
    [comm] =&gt; 1904.00
)</pre>
</div></div>
      </div>
      <div class="example" id="example-8">
        <p><strong>例8 i5/OS カーソルは読み込み専用</strong></p>
        <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />  $conn </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_connect</span><span style="color: #007700">(</span><span style="color: #DD0000">""</span><span style="color: #007700">, </span><span style="color: #DD0000">""</span><span style="color: #007700">, </span><span style="color: #DD0000">""</span><span style="color: #007700">, array(</span><span style="color: #DD0000">"i5_lib"</span><span style="color: #007700">=&gt;</span><span style="color: #DD0000">"nobody"</span><span style="color: #007700">));<br />  </span><span style="color: #0000BB">$stmt </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_prepare</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #DD0000">'select * from names where first = ?'</span><span style="color: #007700">);<br />  </span><span style="color: #0000BB">$name </span><span style="color: #007700">= </span><span style="color: #DD0000">"first2"</span><span style="color: #007700">;<br />  </span><span style="color: #0000BB">db2_bind_param</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">, </span><span style="color: #DD0000">"name"</span><span style="color: #007700">, </span><span style="color: #0000BB">DB2_PARAM_IN</span><span style="color: #007700">);<br />  </span><span style="color: #0000BB">$options </span><span style="color: #007700">= array(</span><span style="color: #DD0000">"i5_fetch_only"</span><span style="color: #007700">=&gt;</span><span style="color: #0000BB">DB2_I5_FETCH_ON</span><span style="color: #007700">);<br />  </span><span style="color: #0000BB">db2_set_option</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">,</span><span style="color: #0000BB">$options</span><span style="color: #007700">,</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br />  if (</span><span style="color: #0000BB">db2_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">)) {<br />    while (</span><span style="color: #0000BB">$row </span><span style="color: #007700">= </span><span style="color: #0000BB">db2_fetch_array</span><span style="color: #007700">(</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">)) {<br />      echo </span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">]}</span><span style="color: #DD0000"> </span><span style="color: #007700">{</span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #0000BB">1</span><span style="color: #007700">]}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br />    }<br />  }<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
        </div>

        <div class="example-contents"><p>上の例の出力は以下となります。</p></div>
        <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">first2 last2</pre>
</div>
        </div>
      </div>
    </p>
  </div>

  <div class="refsect1 seealso" id="refsect1-function.db2-set-option-seealso">
    <h3 class="title">参考</h3>
    <ul class="simplelist">
       <li><span class="function"><a href="function.db2-connect.php" class="function" rel="rdfs-seeAlso">db2_connect()</a> - データベースへの接続を返す</span></li>
       <li><span class="function"><a href="function.db2-pconnect.php" class="function" rel="rdfs-seeAlso">db2_pconnect()</a> - データベースへの持続的接続を返す</span></li>
       <li><span class="function"><a href="function.db2-exec.php" class="function" rel="rdfs-seeAlso">db2_exec()</a> - SQL 文を直接実行する</span></li>
       <li><span class="function"><a href="function.db2-prepare.php" class="function" rel="rdfs-seeAlso">db2_prepare()</a> - 実行する SQL 文を準備する</span></li>
       <li><span class="function"><a href="function.db2-cursor-type.php" class="function" rel="rdfs-seeAlso">db2_cursor_type()</a> - ステートメントリソースが使用しているカーソルの型を返す</span></li>
     </ul>
  </div>

</div><?php manual_footer($setup); ?>