Annotation of embedaddon/php/ext/oci8/tests/lob_002.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: oci_lob_write() and friends (with errors)
! 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 lob_002_tab",
! 17: "create table lob_002_tab (id number, b1 BLOB)",
! 18: );
! 19:
! 20: oci8_test_sql_execute($c, $stmtarray);
! 21:
! 22: $statement = oci_parse($c, "insert into lob_002_tab (id, b1) values (1, empty_blob()) returning b1 INTO :v_blob ");
! 23: $blob = oci_new_descriptor($c,OCI_D_LOB);
! 24: oci_bind_by_name($statement,":v_blob", $blob,-1,OCI_B_BLOB);
! 25: oci_execute($statement, OCI_DEFAULT);
! 26:
! 27: var_dump($blob);
! 28:
! 29: var_dump($blob->write("test", -1));
! 30: var_dump($blob->write("test", "str"));
! 31: var_dump($blob->write("test", 1000000));
! 32: var_dump($blob->write(str_repeat("test", 10000), 1000000));
! 33: var_dump($blob->tell());
! 34: var_dump($blob->seek("str", -5));
! 35: var_dump($blob->flush());
! 36:
! 37: oci_commit($c);
! 38:
! 39: $select_sql = "select b1 from lob_002_tab where id = 1";
! 40: $s = oci_parse($c, $select_sql);
! 41: oci_execute($s);
! 42:
! 43: $row = oci_fetch_array($s, OCI_RETURN_LOBS);
! 44:
! 45: var_dump(strlen($row[0]));
! 46:
! 47: // Cleanup
! 48:
! 49: $stmtarray = array(
! 50: "drop table lob_002_tab"
! 51: );
! 52:
! 53: oci8_test_sql_execute($c, $stmtarray);
! 54:
! 55: ?>
! 56: ===DONE===
! 57: <?php exit(0); ?>
! 58: --EXPECTF--
! 59: object(OCI-Lob)#%d (1) {
! 60: ["descriptor"]=>
! 61: resource(%d) of type (oci8 descriptor)
! 62: }
! 63: int(0)
! 64:
! 65: Warning: OCI-Lob::write() expects parameter 2 to be long, string given in %slob_002.php on line %d
! 66: NULL
! 67: int(4)
! 68: int(40000)
! 69: int(40004)
! 70:
! 71: Warning: OCI-Lob::seek() expects parameter 1 to be long, string given in %slob_002.php on line %d
! 72: NULL
! 73: bool(false)
! 74: int(40004)
! 75: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>