5 changed files with 88 additions and 13 deletions
-
27ext/oci8/oci8.c
-
8ext/oci8/oci8_interface.c
-
16ext/oci8/oci8_lob.c
-
1ext/oci8/php_oci8_int.h
-
49ext/oci8/tests/descriptors.phpt
@ -0,0 +1,49 @@ |
|||
--TEST-- |
|||
commit connection after destroying the descriptor |
|||
--SKIPIF-- |
|||
<?php if (!extension_loaded('oci8')) die("skip no oci8 extension"); ?> |
|||
--FILE-- |
|||
<?php |
|||
|
|||
require dirname(__FILE__).'/connect.inc'; |
|||
require dirname(__FILE__).'/create_table.inc'; |
|||
|
|||
$ora_sql = "INSERT INTO |
|||
".$schema.$table_name." (blob) |
|||
VALUES (empty_blob()) |
|||
RETURNING |
|||
blob |
|||
INTO :v_blob "; |
|||
|
|||
$statement = oci_parse($c,$ora_sql); |
|||
$blob = oci_new_descriptor($c,OCI_D_LOB); |
|||
oci_bind_by_name($statement,":v_blob", $blob,-1,OCI_B_BLOB); |
|||
oci_execute($statement, OCI_DEFAULT); |
|||
|
|||
unset($blob); |
|||
unset($statement); |
|||
|
|||
oci_commit($c); |
|||
|
|||
$ora_sql = "SELECT blob FROM ".$schema.$table_name." "; |
|||
$statement = oci_parse($c,$ora_sql); |
|||
oci_execute($statement, OCI_DEFAULT); |
|||
|
|||
var_dump($row = oci_fetch_assoc($statement)); |
|||
unset($row['BLOB']); |
|||
|
|||
oci_commit($c); |
|||
|
|||
require dirname(__FILE__).'/drop_table.inc'; |
|||
|
|||
echo "Done\n"; |
|||
?> |
|||
--EXPECTF-- |
|||
array(1) { |
|||
["BLOB"]=> |
|||
object(OCI-Lob)#%d (1) { |
|||
["descriptor"]=> |
|||
resource(%d) of type (oci8 descriptor) |
|||
} |
|||
} |
|||
Done |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue