Annotation of embedaddon/php/ext/oci8/tests/lob_027.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: oci_lob_truncate()
! 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: $str = "this is a biiiig faaat test string. why are you reading it, I wonder? =)";
! 29: var_dump($blob->write($str));
! 30:
! 31: oci_commit($c);
! 32:
! 33: $select_sql = "SELECT blob FROM ".$schema.$table_name." FOR UPDATE";
! 34: $s = oci_parse($c, $select_sql);
! 35: oci_execute($s, OCI_DEFAULT);
! 36:
! 37: var_dump($row = oci_fetch_array($s));
! 38: oci_commit($c);
! 39:
! 40: for ($i = 5; $i >= 0; $i--) {
! 41:
! 42: $select_sql = "SELECT blob FROM ".$schema.$table_name." FOR UPDATE";
! 43: $s = oci_parse($c, $select_sql);
! 44: oci_execute($s, OCI_DEFAULT);
! 45:
! 46: $row = oci_fetch_array($s);
! 47: var_dump($row['BLOB']->load());
! 48: var_dump($row['BLOB']->truncate(($i-1)*10));
! 49:
! 50: oci_commit($c);
! 51: }
! 52:
! 53: $select_sql = "SELECT blob FROM ".$schema.$table_name." FOR UPDATE";
! 54: $s = oci_parse($c, $select_sql);
! 55: oci_execute($s, OCI_DEFAULT);
! 56:
! 57: $row = oci_fetch_array($s);
! 58: var_dump($row['BLOB']->load());
! 59: var_dump($row['BLOB']->truncate(-1));
! 60: var_dump($row['BLOB']->truncate(0));
! 61:
! 62: oci_commit($c);
! 63:
! 64: require dirname(__FILE__).'/drop_table.inc';
! 65:
! 66: echo "Done\n";
! 67:
! 68: ?>
! 69: --EXPECTF--
! 70: object(OCI-Lob)#%d (1) {
! 71: ["descriptor"]=>
! 72: resource(%d) of type (oci8 descriptor)
! 73: }
! 74: int(72)
! 75: array(2) {
! 76: [0]=>
! 77: object(OCI-Lob)#%d (1) {
! 78: ["descriptor"]=>
! 79: resource(%d) of type (oci8 descriptor)
! 80: }
! 81: ["BLOB"]=>
! 82: object(OCI-Lob)#%d (1) {
! 83: ["descriptor"]=>
! 84: resource(%d) of type (oci8 descriptor)
! 85: }
! 86: }
! 87: string(72) "this is a biiiig faaat test string. why are you reading it, I wonder? =)"
! 88: bool(true)
! 89: string(40) "this is a biiiig faaat test string. why "
! 90: bool(true)
! 91: string(30) "this is a biiiig faaat test st"
! 92: bool(true)
! 93: string(20) "this is a biiiig faa"
! 94: bool(true)
! 95: string(10) "this is a "
! 96: bool(true)
! 97: string(0) ""
! 98:
! 99: Warning: OCI-Lob::truncate(): Length must be greater than or equal to zero in %s on line %d
! 100: bool(false)
! 101: string(0) ""
! 102:
! 103: Warning: OCI-Lob::truncate(): Length must be greater than or equal to zero in %s on line %d
! 104: bool(false)
! 105: bool(true)
! 106: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>