【发布时间】:2010-12-17 23:50:39
【问题描述】:
我有一个 mysql 数据库和一个表来存储来自 twitter API 的内容。当我使用来自 twitter 的 PHP 解析数据时,我使用 mysql_query 将数据插入到表中。
我对推文的 ID 有一个奇怪的问题:
例如,ID 为 15861323074113537(来自 google 的推文)的状态更新在数据库中存储为:15861323074114000(最后 4 位已更改)。
php查询是:
$sql = mysql_query("INSERT INTO $table (id,tw_text) VALUES ($id,'$tw_text')");
如果我通过 phpmyadmin 编辑记录,则会存储正确的值 (15861323074113537)。该列是 BIGINT。
所以我猜想 php 函数 mysql_query 和 INSERT 命令发生了一些奇怪的事情。
有什么想法/解决方案吗?
提前致谢
【问题讨论】:
-
增大 int 列的大小。例如: int(64) 。里面的数字表示可用于存储 int 的位数。
-
您确定
$id变量在您拨打电话之前持有正确的数字吗?也就是说,您是否可能错误地解析了它?你能显示评估的命令吗? -
@ford 如果是架构问题,phpMyAdmin 也不应该能够设置正确的值