Annotation of embedaddon/php/ext/oci8/tests/lob_041.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Check LOBS are valid after statement free
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_041_tab",
17: "CREATE table lob_041_tab(c1 CLOB)",
18: "INSERT INTO lob_041_tab VALUES('test data')"
19: );
20:
21: oci8_test_sql_execute($c, $stmtarray);
22:
23: echo "Test 1 - explicit statement close\n";
24:
25: $s = oci_parse($c, "SELECT C1 FROM lob_041_tab");
26: $desc = oci_new_descriptor($c, OCI_DTYPE_LOB);
27: oci_define_by_name($s, "C1", $desc);
28: oci_execute($s);
29: $data = oci_fetch_assoc($s);
30: oci_free_statement($s);
31: echo $data['C1']->load(), "\n";
32: oci_free_descriptor($desc);
33:
34: echo "\nTest 2 - implicit statement close\n";
35:
36: $s = oci_parse($c, "SELECT C1 FROM lob_041_tab");
37: $desc = oci_new_descriptor($c, OCI_DTYPE_LOB);
38: oci_define_by_name($s, "C1", $desc);
39: oci_execute($s);
40: $data = oci_fetch_assoc($s);
41: $s = null;
42: echo $data['C1']->load(), "\n";
43: oci_free_descriptor($desc);
44: var_dump($desc);
45:
46: echo "\nTest 3 - no preallocated descriptor\n";
47:
48: $s = oci_parse($c, "SELECT C1 FROM lob_041_tab");
49: oci_execute($s);
50: $data = oci_fetch_assoc($s);
51: $s = null;
52: echo $data['C1']->load(), "\n";
53: var_dump($data);
54:
55: // Cleanup
56:
57: echo "Done\n";
58:
59: $stmtarray = array(
60: "DROP table lob_041_tab"
61: );
62:
63: oci8_test_sql_execute($c, $stmtarray);
64:
65: ?>
66:
67: --EXPECTF--
68: Test 1 - explicit statement close
69: test data
70:
71: Test 2 - implicit statement close
72: test data
73: object(OCI-Lob)#%d (1) {
74: ["descriptor"]=>
75: resource(%d) of type (oci8 descriptor)
76: }
77:
78: Test 3 - no preallocated descriptor
79: test data
80: array(1) {
81: ["C1"]=>
82: object(OCI-Lob)#%d (1) {
83: ["descriptor"]=>
84: resource(%d) of type (oci8 descriptor)
85: }
86: }
87: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>