You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在sqlite3中使用Python input输入的变量执行SQL查询?

SQLite ID查询代码修正方案

现有代码核心错误点

  • SQL语法错误:查询语句中Id与参数占位符之间缺少相等判断符=,原写法WHERE Id (?)不符合SQL语法规范
  • 参数格式错误:cursor.execute的第二个参数要求传入序列类型,(autoID)仅为被括号包裹的单个整数,需添加逗号改为单元素元组(autoID,)才能被正确识别

修正后完整代码

import sqlite3

def autoAusgeben():
    # 原德语输入提示已翻译为中文
    autoID = int(input("请输入汽车ID:"))
    connection = sqlite3.connect("quartett.db")
    cursor = connection.cursor()
    # 修正SQL语法与参数格式
    cursor.execute("SELECT * FROM autos WHERE Id = ?", (autoID,))
    autos = cursor.fetchall()
    # 关闭数据库连接避免资源泄漏
    connection.close()
    print(autos)

可选优化建议

  • 新增输入校验逻辑,处理用户输入非数字的异常场景
  • 新增查询结果为空的判断,对应ID不存在时给用户明确提示
  • 新增数据库连接、SQL执行的异常捕获逻辑,避免程序直接崩溃

内容的提问来源于stack exchange,提问作者philipmrz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 07:24:00