summaryrefslogtreecommitdiff
path: root/ext/oci8/tests/lob_001.phpt
blob: 3a3a48dee069d7814c4945a51623d376fb04698e (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 20 61 6e 64 20 66 72 69 --TEST--.oci_lob_write().and.fri
0020 65 6e 64 73 0a 2d 2d 53 4b 49 50 49 46 2d 2d 0a 3c 3f 70 68 70 0a 24 74 61 72 67 65 74 5f 64 62 ends.--SKIPIF--.<?php.$target_db
0040 73 20 3d 20 61 72 72 61 79 28 27 6f 72 61 63 6c 65 64 62 27 20 3d 3e 20 74 72 75 65 2c 20 27 74 s.=.array('oracledb'.=>.true,.'t
0060 69 6d 65 73 74 65 6e 27 20 3d 3e 20 66 61 6c 73 65 29 3b 20 20 2f 2f 20 74 65 73 74 20 72 75 6e imesten'.=>.false);..//.test.run
0080 73 20 6f 6e 20 74 68 65 73 65 20 44 42 73 0a 72 65 71 75 69 72 65 28 5f 5f 44 49 52 5f 5f 2e 27 s.on.these.DBs.require(__DIR__.'
00a0 2f 73 6b 69 70 69 66 2e 69 6e 63 27 29 3b 0a 3f 3e 0a 2d 2d 46 49 4c 45 2d 2d 0a 3c 3f 70 68 70 /skipif.inc');.?>.--FILE--.<?php
00c0 0a 0a 72 65 71 75 69 72 65 28 5f 5f 44 49 52 5f 5f 2e 27 2f 63 6f 6e 6e 65 63 74 2e 69 6e 63 27 ..require(__DIR__.'/connect.inc'
00e0 29 3b 0a 0a 2f 2f 20 49 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 0a 0a 24 73 74 6d 74 61 72 72 61 );..//.Initialization..$stmtarra
0100 79 20 3d 20 61 72 72 61 79 28 0a 09 22 64 72 6f 70 20 74 61 62 6c 65 20 6c 6f 62 5f 30 30 31 5f y.=.array(.."drop.table.lob_001_
0120 74 61 62 22 2c 0a 09 22 63 72 65 61 74 65 20 74 61 62 6c 65 20 6c 6f 62 5f 30 30 31 5f 74 61 62 tab",.."create.table.lob_001_tab
0140 20 28 69 64 20 6e 75 6d 62 65 72 2c 20 62 31 20 62 6c 6f 62 29 22 2c 0a 29 3b 0a 0a 6f 63 69 38 .(id.number,.b1.blob)",.);..oci8
0160 5f 74 65 73 74 5f 73 71 6c 5f 65 78 65 63 75 74 65 28 24 63 2c 20 24 73 74 6d 74 61 72 72 61 79 _test_sql_execute($c,.$stmtarray
0180 29 3b 0a 0a 65 63 68 6f 20 22 54 65 73 74 20 31 20 4f 43 49 5f 42 5f 42 4c 4f 42 20 62 69 6e 64 );..echo."Test.1.OCI_B_BLOB.bind
01a0 5c 6e 22 3b 0a 0a 24 73 74 61 74 65 6d 65 6e 74 20 3d 20 6f 63 69 5f 70 61 72 73 65 28 24 63 2c \n";..$statement.=.oci_parse($c,
01c0 20 22 69 6e 73 65 72 74 20 69 6e 74 6f 20 6c 6f 62 5f 30 30 31 5f 74 61 62 20 28 69 64 2c 20 62 ."insert.into.lob_001_tab.(id,.b
01e0 31 29 20 76 61 6c 75 65 73 20 28 31 2c 20 65 6d 70 74 79 5f 62 6c 6f 62 28 29 29 20 72 65 74 75 1).values.(1,.empty_blob()).retu
0200 72 6e 69 6e 67 20 62 31 20 69 6e 74 6f 20 3a 76 5f 62 31 20 22 29 3b 0a 24 62 6c 6f 62 20 3d 20 rning.b1.into.:v_b1.");.$blob.=.
0220 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 44 5f 4c 4f 42 29 oci_new_descriptor($c,OCI_D_LOB)
0240 3b 0a 76 61 72 5f 64 75 6d 70 28 6f 63 69 5f 62 69 6e 64 5f 62 79 5f 6e 61 6d 65 28 24 73 74 61 ;.var_dump(oci_bind_by_name($sta
0260 74 65 6d 65 6e 74 2c 20 22 3a 76 5f 62 31 22 2c 20 24 62 6c 6f 62 2c 20 2d 31 2c 20 4f 43 49 5f tement,.":v_b1",.$blob,.-1,.OCI_
0280 42 5f 42 4c 4f 42 29 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 B_BLOB));.oci_execute($statement
02a0 2c 20 4f 43 49 5f 44 45 46 41 55 4c 54 29 3b 0a 76 61 72 5f 64 75 6d 70 28 24 62 6c 6f 62 29 3b ,.OCI_DEFAULT);.var_dump($blob);
02c0 0a 0a 65 63 68 6f 20 22 54 65 73 74 20 32 5c 6e 22 3b 0a 0a 76 61 72 5f 64 75 6d 70 28 24 62 6c ..echo."Test.2\n";..var_dump($bl
02e0 6f 62 2d 3e 77 72 69 74 65 28 22 74 65 73 74 22 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 24 62 6c ob->write("test"));.var_dump($bl
0300 6f 62 2d 3e 74 65 6c 6c 28 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 24 62 6c 6f 62 2d 3e 73 65 65 ob->tell());.var_dump($blob->see
0320 6b 28 31 30 2c 20 4f 43 49 5f 53 45 45 4b 5f 43 55 52 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 24 k(10,.OCI_SEEK_CUR));.var_dump($
0340 62 6c 6f 62 2d 3e 77 72 69 74 65 28 22 73 74 72 69 6e 67 22 29 29 3b 0a 76 61 72 5f 64 75 6d 70 blob->write("string"));.var_dump
0360 28 24 62 6c 6f 62 2d 3e 66 6c 75 73 68 28 29 29 3b 0a 0a 6f 63 69 5f 63 6f 6d 6d 69 74 28 24 63 ($blob->flush());..oci_commit($c
0380 29 3b 0a 0a 65 63 68 6f 20 22 54 65 73 74 20 33 5c 6e 22 3b 0a 0a 24 73 20 3d 20 6f 63 69 5f 70 );..echo."Test.3\n";..$s.=.oci_p
03a0 61 72 73 65 28 24 63 2c 20 22 73 65 6c 65 63 74 20 62 31 20 66 72 6f 6d 20 6c 6f 62 5f 30 30 31 arse($c,."select.b1.from.lob_001
03c0 5f 74 61 62 20 77 68 65 72 65 20 69 64 20 3d 20 31 22 29 3b 0a 6f 63 69 5f 65 78 65 63 75 74 65 _tab.where.id.=.1");.oci_execute
03e0 28 24 73 29 3b 0a 76 61 72 5f 64 75 6d 70 28 6f 63 69 5f 66 65 74 63 68 5f 61 72 72 61 79 28 24 ($s);.var_dump(oci_fetch_array($
0400 73 2c 20 4f 43 49 5f 52 45 54 55 52 4e 5f 4c 4f 42 53 29 29 3b 0a 0a 65 63 68 6f 20 22 54 65 73 s,.OCI_RETURN_LOBS));..echo."Tes
0420 74 20 34 20 53 51 4c 54 5f 42 4c 4f 42 20 28 61 6e 20 61 6c 69 61 73 20 66 6f 72 20 4f 43 49 5f t.4.SQLT_BLOB.(an.alias.for.OCI_
0440 42 5f 42 4c 4f 42 29 20 62 69 6e 64 5c 6e 22 3b 0a 0a 24 73 74 61 74 65 6d 65 6e 74 20 3d 20 6f B_BLOB).bind\n";..$statement.=.o
0460 63 69 5f 70 61 72 73 65 28 24 63 2c 20 22 69 6e 73 65 72 74 20 69 6e 74 6f 20 6c 6f 62 5f 30 30 ci_parse($c,."insert.into.lob_00
0480 31 5f 74 61 62 20 28 69 64 2c 20 62 31 29 20 76 61 6c 75 65 73 20 28 32 2c 20 65 6d 70 74 79 5f 1_tab.(id,.b1).values.(2,.empty_
04a0 62 6c 6f 62 28 29 29 20 72 65 74 75 72 6e 69 6e 67 20 62 31 20 69 6e 74 6f 20 3a 76 5f 62 31 20 blob()).returning.b1.into.:v_b1.
04c0 22 29 3b 0a 24 62 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 ");.$blob.=.oci_new_descriptor($
04e0 63 2c 4f 43 49 5f 44 5f 4c 4f 42 29 3b 0a 76 61 72 5f 64 75 6d 70 28 6f 63 69 5f 62 69 6e 64 5f c,OCI_D_LOB);.var_dump(oci_bind_
0500 62 79 5f 6e 61 6d 65 28 24 73 74 61 74 65 6d 65 6e 74 2c 20 22 3a 76 5f 62 31 22 2c 20 24 62 6c by_name($statement,.":v_b1",.$bl
0520 6f 62 2c 20 2d 31 2c 20 53 51 4c 54 5f 42 4c 4f 42 29 29 3b 0a 6f 63 69 5f 65 78 65 63 75 74 65 ob,.-1,.SQLT_BLOB));.oci_execute
0540 28 24 73 74 61 74 65 6d 65 6e 74 2c 20 4f 43 49 5f 44 45 46 41 55 4c 54 29 3b 0a 76 61 72 5f 64 ($statement,.OCI_DEFAULT);.var_d
0560 75 6d 70 28 24 62 6c 6f 62 2d 3e 77 72 69 74 65 28 22 74 65 73 74 20 72 6f 77 20 32 22 29 29 3b ump($blob->write("test.row.2"));
0580 0a 0a 24 73 20 3d 20 6f 63 69 5f 70 61 72 73 65 28 24 63 2c 20 22 73 65 6c 65 63 74 20 62 31 20 ..$s.=.oci_parse($c,."select.b1.
05a0 66 72 6f 6d 20 6c 6f 62 5f 30 30 31 5f 74 61 62 20 77 68 65 72 65 20 69 64 20 3d 20 32 22 29 3b from.lob_001_tab.where.id.=.2");
05c0 0a 6f 63 69 5f 65 78 65 63 75 74 65 28 24 73 29 3b 0a 76 61 72 5f 64 75 6d 70 28 6f 63 69 5f 66 .oci_execute($s);.var_dump(oci_f
05e0 65 74 63 68 5f 61 72 72 61 79 28 24 73 2c 20 4f 43 49 5f 52 45 54 55 52 4e 5f 4c 4f 42 53 29 29 etch_array($s,.OCI_RETURN_LOBS))
0600 3b 0a 0a 2f 2f 20 43 6c 65 61 6e 75 70 0a 0a 24 73 74 6d 74 61 72 72 61 79 20 3d 20 61 72 72 61 ;..//.Cleanup..$stmtarray.=.arra
0620 79 28 0a 09 22 64 72 6f 70 20 74 61 62 6c 65 20 6c 6f 62 5f 30 30 31 5f 74 61 62 22 0a 29 3b 0a y(.."drop.table.lob_001_tab".);.
0640 0a 6f 63 69 38 5f 74 65 73 74 5f 73 71 6c 5f 65 78 65 63 75 74 65 28 24 63 2c 20 24 73 74 6d 74 .oci8_test_sql_execute($c,.$stmt
0660 61 72 72 61 79 29 3b 0a 0a 3f 3e 0a 3d 3d 3d 44 4f 4e 45 3d 3d 3d 0a 3c 3f 70 68 70 20 65 78 69 array);..?>.===DONE===.<?php.exi
0680 74 28 30 29 3b 20 3f 3e 0a 2d 2d 45 58 50 45 43 54 46 2d 2d 0a 54 65 73 74 20 31 20 4f 43 49 5f t(0);.?>.--EXPECTF--.Test.1.OCI_
06a0 42 5f 42 4c 4f 42 20 62 69 6e 64 0a 62 6f 6f 6c 28 74 72 75 65 29 0a 6f 62 6a 65 63 74 28 4f 43 B_BLOB.bind.bool(true).object(OC
06c0 49 2d 4c 6f 62 29 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 I-Lob)#%d.(1).{...["descriptor"]
06e0 3d 3e 0a 20 20 72 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 =>...resource(%d).of.type.(oci8.
0700 64 65 73 63 72 69 70 74 6f 72 29 0a 7d 0a 54 65 73 74 20 32 0a 69 6e 74 28 34 29 0a 69 6e 74 28 descriptor).}.Test.2.int(4).int(
0720 34 29 0a 62 6f 6f 6c 28 74 72 75 65 29 0a 69 6e 74 28 36 29 0a 62 6f 6f 6c 28 66 61 6c 73 65 29 4).bool(true).int(6).bool(false)
0740 0a 54 65 73 74 20 33 0a 61 72 72 61 79 28 32 29 20 7b 0a 20 20 5b 30 5d 3d 3e 0a 20 20 73 74 72 .Test.3.array(2).{...[0]=>...str
0760 69 6e 67 28 32 30 29 20 22 74 65 73 74 00 00 00 00 00 00 00 00 00 00 73 74 72 69 6e 67 22 0a 20 ing(20)."test..........string"..
0780 20 5b 22 42 31 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 32 30 29 20 22 74 65 73 74 00 00 00 00 .["B1"]=>...string(20)."test....
07a0 00 00 00 00 00 00 73 74 72 69 6e 67 22 0a 7d 0a 54 65 73 74 20 34 20 53 51 4c 54 5f 42 4c 4f 42 ......string".}.Test.4.SQLT_BLOB
07c0 20 28 61 6e 20 61 6c 69 61 73 20 66 6f 72 20 4f 43 49 5f 42 5f 42 4c 4f 42 29 20 62 69 6e 64 0a .(an.alias.for.OCI_B_BLOB).bind.
07e0 62 6f 6f 6c 28 74 72 75 65 29 0a 69 6e 74 28 31 30 29 0a 61 72 72 61 79 28 32 29 20 7b 0a 20 20 bool(true).int(10).array(2).{...
0800 5b 30 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 31 30 29 20 22 74 65 73 74 20 72 6f 77 20 32 22 0a [0]=>...string(10)."test.row.2".
0820 20 20 5b 22 42 31 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 31 30 29 20 22 74 65 73 74 20 72 6f ..["B1"]=>...string(10)."test.ro
0840 77 20 32 22 0a 7d 0a 3d 3d 3d 44 4f 4e 45 3d 3d 3d 0a w.2".}.===DONE===.