Sets options for a statement resource or a connection resource. You cannot set options for result set resources.
A valid statement resource as returned from db2_prepare() or a valid connection resource as returned from db2_connect() or db2_pconnect().
An associative array containing valid statement or connection options. This parameter can be used to change autocommit values, cursor types (scrollable or forward), and to specify the case of the column names (lower, upper, or natural) that will appear in a result set.
An integer value that specifies the type of resource that was passed into the function. The type of resource and this value must correspond.
Passing 1 as the value specifies that a connection resource has been passed into the function.
Passing any integer not equal to 1 as the value specifies that a statement resource has been passed into the function.
Returns TRUE
on success or FALSE
on failure.
<?php /* Database Connection Parameters */ $database = 'SAMPLE'; $hostname = 'localhost'; $port = 50000; $protocol = 'TCPIP'; $username = 'db2inst1'; $password = 'ibmdb2'; /* Connection String */ $conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;"; $conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;"; $conn_string .= "UID=$username;PWD=$password;"; /* Obtain Connection Resource */ $conn = db2_connect($conn_string, '', ''); /* Create the associative options array with valid key-value pairs */ $options = array('autocommit' => DB2_AUTOCOMMIT_ON); /* Call the function using the correct resource, options array, and type values */ $result = db2_set_option($conn, $options, 1); /* Check if all options could be set correctly */ if($result) { echo 'Options Set Successfully'; } else { echo 'Could Not Set Options'; } ?>
The above example will output:
Options Set Successfully
<?php /* Database Connection Parameters */ $database = 'SAMPLE'; $hostname = 'localhost'; $port = 50000; $protocol = 'TCPIP'; $username = 'db2inst1'; $password = 'ibmdb2'; /* Connection String */ $conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;"; $conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;"; $conn_string .= "UID=$username;PWD=$password;"; /* Obtain Connection Resource */ $conn = db2_connect($conn_string, '', ''); /* Create the associative options array with valid key-value pairs */ $options = array('autocommit' => DB2_AUTOCOMMIT_OFF, 'binmode' => DB2_PASSTHRU, 'db2_attr_case' => DB2_CASE_UPPER, 'cursor' => DB2_SCROLLABLE); /* Call the function using the correct resource, options array, and type values */ $result = db2_set_option($conn, $options, 1); /* Check if all options could be set correctly */ if($result) { echo 'Options Set Successfully'; } else { echo 'Could Not Set Options'; } ?>
The above example will output:
Options Set Successfully
<?php /* Database Connection Parameters */ $database = 'SAMPLE'; $hostname = 'localhost'; $port = 50000; $protocol = 'TCPIP'; $username = 'db2inst1'; $password = 'ibmdb2'; /* Connection String */ $conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;"; $conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;"; $conn_string .= "UID=$username;PWD=$password;"; /* Obtain Connection Resource */ $conn = db2_connect($conn_string, '', ''); /* Create the associative options array with valid key-value pairs */ $options = array('autocommit' => DB2_AUTOCOMMIT_OFF, 'MY_INVALID_KEY' => DB2_PASSTHRU, 'db2_attr_case' => DB2_CASE_UPPER, 'cursor' => DB2_SCROLLABLE); /* Call the function using the correct resource, options array, and type values */ $result = db2_set_option($conn, $options, 1); /* Check if all options could be set correctly */ if($result) { echo 'Options Set Successfully'; } else { echo 'Could Not Set Options'; } ?>
The above example will output:
Could Not Set Options
<?php /* Database Connection Parameters */ $database = 'SAMPLE'; $hostname = 'localhost'; $port = 50000; $protocol = 'TCPIP'; $username = 'db2inst1'; $password = 'ibmdb2'; /* Connection String */ $conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;"; $conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;"; $conn_string .= "UID=$username;PWD=$password;"; /* Obtain Connection Resource */ $conn = db2_connect($conn_string, '', ''); /* Create the associative options array with valid key-value pairs */ $options = array('autocommit' => DB2_AUTOCOMMIT_OFF, 'binmode' => 'INVALID_VALUE', 'db2_attr_case' => DB2_CASE_UPPER, 'cursor' => DB2_SCROLLABLE); /* Call the function using the correct resource, options array, and type values */ $result = db2_set_option($conn, $options, 1); /* Check if all options could be set correctly */ if($result) { echo 'Options Set Successfully'; } else { echo 'Could Not Set Options'; } ?>
The above example will output:
Could Not Set Options
<?php /* Database Connection Parameters */ $database = 'SAMPLE'; $hostname = 'localhost'; $port = 50000; $protocol = 'TCPIP'; $username = 'db2inst1'; $password = 'ibmdb2'; /* Connection String */ $conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;"; $conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;"; $conn_string .= "UID=$username;PWD=$password;"; /* Obtain Connection Resource */ $conn = db2_connect($conn_string, '', ''); /* Create the associative options array with valid key-value pairs */ $options = array('autocommit' => DB2_AUTOCOMMIT_OFF, 'binmode' => DB2_PASSTHRU, 'db2_attr_case' => DB2_CASE_UPPER, 'cursor' => DB2_SCROLLABLE); /* Call the function using the correct resource, options array, and the wrong type value */ $result = db2_set_option($conn, $options, 2); /* Check if all options could be set correctly */ if($result) { echo 'Options Set Successfully'; } else { echo 'Could Not Set Options'; } ?>
The above example will output:
Could Not Set Options
<?php /* Database Connection Parameters */ $database = 'SAMPLE'; $hostname = 'localhost'; $port = 50000; $protocol = 'TCPIP'; $username = 'db2inst1'; $password = 'ibmdb2'; /* Connection String */ $conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;"; $conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;"; $conn_string .= "UID=$username;PWD=$password;"; /* Obtain Connection Resource */ $conn = db2_connect($conn_string, '', ''); /* Create the associative options array with valid key-value pairs */ $options = array('autocommit' => DB2_AUTOCOMMIT_OFF, 'binmode' => DB2_PASSTHRU, 'db2_attr_case' => DB2_CASE_UPPER, 'cursor' => DB2_SCROLLABLE); $stmt = db2_prepare($conn, 'SELECT * FROM EMPLOYEE'); /* Call the function using the wrong resource, and the correct options array, and type values */ $result = db2_set_option($stmt, $options, 1); /* Check if all options could be set correctly */ if($result) { echo 'Options Set Successfully'; } else { echo 'Could Not Set Options'; } ?>
The above example will output:
Could Not Set Options
<?php /* Database Connection Parameters */ $database = 'SAMPLE'; $hostname = 'localhost'; $port = 50000; $protocol = 'TCPIP'; $username = 'db2inst1'; $password = 'ibmdb2'; /* Connection String */ $conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;"; $conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;"; $conn_string .= "UID=$username;PWD=$password;"; /* Obtain Connection Resource */ $conn = db2_connect($conn_string, '', ''); /* Create the associative options array with valid key-value pairs */ $options = array('db2_attr_case' => DB2_CASE_LOWER, 'cursor' => DB2_SCROLLABLE); $stmt = db2_prepare($conn, 'SELECT * FROM EMPLOYEE WHERE EMPNO = ? OR EMPNO = ?'); /* Call the function using the correct resource, options array, and type values */ $option_result = db2_set_option($stmt, $options, 2); $result = db2_execute($stmt, array('000130', '000140')); /* Get Row 2 before Row 1 since Scrollable Cursor */ print_r(db2_fetch_assoc($stmt, 2)); print '<br /><br />'; print_r(db2_fetch_assoc($stmt, 1)); ?>
The above example will output:
Array ( [empno] => 000140 [firstnme] => HEATHER [midinit] => A [lastname] => NICHOLLS [workdept] => C01 [phoneno] => 1793 [hiredate] => 1976-12-15 [job] => ANALYST [edlevel] => 18 [sex] => F [birthdate] => 1946-01-19 [salary] => 28420.00 [bonus] => 600.00 [comm] => 2274.00 ) Array ( [empno] => 000130 [firstnme] => DELORES [midinit] => M [lastname] => QUINTANA [workdept] => C01 [phoneno] => 4578 [hiredate] => 1971-07-28 [job] => ANALYST [edlevel] => 16 [sex] => F [birthdate] => 1925-09-15 [salary] => 23800.00 [bonus] => 500.00 [comm] => 1904.00 )
<?php $conn = db2_connect("", "", "", array("i5_lib"=>"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]}"; } } ?>
The above example will output:
first2 last2
Please login to continue.