Annotation of embedaddon/php/ext/oci8/tests/lob_011.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: oci_lob_copy()
        !             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." (id, blob)
        !            16:                       VALUES (1, 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->write("some string here. string, I said"));
        !            27: oci_commit($c);
        !            28: 
        !            29: $ora_sql = "INSERT INTO
        !            30:                        ".$schema.$table_name." (id, blob)
        !            31:                       VALUES (2, empty_blob())
        !            32:                       RETURNING
        !            33:                                blob
        !            34:                       INTO :v_blob ";
        !            35: 
        !            36: $statement = oci_parse($c,$ora_sql);
        !            37: $blob = oci_new_descriptor($c,OCI_D_LOB);
        !            38: oci_bind_by_name($statement,":v_blob", $blob,-1,OCI_B_BLOB);
        !            39: oci_execute($statement, OCI_DEFAULT);
        !            40: 
        !            41: oci_commit($c);
        !            42: 
        !            43: $select_sql = "SELECT blob FROM ".$schema.$table_name." WHERE id = 1";
        !            44: $s = oci_parse($c, $select_sql);
        !            45: oci_execute($s);
        !            46: 
        !            47: $row1 = oci_fetch_array($s);
        !            48: 
        !            49: $select_sql = "SELECT blob FROM ".$schema.$table_name." WHERE id = 2 FOR UPDATE";
        !            50: $s = oci_parse($c, $select_sql);
        !            51: oci_execute($s, OCI_DEFAULT);
        !            52: 
        !            53: $row2 = oci_fetch_array($s);
        !            54: 
        !            55: var_dump(oci_lob_copy($row2[0], $row1[0]));
        !            56: var_dump($row1[0]->read(100));
        !            57: 
        !            58: oci_commit($c);
        !            59: 
        !            60: $select_sql = "SELECT blob FROM ".$schema.$table_name." WHERE id = 2 FOR UPDATE";
        !            61: $s = oci_parse($c, $select_sql);
        !            62: oci_execute($s, OCI_DEFAULT);
        !            63: 
        !            64: var_dump($row2 = oci_fetch_array($s, OCI_RETURN_LOBS));
        !            65: 
        !            66: require dirname(__FILE__).'/drop_table.inc';
        !            67: 
        !            68: echo "Done\n";
        !            69: 
        !            70: ?>
        !            71: --EXPECT--
        !            72: int(32)
        !            73: bool(true)
        !            74: string(32) "some string here. string, I said"
        !            75: array(2) {
        !            76:   [0]=>
        !            77:   string(32) "some string here. string, I said"
        !            78:   ["BLOB"]=>
        !            79:   string(32) "some string here. string, I said"
        !            80: }
        !            81: Done

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