使用to_sql发送到SQLite数据库时,pandas数据帧中的长整数值会发生变化

时间:2014-06-25 18:39:05

标签: python sqlite pandas

我正在使用pandas来组织和操作我从twitter API获取的数据。 ' id' key返回一个非常长的整数(int64),pandas没有问题处理(即481496718320496643)。

但是,当我发送给SQL时:

df.to_sql('Tweets', conn, flavor='sqlite', if_exists='append', index=False)

我现在有推文ID:481496718320496640或接近该号码的内容。

我将推文ID转换为str,但Pandas SQLite Driver / SQLite仍然与数字混淆。 SQLite数据库中的数据类型为[tweet_id] INTEGER。发生了什么,我该如何防止这种情况发生?

1 个答案:

答案 0 :(得分:0)

我发现了这个问题 - 我使用SQLite Manager(Firefox插件)作为SQLite客户端。无论出于何种原因,SQLite Manager都会错误地显示推文ID,即使它们已正确存储(即当我查询时,我会得到所需的值)。我必须说非常奇怪。我下载了一个不同的SQLite客户端来查看数据并正确显示。