Annotation of embedaddon/php/ext/oci8/tests/bind_sqltint.phpt, revision 1.1.1.2

1.1       misho       1: --TEST--
                      2: Bind with SQLT_INT
                      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: // Initialization
                     11: 
                     12: $stmtarray = array(
                     13:        "drop table bind_sqltint_tab",
                     14: 
                     15:     "create table bind_sqltint_tab (
                     16:         id                number,
                     17:         varchar2_t10      varchar2(10),
                     18:         number_t          number,
                     19:         number_t92        number(9,2))",
                     20: 
                     21: );
                     22: 
                     23: oci8_test_sql_execute($c, $stmtarray);
                     24: 
                     25: function check_col($c, $colname, $id)
                     26: {
                     27:     $s = oci_parse($c, "select $colname from bind_sqltint_tab where id = :id");
                     28:     oci_bind_by_name($s, ":id", $id);
                     29:     oci_execute($s);
                     30:     oci_fetch_all($s, $r);
                     31:     var_dump($r);
                     32: }
                     33: 
                     34: // Run Test
                     35: 
                     36: echo "\nTEST141 wrong bind type SQLT_INT\n";
                     37: 
                     38: $c2 = "Hood141";
                     39: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, varchar2_t10) VALUES (141, :c2)");
                     40: oci_bind_by_name($s, ":c2", $c2, -1, SQLT_INT);
                     41: oci_execute($s);
                     42: 
                     43: check_col($c, 'varchar2_t10', 141);
                     44: 
                     45: echo "\nTEST142 insert numbers SQLT_INT\n";
                     46: 
                     47: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, number_t) VALUES (142, :n1)");
                     48: $n1 = 42;
                     49: oci_bind_by_name($s, ":n1", $n1, -1, SQLT_INT);
                     50: oci_execute($s);
                     51: 
                     52: check_col($c, 'number_t', 142);
                     53: 
                     54: echo "\nTEST143 insert numbers, SQLT_INT\n";
                     55: 
                     56: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, number_t) VALUES (143, :n1)");
                     57: $n1 = 42.69;
                     58: oci_bind_by_name($s, ":n1", $n1, -1, SQLT_INT);
                     59: oci_execute($s);
                     60: 
                     61: check_col($c, 'number_t', 143);
                     62: 
                     63: echo "\nTEST144 insert numbers with SQLT_INT\n";
                     64: 
                     65: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, number_t) VALUES (144, :n1)");
                     66: $n1 = 0;
                     67: oci_bind_by_name($s, ":n1", $n1, -1, SQLT_INT);
                     68: oci_execute($s);
                     69: 
                     70: check_col($c, 'number_t', 144);
                     71: 
                     72: echo "\nTEST145 insert numbers with SQLT_INT\n";
                     73: 
                     74: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, number_t) VALUES (145, :n1)");
                     75: $n1 = -23;
                     76: oci_bind_by_name($s, ":n1", $n1, -1, SQLT_INT);
                     77: oci_execute($s);
                     78: 
                     79: check_col($c, 'number_t', 145);
                     80: 
                     81: echo "\nTEST146 insert numbers\n";
                     82: 
                     83: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, number_t) VALUES (146, :n1)");
                     84: $n1 = "-23";
                     85: oci_bind_by_name($s, ":n1", $n1, -1, SQLT_INT);
                     86: oci_execute($s);
                     87: 
                     88: check_col($c, 'number_t', 146);
                     89: 
                     90: echo "\nTEST147 insert numbers with SQLT_INT\n";
                     91: 
                     92: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, number_t) VALUES (147, :n1)");
                     93: $n1 = "23";
                     94: oci_bind_by_name($s, ":n1", $n1, -1, SQLT_INT);
                     95: oci_execute($s);
                     96: 
                     97: check_col($c, 'number_t', 147);
                     98: 
                     99: echo "\nTEST148 insert numbers with SQLT_INT\n";
                    100: 
                    101: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, number_t92) VALUES (148, :n1)");
                    102: $n1 = 123.56;
                    103: oci_bind_by_name($s, ":n1", $n1, -1, SQLT_INT);
                    104: oci_execute($s);
                    105: 
                    106: check_col($c, 'number_t92', 148);
                    107: 
                    108: echo "\nTEST149 insert numbers with SQLT_INT\n";
                    109: 
                    110: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, number_t92) VALUES (149, :n1)");
                    111: $n1 = "123.56";
                    112: oci_bind_by_name($s, ":n1", $n1, -1, SQLT_INT);
                    113: oci_execute($s);
                    114: 
                    115: check_col($c, 'number_t92', 149);
                    116: 
                    117: echo "\nTEST150 insert numbers with SQLT_INT\n";
                    118: 
                    119: $s = oci_parse($c, "INSERT INTO bind_sqltint_tab (id, number_t92) VALUES (150, :n1)");
                    120: $n1 = "";
                    121: oci_bind_by_name($s, ":n1", $n1, -1, SQLT_INT);
                    122: oci_execute($s);
                    123: 
                    124: check_col($c, 'number_t92', 150);
                    125: 
1.1.1.2 ! misho     126: echo "\nTEST151 - 159 Initialization tests\n";
        !           127: 
        !           128: $s = oci_parse($c, "begin :p2 := :p1; end;");
        !           129: unset($p1);
        !           130: unset($p2);
        !           131: oci_bind_by_name($s, ":p1", $p1, 10);
        !           132: oci_bind_by_name($s, ":p2", $p2, -1, SQLT_INT);
        !           133: oci_execute($s);
        !           134: var_dump($p2);
        !           135: 
        !           136: echo "\nTEST152\n";
        !           137: 
        !           138: unset($p1);
        !           139: $p2 = null;
        !           140: oci_bind_by_name($s, ":p1", $p1, 10);
        !           141: oci_bind_by_name($s, ":p2", $p2, -1, SQLT_INT);
        !           142: oci_execute($s);
        !           143: var_dump($p2);
        !           144: 
        !           145: echo "\nTEST153\n";
        !           146: 
        !           147: unset($p1);
        !           148: $p2 = 1111;
        !           149: oci_bind_by_name($s, ":p1", $p1, 10);
        !           150: oci_bind_by_name($s, ":p2", $p2, -1, SQLT_INT);
        !           151: oci_execute($s);
        !           152: var_dump($p2);
        !           153: 
        !           154: echo "\nTEST154\n";
        !           155: 
        !           156: $p1 = null;
        !           157: unset($p2);
        !           158: oci_bind_by_name($s, ":p1", $p1, 10);
        !           159: oci_bind_by_name($s, ":p2", $p2, -1, SQLT_INT);
        !           160: oci_execute($s);
        !           161: var_dump($p2);
        !           162: 
        !           163: echo "\nTEST155\n";
        !           164: 
        !           165: $p1 = null;
        !           166: $p2 = null;
        !           167: oci_bind_by_name($s, ":p1", $p1, 10);
        !           168: oci_bind_by_name($s, ":p2", $p2, -1, SQLT_INT);
        !           169: oci_execute($s);
        !           170: var_dump($p2);
        !           171: 
        !           172: echo "\nTEST156\n";
        !           173: 
        !           174: $p1 = null;
        !           175: $p2 = 2222;
        !           176: oci_bind_by_name($s, ":p1", $p1, 10);
        !           177: oci_bind_by_name($s, ":p2", $p2, -1, SQLT_INT);
        !           178: oci_execute($s);
        !           179: var_dump($p2);
        !           180: 
        !           181: echo "\nTEST157\n";
        !           182: 
        !           183: $p1 = 3333;
        !           184: unset($p2);
        !           185: oci_bind_by_name($s, ":p1", $p1, 10);
        !           186: oci_bind_by_name($s, ":p2", $p2, -1, SQLT_INT);
        !           187: oci_execute($s);
        !           188: var_dump($p2);
        !           189: 
        !           190: echo "\nTEST158\n";
        !           191: 
        !           192: $p1 = 4444;
        !           193: $p2 = null;
        !           194: oci_bind_by_name($s, ":p1", $p1, 10);
        !           195: oci_bind_by_name($s, ":p2", $p2, -1, SQLT_INT);
        !           196: oci_execute($s);
        !           197: var_dump($p2);
        !           198: 
        !           199: echo "\nTEST159\n";
        !           200: 
        !           201: $p1 = 5555;
        !           202: $p2 = 6666;
        !           203: oci_bind_by_name($s, ":p1", $p1, 10);
        !           204: oci_bind_by_name($s, ":p2", $p2, -1, SQLT_INT);
        !           205: oci_execute($s);
        !           206: var_dump($p2);
        !           207: 
1.1       misho     208: // Clean up
                    209: 
                    210: $stmtarray = array(
                    211:        "drop table bind_sqltint_tab"
                    212: );
                    213: 
                    214: oci8_test_sql_execute($c, $stmtarray);
                    215: 
                    216: ?>
                    217: ===DONE===
                    218: <?php exit(0); ?>
                    219: --EXPECTF--
                    220: TEST141 wrong bind type SQLT_INT
                    221: array(1) {
                    222:   ["VARCHAR2_T10"]=>
                    223:   array(1) {
                    224:     [0]=>
                    225:     string(1) "0"
                    226:   }
                    227: }
                    228: 
                    229: TEST142 insert numbers SQLT_INT
                    230: array(1) {
                    231:   ["NUMBER_T"]=>
                    232:   array(1) {
                    233:     [0]=>
                    234:     string(2) "42"
                    235:   }
                    236: }
                    237: 
                    238: TEST143 insert numbers, SQLT_INT
                    239: array(1) {
                    240:   ["NUMBER_T"]=>
                    241:   array(1) {
                    242:     [0]=>
                    243:     string(2) "42"
                    244:   }
                    245: }
                    246: 
                    247: TEST144 insert numbers with SQLT_INT
                    248: array(1) {
                    249:   ["NUMBER_T"]=>
                    250:   array(1) {
                    251:     [0]=>
                    252:     string(1) "0"
                    253:   }
                    254: }
                    255: 
                    256: TEST145 insert numbers with SQLT_INT
                    257: array(1) {
                    258:   ["NUMBER_T"]=>
                    259:   array(1) {
                    260:     [0]=>
                    261:     string(3) "-23"
                    262:   }
                    263: }
                    264: 
                    265: TEST146 insert numbers
                    266: array(1) {
                    267:   ["NUMBER_T"]=>
                    268:   array(1) {
                    269:     [0]=>
                    270:     string(3) "-23"
                    271:   }
                    272: }
                    273: 
                    274: TEST147 insert numbers with SQLT_INT
                    275: array(1) {
                    276:   ["NUMBER_T"]=>
                    277:   array(1) {
                    278:     [0]=>
                    279:     string(2) "23"
                    280:   }
                    281: }
                    282: 
                    283: TEST148 insert numbers with SQLT_INT
                    284: array(1) {
                    285:   ["NUMBER_T92"]=>
                    286:   array(1) {
                    287:     [0]=>
                    288:     string(3) "123"
                    289:   }
                    290: }
                    291: 
                    292: TEST149 insert numbers with SQLT_INT
                    293: array(1) {
                    294:   ["NUMBER_T92"]=>
                    295:   array(1) {
                    296:     [0]=>
                    297:     string(3) "123"
                    298:   }
                    299: }
                    300: 
                    301: TEST150 insert numbers with SQLT_INT
                    302: array(1) {
                    303:   ["NUMBER_T92"]=>
                    304:   array(1) {
                    305:     [0]=>
                    306:     string(1) "0"
                    307:   }
                    308: }
1.1.1.2 ! misho     309: 
        !           310: TEST151 - 159 Initialization tests
        !           311: NULL
        !           312: 
        !           313: TEST152
        !           314: NULL
        !           315: 
        !           316: TEST153
        !           317: NULL
        !           318: 
        !           319: TEST154
        !           320: NULL
        !           321: 
        !           322: TEST155
        !           323: NULL
        !           324: 
        !           325: TEST156
        !           326: NULL
        !           327: 
        !           328: TEST157
        !           329: int(3333)
        !           330: 
        !           331: TEST158
        !           332: int(4444)
        !           333: 
        !           334: TEST159
        !           335: int(5555)
1.1       misho     336: ===DONE===

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>