首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在SQL Python中使用INSERT INTO时整数值发生变化

在SQL Python中使用INSERT INTO时整数值发生变化
EN

Stack Overflow用户
提问于 2021-10-18 22:14:30
回答 2查看 112关注 0票数 0

我正在使用Python语言中的mysql.connector创建一个表。当我将一个整数值插入到我的表中时,SQL会将其转换为其他一些整数值。下面是我的代码:

代码语言:javascript
复制
cursor.execute("CREATE TABLE cleaned_data (myid VARCHAR(255), mynum INTEGER(255))")

cursor.execute("INSERT INTO cleaned_data(myid, mynum) VALUES(%s,%s)", ('mytext',25683838382092010098988))

rows = cursor.execute('select * from cleaned_data;')
for row in cursor:
    print(row)

以下是打印行的输出:

代码语言:javascript
复制
('mytext', 2147483647)

知道这是怎么回事吗?我希望我的表存储我的整数,即使它很大。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-10-18 22:19:49

INTEGER(255)并不是你想的那样。

整数的最大值是2147483647 (有符号)或4294967295 (无符号)。

有关What is the size of column of int(11) in mysql in bytes?的更多详细信息,请参阅此答案

票数 1
EN

Stack Overflow用户

发布于 2021-10-19 02:18:22

要存储最多65位的数字,可以使用decimal类型。例如,对于25位的整数,使用decimal(25,0)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69623119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档