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>