lob_039.phpt 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. --TEST--
  2. Test CLOB->write() for multiple inserts
  3. --EXTENSIONS--
  4. oci8
  5. --SKIPIF--
  6. <?php
  7. $target_dbs = array('oracledb' => true, 'timesten' => false); // test runs on these DBs
  8. require(__DIR__.'/skipif.inc');
  9. ?>
  10. --FILE--
  11. <?php
  12. require __DIR__.'/connect.inc';
  13. require __DIR__.'/create_table.inc';
  14. echo "Test 1: CLOB\n";
  15. $ora_sql = "INSERT INTO
  16. ".$schema.$table_name." (clob)
  17. VALUES (empty_clob())
  18. RETURNING
  19. clob
  20. INTO :v_clob ";
  21. $s = oci_parse($c,$ora_sql);
  22. $clob = oci_new_descriptor($c,OCI_DTYPE_LOB);
  23. oci_bind_by_name($s,":v_clob", $clob,-1,OCI_B_CLOB);
  24. oci_execute($s, OCI_DEFAULT);
  25. var_dump($clob->write("clob test 1"));
  26. oci_execute($s, OCI_DEFAULT);
  27. var_dump($clob->write("clob test 2"));
  28. oci_execute($s, OCI_DEFAULT);
  29. var_dump($clob->write("clob test 3"));
  30. $s = oci_parse($c,"select clob from ".$schema.$table_name);
  31. var_dump(oci_execute($s));
  32. oci_fetch_all($s, $res);
  33. var_dump($res);
  34. require __DIR__.'/drop_table.inc';
  35. echo "Done\n";
  36. ?>
  37. --EXPECT--
  38. Test 1: CLOB
  39. int(11)
  40. int(11)
  41. int(11)
  42. bool(true)
  43. array(1) {
  44. ["CLOB"]=>
  45. array(3) {
  46. [0]=>
  47. string(11) "clob test 1"
  48. [1]=>
  49. string(22) " clob test 2"
  50. [2]=>
  51. string(33) " clob test 3"
  52. }
  53. }
  54. Done