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