Annotation of embedaddon/php/ext/oci8/tests/fetch_object_2.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: oci_fetch_object() with CLOB and NULL
! 3: --SKIPIF--
! 4: <?php
! 5: $target_dbs = array('oracledb' => true, 'timesten' => false); // test runs on these DBs
! 6: require(dirname(__FILE__).'/skipif.inc');
! 7: ?>
! 8: --FILE--
! 9: <?php
! 10:
! 11: require(dirname(__FILE__).'/connect.inc');
! 12:
! 13: // Initialization
! 14:
! 15: $stmtarray = array(
! 16: "drop table fetch_object_2_tab",
! 17: "create table fetch_object_2_tab (col1 number, col2 CLOB, col3 varchar2(15))",
! 18: "insert into fetch_object_2_tab values (123, '1st row col2 string', '1 more text')",
! 19: "insert into fetch_object_2_tab values (456, '2nd row col2 string', NULL)",
! 20: "insert into fetch_object_2_tab values (789, '3rd row col2 string', '3 more text')",
! 21: );
! 22:
! 23: oci8_test_sql_execute($c, $stmtarray);
! 24:
! 25: // Run Test
! 26:
! 27: echo "Test 1\n";
! 28:
! 29: if (!($s = oci_parse($c, 'select * from fetch_object_2_tab order by 1'))) {
! 30: die("oci_parse(select) failed!\n");
! 31: }
! 32:
! 33: if (!oci_execute($s)) {
! 34: die("oci_execute(select) failed!\n");
! 35: }
! 36:
! 37: while ($row = oci_fetch_object($s)) {
! 38: var_dump($row);
! 39: }
! 40:
! 41: echo "Test 2\n";
! 42:
! 43: if (!($s = oci_parse($c, 'select * from fetch_object_2_tab order by 1'))) {
! 44: die("oci_parse(select) failed!\n");
! 45: }
! 46:
! 47: if (!oci_execute($s)) {
! 48: die("oci_execute(select) failed!\n");
! 49: }
! 50:
! 51: while ($row = oci_fetch_object($s)) {
! 52: echo $row->COL1 . "\n";
! 53: echo $row->COL2->load(100) . "\n";
! 54: echo $row->COL3 . "\n";
! 55: }
! 56:
! 57: // Clean up
! 58:
! 59: $stmtarray = array(
! 60: "drop table fetch_object_2_tab"
! 61: );
! 62:
! 63: oci8_test_sql_execute($c, $stmtarray);
! 64:
! 65: ?>
! 66: ===DONE===
! 67: <?php exit(0); ?>
! 68: --EXPECTF--
! 69: Test 1
! 70: object(stdClass)#%d (3) {
! 71: ["COL1"]=>
! 72: string(3) "123"
! 73: ["COL2"]=>
! 74: object(OCI-Lob)#%d (1) {
! 75: ["descriptor"]=>
! 76: resource(%d) of type (oci8 descriptor)
! 77: }
! 78: ["COL3"]=>
! 79: string(11) "1 more text"
! 80: }
! 81: object(stdClass)#%d (3) {
! 82: ["COL1"]=>
! 83: string(3) "456"
! 84: ["COL2"]=>
! 85: object(OCI-Lob)#%d (1) {
! 86: ["descriptor"]=>
! 87: resource(%d) of type (oci8 descriptor)
! 88: }
! 89: ["COL3"]=>
! 90: NULL
! 91: }
! 92: object(stdClass)#%d (3) {
! 93: ["COL1"]=>
! 94: string(3) "789"
! 95: ["COL2"]=>
! 96: object(OCI-Lob)#%d (1) {
! 97: ["descriptor"]=>
! 98: resource(%d) of type (oci8 descriptor)
! 99: }
! 100: ["COL3"]=>
! 101: string(11) "3 more text"
! 102: }
! 103: Test 2
! 104: 123
! 105: 1st row col2 string
! 106: 1 more text
! 107: 456
! 108: 2nd row col2 string
! 109:
! 110: 789
! 111: 3rd row col2 string
! 112: 3 more text
! 113: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>