我正在尝试将一个大整数添加到MySQL
带有SQLAlchemy
. 正如这个答案所解释的,你不能Integer
像你一样传递一个长度参数String
。因此,按照这个答案,我已经mysql.INTEGER
像这样定义了我的专栏:
from sqlalchemy.dialects import mysql
uniqueid = Column(mysql.INTEGER(20))
但是,当我尝试提交具有 14 位唯一 ID 的对象时,我收到以下错误消息DataError: (DataError) (1264, "Out of range value for column 'uniqueid' at row 1")
:当我尝试一个不长的较短整数时,将同一个对象提交到 SQL 数据库没有问题。我正在运行 python 2.7,该类型的其他讨论表明,除了在数字末尾打印 an 之外long
,它的行为不应有任何不同。最后一条信息是,如果我将 uniqueid 设置为相同的短数字但将其设置为长,如 中,我仍然可以将对象提交到 SQL 数据库。int
L
uniqueid = long(32423)