Index: en/reference/ibm_db2/ini.xml =================================================================== RCS file: /repository/phpdoc/en/reference/ibm_db2/ini.xml,v retrieving revision 1.3 diff -u -u -r1.3 ini.xml --- en/reference/ibm_db2/ini.xml 20 Jul 2005 18:45:50 -0000 1.3 +++ en/reference/ibm_db2/ini.xml 3 Nov 2006 18:32:17 -0000 @@ -23,6 +23,18 @@ + ibm_db2.i5_allow_commit + "0" + PHP_INI_SYSTEM + + + + ibm_db2.i5_dbcs_alloc + "0" + PHP_INI_SYSTEM + + + ibm_db2.instance_name NULL PHP_INI_SYSTEM @@ -67,6 +79,54 @@ + + + ibm_db2.i5_allow_commit + integer + + + + This option controls the commit mode used for i5 schema collections + in the PHP application. + + + + 0 no commit (see i5_commit for override) + + + + + 1 allow commit (see i5_commit for override) + + + + + + + + + ibm_db2.i5_dbcs_alloc + integer + + + + This option controls the internal ibm_db2 allocation scheme + for large DBCS column buffers. + + + + 0 no expanded allocations (see i5_dbcs_alloc for override) + + + + + 1 use expanded allocations (see i5_dbcs_alloc for override) + + + + + + ibm_db2.instance_name Index: en/reference/ibm_db2/functions/db2-connect.xml =================================================================== RCS file: /repository/phpdoc/en/reference/ibm_db2/functions/db2-connect.xml,v retrieving revision 1.7 diff -u -u -r1.7 db2-connect.xml --- en/reference/ibm_db2/functions/db2-connect.xml 21 Feb 2006 16:42:41 -0000 1.7 +++ en/reference/ibm_db2/functions/db2-connect.xml 3 Nov 2006 18:32:19 -0000 @@ -167,6 +167,233 @@ + + The following new i5/OS options are available as of ibm_db2 version 1.5.1. + Note: prior versions of ibm_db2 do not support these new i5 options. + + + i5_lib + + + A character value that indicates the default library that will be + used for resolving unqualified file references. This is not valid + if the connection is using system naming mode. + + + + + i5_naming + + + DB2_I5_NAMING_ON value turns on DB2 UDB CLI iSeries + system naming mode. Files are qualified using the slash (/) delimiter. + Unqualified files are resolved using the library list for the job. + + + DB2_I5_NAMING_OFF value turns off DB2 UDB CLI default + naming mode, which is SQL naming. Files are qualified using the period (.) + delimiter. Unqualified files are resolved using either the default library + or the current user ID. + + + + + i5_commit + + + The i5_commit attribute should be set before the + db2_connect. If the value is changed after the + connection has been established, and the connection is to a remote data + source, the change does not take effect until the next successful + db2_connect for the connection handle. + + + Note: php.ini setting ibm_db2.i5_allow_commit==0 + or DB2_I5_TXN_NO_COMMIT is the default, but may be + overridden with the i5_commit option. + + + DB2_I5_TXN_NO_COMMIT - Commitment control is not used. + + + DB2_I5_TXN_READ_UNCOMMITTED - Dirty reads, nonrepeatable + reads, and phantoms are possible. + + + DB2_I5_TXN_READ_COMMITTED - Dirty reads are not possible. + Nonrepeatable reads, and phantoms are possible. + + + DB2_I5_TXN_REPEATABLE_READ - Dirty reads and nonrepeatable + reads are not possible. Phantoms are possible. + + + DB2_I5_TXN_SERIALIZABLE - Transactions are serializable. + Dirty reads, non-repeatable reads, and phantoms are not possible + + + + + i5_query_optimize + + + DB2_FIRST_IO All queries are optimized with the goal of + returning the first page of output as fast as possible. This goal works well + when the output is controlled by a user who is most likely to cancel the query + after viewing the first page of output data. Queries coded with an + OPTIMIZE FOR nnn ROWS clause honor the goal specified by the clause. + + + DB2_ALL_IO All queries are optimized with the goal of running + the entire query to completion in the shortest amount of elapsed time. This is a + good option when the output of a query is being written to a file or report, or + the interface is queuing the output data. Queries coded with an OPTIMIZE FOR nnn + ROWS clause honor the goal specified by the clause. This is the default. + + + + + i5_dbcs_alloc + + + DB2_I5_DBCS_ALLOC_ON value turns on DB2 6X allocation scheme + for DBCS translation column size growth. + + + DB2_I5_DBCS_ALLOC_OFF value turns off DB2 6X allocation scheme + for DBCS translation column size growth. + + + Note: php.ini setting ibm_db2.i5_dbcs_alloc==0 or + DB2_I5_DBCS_ALLOC_OFF is the default, but may be overridden + with the i5_dbcs_alloc option. + + + + + i5_date_fmt + + + SQL_FMT_ISO - The International Organization for Standardization + (ISO) date format yyyy-mm-dd is used. This is the default. + + + DB2_I5_FMT_USA - The United States date format mm/dd/yyyy is used. + + + DB2_I5_FMT_EUR - The European date format dd.mm.yyyy is used. + + + DB2_I5_FMT_JIS - The Japanese Industrial Standard date format + yyyy-mm-dd is used. + + + DB2_I5_FMT_MDY - The date format mm/dd/yyyy is used. + + + DB2_I5_FMT_DMY - The date format dd/mm/yyyy is used. + + + DB2_I5_FMT_YMD - The date format yy/mm/dd is used. + + + DB2_I5_FMT_JUL - The Julian date format yy/ddd is used. + + + DB2_I5_FMT_JOB - The job default is used. + + + + + i5_date_sep + + + DB2_I5_SEP_SLASH - A slash ( / ) is used as the date separator. + This is the default. + + + DB2_I5_SEP_DASH - A dash ( - ) is used as the date separator. + + + DB2_I5_SEP_PERIOD - A period ( . ) is used as the date + separator. + + + DB2_I5_SEP_COMMA - A comma ( , ) is used as the date separator. + + + DB2_I5_SEP_BLANK - A blank is used as the date separator. + + + DB2_I5_SEP_JOB - The job default is used + + + + + i5_time_fmt + + + DB2_I5_FMT_ISO - The International Organization for + Standardization (ISO) time format hh.mm.ss is used. This is the default. + + + DB2_I5_FMT_USA - The United States time format + hh:mmxx is used, where xx is AM or PM. + + + DB2_I5_FMT_EUR - The European time format hh.mm.ss + is used. + + + DB2_I5_FMT_JIS - The Japanese Industrial Standard + time format hh:mm:ss is used. + + + DB2_I5_FMT_HMS - The hh:mm:ss format is used. + + + + + i5_time_sep + + + DB2_I5_SEP_COLON - A colon ( : ) is used as the time + separator. This is the default. + + + DB2_I5_SEP_PERIOD - A period ( . ) is used as the time + separator. + + + DB2_I5_SEP_COMMA - A comma ( , ) is used as the time + separator. + + + DB2_I5_SEP_BLANK - A blank is used as the time separator. + + + DB2_I5_SEP_JOB - The job default is used. + + + + + i5_decimal_sep + + + DB2_I5_SEP_PERIOD - A period ( . ) is used as + the decimal separator. This is the default. + + + DB2_I5_SEP_COMMA - A comma ( , ) is used as the + date separator. + + + DB2_I5_SEP_JOB - The job default is used. + + + + + @@ -293,7 +520,36 @@ ]]> - + + i5/OS best performance + + To achieve best performance for your i5/OS ibm_db2 1.5.1 PHP application + use the default host, userid, and password for your + db2_connect. + + +"qsys2")); + $result = db2_exec($i5, + "select * from systables where table_schema = '$library'"); + while ($row = db2_fetch_both($result)) { + echo $row['TABLE_NAME']."
"; + } + db2_close($i5); +?> +]]> +
+ &example.outputs; + + + +
Index: en/reference/ibm_db2/functions/db2-fetch-row.xml =================================================================== RCS file: /repository/phpdoc/en/reference/ibm_db2/functions/db2-fetch-row.xml,v retrieving revision 1.5 diff -u -u -r1.5 db2-fetch-row.xml --- en/reference/ibm_db2/functions/db2-fetch-row.xml 12 Jul 2005 17:39:24 -0000 1.5 +++ en/reference/ibm_db2/functions/db2-fetch-row.xml 3 Nov 2006 18:32:19 -0000 @@ -101,6 +101,52 @@ ]]> + + i5/OS recommended alternatives to db2_fetch_row/db2_result + + On i5/OS it is recommended that you use db2_fetch_both, + db2_fetch_array, or db2_fetch_object + over db2_fetch_row/db2_result. In general + db2_fetch_row/db2_result have more issues + with various column types in EBCIDIC to ASCII + translation, including possible truncation in DBCS applications. + You may also find the performance of db2_fetch_both, + db2_fetch_array, and db2_fetch_object to + be superior to db2_fetch_row/db2_result. + + + DB2_SCROLLABLE)); + while ($row = db2_fetch_both($stmt)){ + echo "
db2_fetch_both {$row['SPECIFIC_NAME']} {$row['ROUTINE_CREATED']} {$row[5]}"; + } + $stmt = db2_exec($conn, $sql, array('cursor' => DB2_SCROLLABLE)); + while ($row = db2_fetch_array($stmt)){ + echo "
db2_fetch_array {$row[1]} {$row[5]}"; + } + $stmt = db2_exec($conn, $sql, array('cursor' => DB2_SCROLLABLE)); + while ($row = db2_fetch_object($stmt)){ + echo "
db2_fetch_object {$row->SPECIFIC_NAME} {$row->ROUTINE_CREATED}"; + } + db2_close($conn); +?> +]]> +
+ &example.outputs; + + + +
Index: en/reference/ibm_db2/functions/db2-set-option.xml =================================================================== RCS file: /repository/phpdoc/en/reference/ibm_db2/functions/db2-set-option.xml,v retrieving revision 1.3 diff -u -u -r1.3 db2-set-option.xml --- en/reference/ibm_db2/functions/db2-set-option.xml 4 Oct 2006 00:44:12 -0000 1.3 +++ en/reference/ibm_db2/functions/db2-set-option.xml 3 Nov 2006 18:32:19 -0000 @@ -124,6 +124,27 @@ + + The following new i5/OS options are available as of ibm_db2 version 1.5.1. + Note: prior versions of ibm_db2 do not support these new i5 options. + + + i5_fetch_only + + + DB2_I5_FETCH_ON - Cursors are read-only + and cannot be used for positioned updates or deletes. This + is the default unless SQL_ATTR_FOR_FETCH_ONLY + environment has been set to SQL_FALSE. + + + DB2_I5_FETCH_OFF - Cursors can be used + for positioned updates and deletes. + + + + + @@ -252,6 +273,20 @@ X -
+ + i5_fetch_only + DB2_I5_FETCH_ON + - + X + - + + + i5_fetch_only + DB2_I5_FETCH_OFF + - + X + - + @@ -638,6 +673,34 @@ [comm] => 1904.00 )]]> + + i5/OS cursors are read-only + + + +"nobody")); + $stmt = db2_prepare($conn, 'select * from names where first = ?'); + $name = "first2"; + db2_bind_param($stmt, 1, "name", DB2_PARAM_IN); + $options = array("i5_fetch_only"=>DB2_I5_FETCH_ON); + db2_set_option($stmt,$options,0); + if (db2_execute($stmt)) { + while ($row = db2_fetch_array($stmt)) { + echo "{$row[0]} {$row[1]}"; + } + } +?> +]]> + + &example.outputs; + + + +