Annotation of embedaddon/php/ext/mysqli/tests/mysqli_stmt_datatype_change.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Playing with datatype change between prepare and execute
        !             3: --SKIPIF--
        !             4: <?php
        !             5: require_once('skipif.inc');
        !             6: require_once('skipifemb.inc');
        !             7: require_once('skipifconnectfailure.inc');
        !             8: ?>
        !             9: --FILE--
        !            10: <?php
        !            11:        require_once("connect.inc");
        !            12:        if (!$c1 = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket)) {
        !            13:                printf("Cannot connect to the server using host=%s, user=%s, passwd=***, dbname=%s, port=%s, socket=%s\n",
        !            14:                        $host, $user, $db, $port, $socket);
        !            15:                exit(1);
        !            16:        }
        !            17:        if (!$c2 = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket)) {
        !            18:                printf("Cannot connect to the server using host=%s, user=%s, passwd=***, dbname=%s, port=%s, socket=%s\n",
        !            19:                        $host, $user, $db, $port, $socket);
        !            20:                exit(1);
        !            21:        }
        !            22: 
        !            23:        $c1->query("use $db");
        !            24:        $c2->query("use $db");
        !            25:        $c1->query("drop table if exists type_change");
        !            26:        $c1->query("create table type_change(a int, b char(10)) ENGINE = " . $engine);
        !            27:        $c1->query("insert into type_change values (1, 'one'), (2, 'two')");
        !            28:        $s1 = $c1->prepare("select a from type_change order by a");
        !            29:        var_dump($s1->execute(), $s1->bind_result($col1));
        !            30:        echo "---- Row 1\n";
        !            31:        var_dump($s1->fetch());
        !            32:        var_dump($col1);
        !            33:        echo "---- Row 2\n";
        !            34:        var_dump($s1->fetch());
        !            35:        var_dump($col1);
        !            36:        echo "---- Row 3\n";
        !            37:        var_dump($s1->fetch());
        !            38:        echo "----\n";
        !            39: 
        !            40:        echo "ALTER\n";
        !            41:        var_dump($c2->query("alter table type_change drop a"));
        !            42:        var_dump($s1->execute());
        !            43:        var_dump($c1->error);
        !            44: 
        !            45:        echo "---- Row 1\n";
        !            46:        var_dump($s1->fetch());
        !            47:        var_dump($col1);
        !            48:        echo "---- Row 2\n";
        !            49:        var_dump($s1->fetch());
        !            50:        var_dump($col1);
        !            51:        echo "---- Row 3\n";
        !            52:        var_dump($s1->fetch());
        !            53:        echo "----\n";
        !            54: 
        !            55:        echo "done!";
        !            56: ?>
        !            57: --CLEAN--
        !            58: <?php
        !            59: require_once("connect.inc");
        !            60: if (!$link = my_mysqli_connect($host, $user, $passwd, $db, $port, $socket))
        !            61:    printf("[c001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
        !            62: 
        !            63: if (!mysqli_query($link, "DROP TABLE IF EXISTS type_change"))
        !            64:        printf("[c002] Cannot drop table, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
        !            65: 
        !            66: mysqli_close($link);
        !            67: ?>
        !            68: 
        !            69: --EXPECTF--
        !            70: bool(true)
        !            71: bool(true)
        !            72: ---- Row 1
        !            73: bool(true)
        !            74: int(1)
        !            75: ---- Row 2
        !            76: bool(true)
        !            77: int(2)
        !            78: ---- Row 3
        !            79: NULL
        !            80: ----
        !            81: ALTER
        !            82: bool(true)
        !            83: bool(false)
        !            84: %unicode|string%(34) "Unknown column 'a' in 'field list'"
        !            85: ---- Row 1
        !            86: bool(false)
        !            87: int(2)
        !            88: ---- Row 2
        !            89: bool(false)
        !            90: int(2)
        !            91: ---- Row 3
        !            92: bool(false)
        !            93: ----
        !            94: done!

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