gpt4 book ai didi

php - PDO插入不同的int值

转载 作者:行者123 更新时间:2023-11-29 11:19:28 25 4
gpt4 key购买 nike

我正在使用 PDO 插入数据库,但插入的整数值与预期不同

  $insert = $con->prepare("INSERT INTO usuarios(id,username,token)
VALUES (:id,:username,:token)");
echo $inst->getUser_Id();//here shows the correct value
$insert->bindparam(':id',$inst->getUser_Id(),PDO::PARAM_INT);
$insert->bindparam(':username',$inst->getUsername());
$insert->bindparam(':token',$inst->getToken());
$insert->execute();
echo $inst->getUser_Id();//here shows the correct value too

当我检查插入的数据时,字段id与echo $inst->getUser_Id()

不同

最佳答案

问题在于 id 字段被声明为有符号整数,其值为 maximum value 2147483647。由于您尝试插入比最大值更大的值,并且显然严格的sql模式已关闭,因此mysql将数据向下舍入到最大值。在 int(20) 声明中,20 does not influence the maximum value the field can hold 。将数据类型更改为 bigint 或 unsigned int 就可以了。

关于php - PDO插入不同的int值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39184244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com