Annotation of embedaddon/php/ext/oci8/tests/cursor_bind.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: bind and fetch cursor from a statement
                      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 cursor_bind_tab",
                     17:     "create table cursor_bind_tab (id NUMBER, value VARCHAR(20))",
                     18:     "insert into cursor_bind_tab values (1, '1')",
                     19:     "insert into cursor_bind_tab values (1, '1')",
                     20:     "insert into cursor_bind_tab values (1, '1')"
                     21: );
                     22: 
                     23: oci8_test_sql_execute($c, $stmtarray);
                     24: 
                     25: $sql = "
                     26: DECLARE
                     27: TYPE curtype IS REF CURSOR;
                     28: cursor_var curtype;
                     29: BEGIN
                     30:     OPEN cursor_var FOR SELECT id, value FROM cursor_bind_tab;
                     31:     :curs := cursor_var;
                     32: END;
                     33: ";
                     34: 
                     35: $stmt = oci_parse($c, $sql);
                     36: 
                     37: $cursor = oci_new_cursor($c);
                     38: oci_bind_by_name($stmt, ":curs", $cursor, -1, OCI_B_CURSOR);
                     39: 
                     40: oci_execute($stmt);
                     41: 
                     42: oci_execute($cursor);
                     43: var_dump(oci_fetch_row($cursor));
                     44: var_dump(oci_fetch_row($cursor));
                     45: var_dump(oci_fetch_row($cursor));
                     46: var_dump(oci_fetch_row($cursor));
                     47: 
                     48: // Clean up
                     49: 
                     50: $stmtarray = array(
                     51:     "drop table cursor_bind_tab"
                     52: );
                     53: 
                     54: oci8_test_sql_execute($c, $stmtarray);
                     55: 
                     56: ?>
                     57: ===DONE===
                     58: <?php exit(0); ?>
                     59: --EXPECT--  
                     60: array(2) {
                     61:   [0]=>
                     62:   string(1) "1"
                     63:   [1]=>
                     64:   string(1) "1"
                     65: }
                     66: array(2) {
                     67:   [0]=>
                     68:   string(1) "1"
                     69:   [1]=>
                     70:   string(1) "1"
                     71: }
                     72: array(2) {
                     73:   [0]=>
                     74:   string(1) "1"
                     75:   [1]=>
                     76:   string(1) "1"
                     77: }
                     78: bool(false)
                     79: ===DONE===

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>