Annotation of embedaddon/php/ext/oci8/tests/bug27303_3.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Bug #27303 (OCIBindByName binds numeric PHP values as characters)
! 3: --SKIPIF--
! 4: <?php if (!extension_loaded('oci8')) die("skip no oci8 extension"); ?>
! 5: --FILE--
! 6: <?php
! 7:
! 8: require dirname(__FILE__).'/connect.inc';
! 9:
! 10: $create_st = array();
! 11: $create_st[] = "drop sequence myseq";
! 12: $create_st[] = "drop table mytab";
! 13: $create_st[] = "create sequence myseq";
! 14: $create_st[] = "create table mytab (mydata varchar2(20), seqcol number)";
! 15:
! 16: foreach ($create_st as $statement) {
! 17: $stmt = oci_parse($c, $statement);
! 18: @oci_execute($stmt);
! 19: }
! 20:
! 21: define('MYLIMIT', 200);
! 22: define('INITMYBV', 11);
! 23:
! 24: $stmt = "insert into mytab (mydata, seqcol) values ('Some data', myseq.nextval) returning seqcol into :mybv";
! 25:
! 26: $stid = OCIParse($c, $stmt);
! 27: if (!$stid) { echo "Parse error"; die; }
! 28:
! 29: $mybv = INITMYBV;
! 30: $r = OCIBindByName($stid, ':MYBV', $mybv, 5, SQLT_INT);
! 31: if (!$r) { echo "Bind error"; die; }
! 32:
! 33: for ($i = 1; $i < MYLIMIT; $i++) {
! 34: $r = OCIExecute($stid, OCI_DEFAULT);
! 35: if (!$r) { echo "Execute error"; die; }
! 36: var_dump($mybv);
! 37: }
! 38:
! 39: OCICommit($c);
! 40:
! 41: $drop_st = array();
! 42: $drop_st[] = "drop sequence myseq";
! 43: $drop_st[] = "drop table mytab";
! 44:
! 45: foreach ($create_st as $statement) {
! 46: $stmt = oci_parse($c, $statement);
! 47: oci_execute($stmt);
! 48: }
! 49:
! 50: echo "Done\n";
! 51: ?>
! 52: --EXPECTF--
! 53: int(1)
! 54: int(2)
! 55: int(3)
! 56: int(4)
! 57: int(5)
! 58: int(6)
! 59: int(7)
! 60: int(8)
! 61: int(9)
! 62: int(10)
! 63: int(11)
! 64: int(12)
! 65: int(13)
! 66: int(14)
! 67: int(15)
! 68: int(16)
! 69: int(17)
! 70: int(18)
! 71: int(19)
! 72: int(20)
! 73: int(21)
! 74: int(22)
! 75: int(23)
! 76: int(24)
! 77: int(25)
! 78: int(26)
! 79: int(27)
! 80: int(28)
! 81: int(29)
! 82: int(30)
! 83: int(31)
! 84: int(32)
! 85: int(33)
! 86: int(34)
! 87: int(35)
! 88: int(36)
! 89: int(37)
! 90: int(38)
! 91: int(39)
! 92: int(40)
! 93: int(41)
! 94: int(42)
! 95: int(43)
! 96: int(44)
! 97: int(45)
! 98: int(46)
! 99: int(47)
! 100: int(48)
! 101: int(49)
! 102: int(50)
! 103: int(51)
! 104: int(52)
! 105: int(53)
! 106: int(54)
! 107: int(55)
! 108: int(56)
! 109: int(57)
! 110: int(58)
! 111: int(59)
! 112: int(60)
! 113: int(61)
! 114: int(62)
! 115: int(63)
! 116: int(64)
! 117: int(65)
! 118: int(66)
! 119: int(67)
! 120: int(68)
! 121: int(69)
! 122: int(70)
! 123: int(71)
! 124: int(72)
! 125: int(73)
! 126: int(74)
! 127: int(75)
! 128: int(76)
! 129: int(77)
! 130: int(78)
! 131: int(79)
! 132: int(80)
! 133: int(81)
! 134: int(82)
! 135: int(83)
! 136: int(84)
! 137: int(85)
! 138: int(86)
! 139: int(87)
! 140: int(88)
! 141: int(89)
! 142: int(90)
! 143: int(91)
! 144: int(92)
! 145: int(93)
! 146: int(94)
! 147: int(95)
! 148: int(96)
! 149: int(97)
! 150: int(98)
! 151: int(99)
! 152: int(100)
! 153: int(101)
! 154: int(102)
! 155: int(103)
! 156: int(104)
! 157: int(105)
! 158: int(106)
! 159: int(107)
! 160: int(108)
! 161: int(109)
! 162: int(110)
! 163: int(111)
! 164: int(112)
! 165: int(113)
! 166: int(114)
! 167: int(115)
! 168: int(116)
! 169: int(117)
! 170: int(118)
! 171: int(119)
! 172: int(120)
! 173: int(121)
! 174: int(122)
! 175: int(123)
! 176: int(124)
! 177: int(125)
! 178: int(126)
! 179: int(127)
! 180: int(128)
! 181: int(129)
! 182: int(130)
! 183: int(131)
! 184: int(132)
! 185: int(133)
! 186: int(134)
! 187: int(135)
! 188: int(136)
! 189: int(137)
! 190: int(138)
! 191: int(139)
! 192: int(140)
! 193: int(141)
! 194: int(142)
! 195: int(143)
! 196: int(144)
! 197: int(145)
! 198: int(146)
! 199: int(147)
! 200: int(148)
! 201: int(149)
! 202: int(150)
! 203: int(151)
! 204: int(152)
! 205: int(153)
! 206: int(154)
! 207: int(155)
! 208: int(156)
! 209: int(157)
! 210: int(158)
! 211: int(159)
! 212: int(160)
! 213: int(161)
! 214: int(162)
! 215: int(163)
! 216: int(164)
! 217: int(165)
! 218: int(166)
! 219: int(167)
! 220: int(168)
! 221: int(169)
! 222: int(170)
! 223: int(171)
! 224: int(172)
! 225: int(173)
! 226: int(174)
! 227: int(175)
! 228: int(176)
! 229: int(177)
! 230: int(178)
! 231: int(179)
! 232: int(180)
! 233: int(181)
! 234: int(182)
! 235: int(183)
! 236: int(184)
! 237: int(185)
! 238: int(186)
! 239: int(187)
! 240: int(188)
! 241: int(189)
! 242: int(190)
! 243: int(191)
! 244: int(192)
! 245: int(193)
! 246: int(194)
! 247: int(195)
! 248: int(196)
! 249: int(197)
! 250: int(198)
! 251: int(199)
! 252: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>