【问题标题】:InternalError: (1366, u"Incorrect integer value: Select) ErrorInternalError: (1366, u"Incorrect integer value: Select) Error
【发布时间】:2019-02-27 03:40:00
【问题描述】:

从 phone_number 返回用户 ID

GET_USER_ID = "SELECT user_id FROM user WHERE phone_number = {};"

我正在尝试运行上述查询并收到此错误:

InternalError: (1366, u"不正确的整数值:'SELECT user_id FROM 用户 WHERE phone_number = 0400001122;'对于第 1 行的列 'user_id'")

当我在 mysql 工作台中运行查询时,它工作正常并返回正确的user_id。我也在研究其他帖子,但大多数都是插入问题,在INSERT 的情况下,它们的空值可以解决这个问题。

但是,我正在执行SELECT 查询。

我一直在为这个错误而苦苦挣扎,无论如何可以帮助我吗?

【问题讨论】:

标签: python mysql mysql-workbench


【解决方案1】:

电话号码值存储在mysql表的varchar字段中。并且它以0开头,使用任何数字以0开头的数字在python编程语言中都被视为八进制数

请在查询中进行更改并在选择查询中将 phone_number 值作为字符串传递,将解决您的问题。

根据您输入的示例查询如下:

"SELECT user_id FROM user WHERE phone_number = '0400001122';"

检查一下并享受编码:)!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-13
    • 1970-01-01
    • 2020-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多