summaryrefslogtreecommitdiff
path: root/ext/oci8/tests/lob_020.phpt
blob: c4ad5276b1b3df6bfca23fee6ba8983295021a89 (plain)
ofshex dumpascii
0000 2d 2d 54 45 53 54 2d 2d 0a 6f 63 69 5f 6c 6f 62 5f 77 72 69 74 65 28 29 2f 65 72 61 73 65 28 29 --TEST--.oci_lob_write()/erase()
0020 2f 72 65 61 64 28 29 20 77 69 74 68 20 43 4c 4f 42 73 0a 2d 2d 53 4b 49 50 49 46 2d 2d 0a 3c 3f /read().with.CLOBs.--SKIPIF--.<?
0040 70 68 70 0a 24 74 61 72 67 65 74 5f 64 62 73 20 3d 20 61 72 72 61 79 28 27 6f 72 61 63 6c 65 64 php.$target_dbs.=.array('oracled
0060 62 27 20 3d 3e 20 74 72 75 65 2c 20 27 74 69 6d 65 73 74 65 6e 27 20 3d 3e 20 66 61 6c 73 65 29 b'.=>.true,.'timesten'.=>.false)
0080 3b 20 20 2f 2f 20 74 65 73 74 20 72 75 6e 73 20 6f 6e 20 74 68 65 73 65 20 44 42 73 0a 72 65 71 ;..//.test.runs.on.these.DBs.req
00a0 75 69 72 65 28 64 69 72 6e 61 6d 65 28 5f 5f 46 49 4c 45 5f 5f 29 2e 27 2f 73 6b 69 70 69 66 2e uire(dirname(__FILE__).'/skipif.
00c0 69 6e 63 27 29 3b 0a 3f 3e 0a 2d 2d 46 49 4c 45 2d 2d 0a 3c 3f 70 68 70 0a 0a 72 65 71 75 69 72 inc');.?>.--FILE--.<?php..requir
00e0 65 20 64 69 72 6e 61 6d 65 28 5f 5f 46 49 4c 45 5f 5f 29 2e 27 2f 63 6f 6e 6e 65 63 74 2e 69 6e e.dirname(__FILE__).'/connect.in
0100 63 27 3b 0a 72 65 71 75 69 72 65 20 64 69 72 6e 61 6d 65 28 5f 5f 46 49 4c 45 5f 5f 29 2e 27 2f c';.require.dirname(__FILE__).'/
0120 63 72 65 61 74 65 5f 74 61 62 6c 65 2e 69 6e 63 27 3b 0a 0a 24 6f 72 61 5f 73 71 6c 20 3d 20 22 create_table.inc';..$ora_sql.=."
0140 49 4e 53 45 52 54 20 49 4e 54 4f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 INSERT.INTO.....................
0160 20 20 20 22 2e 24 73 63 68 65 6d 61 2e 24 74 61 62 6c 65 5f 6e 61 6d 65 2e 22 20 28 43 6c 6f 62 ...".$schema.$table_name.".(Clob
0180 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 56 41 4c 55 45 53 20 28 ).......................VALUES.(
01a0 65 6d 70 74 79 5f 43 6c 6f 62 28 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 empty_Clob())...................
01c0 20 20 20 20 52 45 54 55 52 4e 49 4e 47 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....RETURNING...................
01e0 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6c 6f 62 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............clob...............
0200 20 20 20 20 20 20 20 20 49 4e 54 4f 20 3a 76 5f 63 6c 6f 62 20 22 3b 0a 0a 24 73 74 61 74 65 6d ........INTO.:v_clob.";..$statem
0220 65 6e 74 20 3d 20 6f 63 69 5f 70 61 72 73 65 28 24 63 2c 24 6f 72 61 5f 73 71 6c 29 3b 0a 24 63 ent.=.oci_parse($c,$ora_sql);.$c
0240 6c 6f 62 20 3d 20 6f 63 69 5f 6e 65 77 5f 64 65 73 63 72 69 70 74 6f 72 28 24 63 2c 4f 43 49 5f lob.=.oci_new_descriptor($c,OCI_
0260 44 5f 4c 4f 42 29 3b 0a 6f 63 69 5f 62 69 6e 64 5f 62 79 5f 6e 61 6d 65 28 24 73 74 61 74 65 6d D_LOB);.oci_bind_by_name($statem
0280 65 6e 74 2c 22 3a 76 5f 63 6c 6f 62 22 2c 20 24 63 6c 6f 62 2c 2d 31 2c 4f 43 49 5f 42 5f 43 4c ent,":v_clob",.$clob,-1,OCI_B_CL
02a0 4f 42 29 3b 0a 6f 63 69 5f 65 78 65 63 75 74 65 28 24 73 74 61 74 65 6d 65 6e 74 2c 20 4f 43 49 OB);.oci_execute($statement,.OCI
02c0 5f 44 45 46 41 55 4c 54 29 3b 0a 0a 76 61 72 5f 64 75 6d 70 28 24 63 6c 6f 62 29 3b 0a 0a 24 73 _DEFAULT);..var_dump($clob);..$s
02e0 74 72 20 3d 20 22 00 00 00 00 00 74 68 69 73 20 69 73 20 61 20 62 69 69 69 69 67 20 66 61 61 61 tr.=.".....this.is.a.biiiig.faaa
0300 74 20 74 65 73 74 20 73 74 72 69 6e 67 2e 20 77 68 79 20 61 72 65 20 79 6f 75 20 72 65 61 64 69 t.test.string..why.are.you.readi
0320 6e 67 20 69 74 2c 20 49 20 77 6f 6e 64 65 72 3f 20 3d 29 22 3b 0a 76 61 72 5f 64 75 6d 70 28 24 ng.it,.I.wonder?.=)";.var_dump($
0340 63 6c 6f 62 2d 3e 77 72 69 74 65 28 24 73 74 72 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 24 63 6c clob->write($str));.var_dump($cl
0360 6f 62 2d 3e 65 72 61 73 65 28 31 30 2c 32 30 29 29 3b 0a 0a 6f 63 69 5f 63 6f 6d 6d 69 74 28 24 ob->erase(10,20));..oci_commit($
0380 63 29 3b 0a 0a 24 73 65 6c 65 63 74 5f 73 71 6c 20 3d 20 22 53 45 4c 45 43 54 20 63 6c 6f 62 20 c);..$select_sql.=."SELECT.clob.
03a0 46 52 4f 4d 20 22 2e 24 73 63 68 65 6d 61 2e 24 74 61 62 6c 65 5f 6e 61 6d 65 2e 22 20 46 4f 52 FROM.".$schema.$table_name.".FOR
03c0 20 55 50 44 41 54 45 22 3b 0a 24 73 20 3d 20 6f 63 69 5f 70 61 72 73 65 28 24 63 2c 20 24 73 65 .UPDATE";.$s.=.oci_parse($c,.$se
03e0 6c 65 63 74 5f 73 71 6c 29 3b 0a 6f 63 69 5f 65 78 65 63 75 74 65 28 24 73 2c 20 4f 43 49 5f 44 lect_sql);.oci_execute($s,.OCI_D
0400 45 46 41 55 4c 54 29 3b 0a 0a 76 61 72 5f 64 75 6d 70 28 24 72 6f 77 20 3d 20 6f 63 69 5f 66 65 EFAULT);..var_dump($row.=.oci_fe
0420 74 63 68 5f 61 72 72 61 79 28 24 73 29 29 3b 0a 0a 76 61 72 5f 64 75 6d 70 28 24 72 6f 77 5b 30 tch_array($s));..var_dump($row[0
0440 5d 2d 3e 72 65 61 64 28 32 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 24 72 6f 77 5b 30 5d 2d 3e 72 ]->read(2));.var_dump($row[0]->r
0460 65 61 64 28 35 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 24 72 6f 77 5b 30 5d 2d 3e 72 65 61 64 28 ead(5));.var_dump($row[0]->read(
0480 35 30 29 29 3b 0a 0a 76 61 72 5f 64 75 6d 70 28 24 63 6c 6f 62 2d 3e 65 72 61 73 65 28 29 29 3b 50));..var_dump($clob->erase());
04a0 0a 76 61 72 5f 64 75 6d 70 28 24 63 6c 6f 62 2d 3e 65 72 61 73 65 28 2d 31 30 29 29 3b 0a 76 61 .var_dump($clob->erase(-10));.va
04c0 72 5f 64 75 6d 70 28 24 63 6c 6f 62 2d 3e 65 72 61 73 65 28 31 30 2c 2d 32 30 29 29 3b 0a 76 61 r_dump($clob->erase(10,-20));.va
04e0 72 5f 64 75 6d 70 28 24 63 6c 6f 62 2d 3e 65 72 61 73 65 28 2d 31 30 2c 2d 32 30 29 29 3b 0a 76 r_dump($clob->erase(-10,-20));.v
0500 61 72 5f 64 75 6d 70 28 24 63 6c 6f 62 2d 3e 65 72 61 73 65 28 2d 31 30 2c 2d 32 30 2c 20 31 29 ar_dump($clob->erase(-10,-20,.1)
0520 29 3b 0a 0a 76 61 72 5f 64 75 6d 70 28 6f 63 69 5f 6c 6f 62 5f 65 72 61 73 65 28 24 63 6c 6f 62 );..var_dump(oci_lob_erase($clob
0540 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 6f 63 69 5f 6c 6f 62 5f 65 72 61 73 65 28 24 63 6c 6f 62 ));.var_dump(oci_lob_erase($clob
0560 2c 2d 31 30 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 6f 63 69 5f 6c 6f 62 5f 65 72 61 73 65 28 24 ,-10));.var_dump(oci_lob_erase($
0580 63 6c 6f 62 2c 31 30 2c 2d 32 30 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 6f 63 69 5f 6c 6f 62 5f clob,10,-20));.var_dump(oci_lob_
05a0 65 72 61 73 65 28 24 63 6c 6f 62 2c 2d 31 30 2c 2d 32 30 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 erase($clob,-10,-20));.var_dump(
05c0 6f 63 69 5f 6c 6f 62 5f 65 72 61 73 65 28 24 63 6c 6f 62 2c 2d 31 30 2c 2d 32 30 2c 20 31 29 29 oci_lob_erase($clob,-10,-20,.1))
05e0 3b 0a 0a 75 6e 73 65 74 28 24 63 6c 6f 62 2d 3e 64 65 73 63 72 69 70 74 6f 72 29 3b 0a 76 61 72 ;..unset($clob->descriptor);.var
0600 5f 64 75 6d 70 28 6f 63 69 5f 6c 6f 62 5f 65 72 61 73 65 28 24 63 6c 6f 62 2c 31 30 2c 32 30 29 _dump(oci_lob_erase($clob,10,20)
0620 29 3b 0a 0a 72 65 71 75 69 72 65 20 64 69 72 6e 61 6d 65 28 5f 5f 46 49 4c 45 5f 5f 29 2e 27 2f );..require.dirname(__FILE__).'/
0640 64 72 6f 70 5f 74 61 62 6c 65 2e 69 6e 63 27 3b 0a 0a 65 63 68 6f 20 22 44 6f 6e 65 5c 6e 22 3b drop_table.inc';..echo."Done\n";
0660 0a 0a 3f 3e 0a 2d 2d 45 58 50 45 43 54 46 2d 2d 0a 6f 62 6a 65 63 74 28 4f 43 49 2d 4c 6f 62 29 ..?>.--EXPECTF--.object(OCI-Lob)
0680 23 25 64 20 28 31 29 20 7b 0a 20 20 5b 22 64 65 73 63 72 69 70 74 6f 72 22 5d 3d 3e 0a 20 20 72 #%d.(1).{...["descriptor"]=>...r
06a0 65 73 6f 75 72 63 65 28 25 64 29 20 6f 66 20 74 79 70 65 20 28 6f 63 69 38 20 64 65 73 63 72 69 esource(%d).of.type.(oci8.descri
06c0 70 74 6f 72 29 0a 7d 0a 69 6e 74 28 37 37 29 0a 69 6e 74 28 32 30 29 0a 61 72 72 61 79 28 32 29 ptor).}.int(77).int(20).array(2)
06e0 20 7b 0a 20 20 5b 30 5d 3d 3e 0a 20 20 6f 62 6a 65 63 74 28 4f 43 49 2d 4c 6f 62 29 23 25 64 20 .{...[0]=>...object(OCI-Lob)#%d.
0700 28 31 29 20 7b 0a 20 20 20 20 5b 22 64 65 73 63 72 69 70 74 6f 72 22 5d 3d 3e 0a 20 20 20 20 72 (1).{.....["descriptor"]=>.....r
0720 65 73 6f 75 72 63 65 28 25 64 29 20 6f 66 20 74 79 70 65 20 28 6f 63 69 38 20 64 65 73 63 72 69 esource(%d).of.type.(oci8.descri
0740 70 74 6f 72 29 0a 20 20 7d 0a 20 20 5b 22 43 4c 4f 42 22 5d 3d 3e 0a 20 20 6f 62 6a 65 63 74 28 ptor)...}...["CLOB"]=>...object(
0760 4f 43 49 2d 4c 6f 62 29 23 25 64 20 28 31 29 20 7b 0a 20 20 20 20 5b 22 64 65 73 63 72 69 70 74 OCI-Lob)#%d.(1).{.....["descript
0780 6f 72 22 5d 3d 3e 0a 20 20 20 20 72 65 73 6f 75 72 63 65 28 25 64 29 20 6f 66 20 74 79 70 65 20 or"]=>.....resource(%d).of.type.
07a0 28 6f 63 69 38 20 64 65 73 63 72 69 70 74 6f 72 29 0a 20 20 7d 0a 7d 0a 73 74 72 69 6e 67 28 32 (oci8.descriptor)...}.}.string(2
07c0 29 20 22 00 00 22 0a 73 74 72 69 6e 67 28 35 29 20 22 00 00 00 74 68 22 0a 73 74 72 69 6e 67 28 )."..".string(5)."...th".string(
07e0 35 30 29 20 22 69 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 20 73 50)."is.....................st.s
0800 74 72 69 6e 67 2e 20 77 68 79 20 61 72 65 20 79 6f 75 20 72 65 61 64 22 0a 0a 57 61 72 6e 69 6e tring..why.are.you.read"..Warnin
0820 67 3a 20 4f 43 49 2d 4c 6f 62 3a 3a 65 72 61 73 65 28 29 3a 20 4f 52 41 2d 32 32 39 39 30 3a 20 g:.OCI-Lob::erase():.ORA-22990:.
0840 4c 4f 42 20 6c 6f 63 61 74 6f 72 73 20 63 61 6e 6e 6f 74 20 73 70 61 6e 20 74 72 61 6e 73 61 63 LOB.locators.cannot.span.transac
0860 74 69 6f 6e 73 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 20 25 64 0a 62 6f 6f 6c 28 66 61 6c 73 tions.in.%s.on.line.%d.bool(fals
0880 65 29 0a 0a 57 61 72 6e 69 6e 67 3a 20 4f 43 49 2d 4c 6f 62 3a 3a 65 72 61 73 65 28 29 3a 20 4f e)..Warning:.OCI-Lob::erase():.O
08a0 66 66 73 65 74 20 6d 75 73 74 20 62 65 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 6f 72 20 65 71 ffset.must.be.greater.than.or.eq
08c0 75 61 6c 20 74 6f 20 30 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 20 25 64 0a 62 6f 6f 6c 28 66 ual.to.0.in.%s.on.line.%d.bool(f
08e0 61 6c 73 65 29 0a 0a 57 61 72 6e 69 6e 67 3a 20 4f 43 49 2d 4c 6f 62 3a 3a 65 72 61 73 65 28 29 alse)..Warning:.OCI-Lob::erase()
0900 3a 20 4c 65 6e 67 74 68 20 6d 75 73 74 20 62 65 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 6f 72 :.Length.must.be.greater.than.or
0920 20 65 71 75 61 6c 20 74 6f 20 30 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 20 25 64 0a 62 6f 6f .equal.to.0.in.%s.on.line.%d.boo
0940 6c 28 66 61 6c 73 65 29 0a 0a 57 61 72 6e 69 6e 67 3a 20 4f 43 49 2d 4c 6f 62 3a 3a 65 72 61 73 l(false)..Warning:.OCI-Lob::eras
0960 65 28 29 3a 20 4f 66 66 73 65 74 20 6d 75 73 74 20 62 65 20 67 72 65 61 74 65 72 20 74 68 61 6e e():.Offset.must.be.greater.than
0980 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 30 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 20 25 64 0a .or.equal.to.0.in.%s.on.line.%d.
09a0 62 6f 6f 6c 28 66 61 6c 73 65 29 0a 0a 57 61 72 6e 69 6e 67 3a 20 4f 43 49 2d 4c 6f 62 3a 3a 65 bool(false)..Warning:.OCI-Lob::e
09c0 72 61 73 65 28 29 20 65 78 70 65 63 74 73 20 61 74 20 6d 6f 73 74 20 32 20 70 61 72 61 6d 65 74 rase().expects.at.most.2.paramet
09e0 65 72 73 2c 20 33 20 67 69 76 65 6e 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 20 25 64 0a 4e 55 ers,.3.given.in.%s.on.line.%d.NU
0a00 4c 4c 0a 0a 57 61 72 6e 69 6e 67 3a 20 6f 63 69 5f 6c 6f 62 5f 65 72 61 73 65 28 29 3a 20 4f 52 LL..Warning:.oci_lob_erase():.OR
0a20 41 2d 32 32 39 39 30 3a 20 4c 4f 42 20 6c 6f 63 61 74 6f 72 73 20 63 61 6e 6e 6f 74 20 73 70 61 A-22990:.LOB.locators.cannot.spa
0a40 6e 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 20 25 64 0a n.transactions.in.%s.on.line.%d.
0a60 62 6f 6f 6c 28 66 61 6c 73 65 29 0a 0a 57 61 72 6e 69 6e 67 3a 20 6f 63 69 5f 6c 6f 62 5f 65 72 bool(false)..Warning:.oci_lob_er
0a80 61 73 65 28 29 3a 20 4f 66 66 73 65 74 20 6d 75 73 74 20 62 65 20 67 72 65 61 74 65 72 20 74 68 ase():.Offset.must.be.greater.th
0aa0 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 30 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 20 25 an.or.equal.to.0.in.%s.on.line.%
0ac0 64 0a 62 6f 6f 6c 28 66 61 6c 73 65 29 0a 0a 57 61 72 6e 69 6e 67 3a 20 6f 63 69 5f 6c 6f 62 5f d.bool(false)..Warning:.oci_lob_
0ae0 65 72 61 73 65 28 29 3a 20 4c 65 6e 67 74 68 20 6d 75 73 74 20 62 65 20 67 72 65 61 74 65 72 20 erase():.Length.must.be.greater.
0b00 74 68 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 30 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 than.or.equal.to.0.in.%s.on.line
0b20 20 25 64 0a 62 6f 6f 6c 28 66 61 6c 73 65 29 0a 0a 57 61 72 6e 69 6e 67 3a 20 6f 63 69 5f 6c 6f .%d.bool(false)..Warning:.oci_lo
0b40 62 5f 65 72 61 73 65 28 29 3a 20 4f 66 66 73 65 74 20 6d 75 73 74 20 62 65 20 67 72 65 61 74 65 b_erase():.Offset.must.be.greate
0b60 72 20 74 68 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 30 20 69 6e 20 25 73 20 6f 6e 20 6c 69 r.than.or.equal.to.0.in.%s.on.li
0b80 6e 65 20 25 64 0a 62 6f 6f 6c 28 66 61 6c 73 65 29 0a 0a 57 61 72 6e 69 6e 67 3a 20 6f 63 69 5f ne.%d.bool(false)..Warning:.oci_
0ba0 6c 6f 62 5f 65 72 61 73 65 28 29 20 65 78 70 65 63 74 73 20 61 74 20 6d 6f 73 74 20 33 20 70 61 lob_erase().expects.at.most.3.pa
0bc0 72 61 6d 65 74 65 72 73 2c 20 34 20 67 69 76 65 6e 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 20 rameters,.4.given.in.%s.on.line.
0be0 25 64 0a 4e 55 4c 4c 0a 0a 57 61 72 6e 69 6e 67 3a 20 6f 63 69 5f 6c 6f 62 5f 65 72 61 73 65 28 %d.NULL..Warning:.oci_lob_erase(
0c00 29 3a 20 55 6e 61 62 6c 65 20 74 6f 20 66 69 6e 64 20 64 65 73 63 72 69 70 74 6f 72 20 70 72 6f ):.Unable.to.find.descriptor.pro
0c20 70 65 72 74 79 20 69 6e 20 25 73 20 6f 6e 20 6c 69 6e 65 20 25 64 0a 62 6f 6f 6c 28 66 61 6c 73 perty.in.%s.on.line.%d.bool(fals
0c40 65 29 0a 44 6f 6e 65 0a e).Done.