我在mysql中有一个表,其中包含一个名为"userId"的字段:
`userId` int(20) NOT NULL
Run Code Online (Sandbox Code Playgroud)
插入语句是:
$result = mysql_query("INSERT INTO users (userId, firstName, lastName, dateCreated) VALUES (".$me['userId'].", '".$me['first_name']."', '".$me['last_name']."', CURDATE()) ")or die(mysql_error());
Run Code Online (Sandbox Code Playgroud)
在php中回显时userId的值是100000517980247,但是当插入时它更改为2147483647.当我将它插入varchar字段时,它没关系.这必须是非常简单的东西,但我搜索了一下,我只是没有看到它.
MySQL int是一个带符号的32位整数.您正在插入一个远远超出限制的数字,因此您将看到最大可能的整数,即2147483647.
对于64位数据类型,将数据类型更改为bigint,这将处理您的数字.
| 归档时间: |
|
| 查看次数: |
3626 次 |
| 最近记录: |