错误输入的mysql列数据类型问题

时间:2013-08-01 19:40:05

标签: mysql sql

有时,列datatype中可能是不必要的行为。

如果我在TINYINT列中插入超过4位的数据,则会插入255超出范围警告。

如果我希望UPDATE列中的INSERTFLOAT字符串值为0。

但是当我尝试更改unsigned datatype中的负数时,查询没有被执行。

我的问题是为什么不在所有时间都不匹配datatype时停止查询。有任何想法停止查询这种类型的情况?

1 个答案:

答案 0 :(得分:1)

为此,您需要使用您正在使用的程序语言手动添加错误检查。由于数据一旦进入数据库,就会被“查询”

do error check with PHP的示例方式:

    <?php
    $mysqli = new mysqli("localhost", "my_user", "my_password", "world");

    /* check connection */
    if ($mysqli->connect_errno) {
        printf("Connect failed: %s\n", $mysqli->connect_error);
        exit();
    }

    if (!$mysqli->query("SET a=1")) {
        printf("Errormessage: %s\n", $mysqli->error);
    }

    /* close connection */
    $mysqli->close();
    ?>

希望它有所帮助:)