diff options
| author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2013-03-14 05:42:27 +0000 |
|---|---|---|
| committer | <> | 2013-04-03 16:25:08 +0000 |
| commit | c4dd7a1a684490673e25aaf4fabec5df138854c4 (patch) | |
| tree | 4d57c44caae4480efff02b90b9be86f44bf25409 /ext/oci8/tests/define5.phpt | |
| download | php2-master.tar.gz | |
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'ext/oci8/tests/define5.phpt')
| -rw-r--r-- | ext/oci8/tests/define5.phpt | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/ext/oci8/tests/define5.phpt b/ext/oci8/tests/define5.phpt new file mode 100644 index 0000000..68fa01d --- /dev/null +++ b/ext/oci8/tests/define5.phpt @@ -0,0 +1,72 @@ +--TEST-- +oci_define_by_name() for statement re-execution +--SKIPIF-- +<?php if (!extension_loaded('oci8')) die("skip no oci8 extension"); ?> +--FILE-- +<?php + +require(dirname(__FILE__)."/connect.inc"); + +// Initialize + +$stmtarray = array( + "drop table define5_tab", + "create table define5_tab (id number, string varchar(10))", + "insert into define5_tab (id, string) values (1, 'some')", + "insert into define5_tab (id, string) values (2, 'thing')", +); + +oci8_test_sql_execute($c, $stmtarray); + +// Run test + +echo "Test 1 - must do define before execute\n"; +$stmt = oci_parse($c, "select string from define5_tab where id = 1"); +oci_execute($stmt); +var_dump(oci_define_by_name($stmt, "STRING", $string)); +while (oci_fetch($stmt)) { + var_dump($string); // gives NULL + var_dump(oci_result($stmt, 'STRING')); +} + +echo "Test 2 - normal define order\n"; +$stmt = oci_parse($c, "select string from define5_tab where id = 1"); +var_dump(oci_define_by_name($stmt, "STRING", $string)); +oci_execute($stmt); + +while (oci_fetch($stmt)) { + var_dump($string); +} + +echo "Test 3 - no new define done\n"; +$stmt = oci_parse($c, "select string from define5_tab where id = 2"); +oci_execute($stmt); +while (oci_fetch($stmt)) { + var_dump($string); // not updated with new value + var_dump(oci_result($stmt, 'STRING')); +} + +// Cleanup + +$stmtarray = array( + "drop table define5_tab" +); + +oci8_test_sql_execute($c, $stmtarray); + +echo "Done\n"; + +?> +--EXPECTF-- +Test 1 - must do define before execute +bool(true) +NULL +%unicode|string%(4) "some" +Test 2 - normal define order +bool(true) +%unicode|string%(4) "some" +Test 3 - no new define done +%unicode|string%(4) "some" +%unicode|string%(5) "thing" +Done + |
