【问题标题】:sqlite-problem-sqlite3-operationalerror-near-where-syntax-errorsqlite-problem-sqlite3-operationalerror-near-where-syntax-error
【发布时间】:2021-03-01 18:40:06
【问题描述】:

我正在尝试将数据插入数据库,但出现错误:

sqlite-problem-sqlite3-operationalerror-near-where-syntax-error

这是我的代码:

c.execute(f"INSERT INTO math(qula) WHERE name = '{member.name}' VALUES({saboloo})")

【问题讨论】:

    标签: python sqlite sql-update


    【解决方案1】:

    我怀疑您想更新表 math 的现有行的列 qula 而不是插入新行。
    此外,使用? 占位符也是一个好习惯:

    c.execute("UPDATE math SET qula = ? WHERE name = ?", (saboloo, member.name)) 
    

    【讨论】:

      【解决方案2】:

      要将数据插入 sqlite3,首先您必须在 Python 标准库中导入 sqlite3 模块。然后,您通过将文件路径传递给 sqlite3 模块中的 connect (xxxx) 方法来连接到文件,如果您在 connect 方法中传递的数据库不存在,则将在该路径创建一个数据库,如果数据库存在,它将连接给它。

      import sqlite3
      con = sqlite3.connect('/path/xxx.sqlite3')
      

      您必须使用 cursor() 方法创建一个光标对象

      c = con.cursor()
      

      您比 Prepare,SQL 查询将一条记录插入到数据库中。

      c.execute(f"INSERT INTO math(qula) VALUES({saboloo})").
      

      我希望这篇文章有所帮助。 您也可以从这里阅读更多内容Python SQLite insert data

      【讨论】:

        猜你喜欢
        • 2019-12-20
        • 1970-01-01
        • 2017-02-02
        • 2014-10-12
        • 1970-01-01
        • 2023-01-10
        • 2023-01-30
        • 2020-06-03
        相关资源
        最近更新 更多