Annotation of embedaddon/php/ext/oci8/tests/lob_018.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: fetching the same lob several times
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_018_tab",
17: "create table lob_018_tab (mykey number, lob_1 clob)",
18: );
19:
20: oci8_test_sql_execute($c, $stmtarray);
21:
22: echo "Test 1\n";
23:
24: $init = "insert into lob_018_tab (mykey, lob_1) values(1, empty_clob()) returning lob_1 into :mylob";
25: $statement = oci_parse($c, $init);
26: $clob = oci_new_descriptor($c, OCI_D_LOB);
27: oci_bind_by_name($statement, ":mylob", $clob, -1, OCI_B_CLOB);
28: oci_execute($statement, OCI_DEFAULT);
29: $clob->save("data");
30:
31: oci_commit($c);
32:
33: $init = "insert into lob_018_tab (mykey, lob_1) values(2, empty_clob()) returning lob_1 into :mylob";
34: $statement = oci_parse($c, $init);
35: $clob = oci_new_descriptor($c, OCI_D_LOB);
36: oci_bind_by_name($statement, ":mylob", $clob, -1, OCI_B_CLOB);
37: oci_execute($statement, OCI_DEFAULT);
38: $clob->save("long data");
39:
40: oci_commit($c);
41:
42:
43: $query = 'select * from lob_018_tab order by mykey asc';
44: $statement = oci_parse ($c, $query);
45: oci_execute($statement, OCI_DEFAULT);
46:
47: while ($row = oci_fetch_array($statement, OCI_ASSOC)) {
48: $result = $row['LOB_1']->load();
49: var_dump($result);
50: }
51:
52: echo "Test 2\n";
53:
54: $query = 'select * from lob_018_tab order by mykey desc';
55: $statement = oci_parse ($c, $query);
56: oci_execute($statement, OCI_DEFAULT);
57:
58: while ($row = oci_fetch_array($statement, OCI_ASSOC)) {
59: $result = $row['LOB_1']->load();
60: var_dump($result);
61: }
62:
63: echo "Test 3 - bind with SQLT_CLOB (an alias for OCI_B_CLOB)\n";
64:
65: $init = "insert into lob_018_tab (mykey, lob_1) values(3, empty_clob()) returning lob_1 into :mylob";
66: $statement = oci_parse($c, $init);
67: $clob = oci_new_descriptor($c, OCI_D_LOB);
68: oci_bind_by_name($statement, ":mylob", $clob, -1, SQLT_CLOB);
69: oci_execute($statement, OCI_DEFAULT);
70: $clob->save("more stuff");
71:
72: oci_commit($c);
73:
74: $query = 'select * from lob_018_tab where mykey = 3';
75: $statement = oci_parse ($c, $query);
76: oci_execute($statement, OCI_DEFAULT);
77:
78: while ($row = oci_fetch_array($statement, OCI_ASSOC)) {
79: $result = $row['LOB_1']->load();
80: var_dump($result);
81: }
82:
83: // Cleanup
84:
85: $stmtarray = array(
86: "drop table lob_018_tab"
87: );
88:
89: oci8_test_sql_execute($c, $stmtarray);
90:
91: ?>
92: ===DONE===
93: <?php exit(0); ?>
94: --EXPECTF--
95: Test 1
96: string(4) "data"
97: string(9) "long data"
98: Test 2
99: string(9) "long data"
100: string(4) "data"
101: Test 3 - bind with SQLT_CLOB (an alias for OCI_B_CLOB)
102: string(10) "more stuff"
103: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>