Annotation of embedaddon/php/ext/oci8/tests/lob_008.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: oci_lob_write()/read()/eof()
! 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: require dirname(__FILE__).'/create_table.inc';
! 13:
! 14: $ora_sql = "INSERT INTO
! 15: ".$schema.$table_name." (blob)
! 16: VALUES (empty_blob())
! 17: RETURNING
! 18: blob
! 19: INTO :v_blob ";
! 20:
! 21: $statement = oci_parse($c,$ora_sql);
! 22: $blob = oci_new_descriptor($c,OCI_D_LOB);
! 23: oci_bind_by_name($statement,":v_blob", $blob,-1,OCI_B_BLOB);
! 24: oci_execute($statement, OCI_DEFAULT);
! 25:
! 26: var_dump($blob);
! 27:
! 28: var_dump($blob->write(str_repeat("string.", 1000)));
! 29: oci_commit($c);
! 30:
! 31: $select_sql = "SELECT blob FROM ".$schema.$table_name." FOR UPDATE";
! 32: $s = oci_parse($c, $select_sql);
! 33: oci_execute($s, OCI_DEFAULT);
! 34:
! 35: var_dump($row = oci_fetch_array($s));
! 36:
! 37:
! 38: $len = 0;
! 39: while (!$row[0]->eof()) {
! 40: $len += strlen($row[0]->read(1024));
! 41: }
! 42: var_dump($len);
! 43:
! 44: require dirname(__FILE__).'/drop_table.inc';
! 45:
! 46: echo "Done\n";
! 47:
! 48: ?>
! 49: --EXPECTF--
! 50: object(OCI-Lob)#%d (1) {
! 51: ["descriptor"]=>
! 52: resource(%d) of type (oci8 descriptor)
! 53: }
! 54: int(7000)
! 55: array(2) {
! 56: [0]=>
! 57: object(OCI-Lob)#%d (1) {
! 58: ["descriptor"]=>
! 59: resource(%d) of type (oci8 descriptor)
! 60: }
! 61: ["BLOB"]=>
! 62: object(OCI-Lob)#%d (1) {
! 63: ["descriptor"]=>
! 64: resource(%d) of type (oci8 descriptor)
! 65: }
! 66: }
! 67: int(7000)
! 68: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>