【问题标题】:Adding empty records into a db file from python从python将空记录添加到db文件中
【发布时间】:2022-12-17 17:49:07
【问题描述】:

我想添加空记录,以便稍后在程序中更新它们。

我尝试使用这段代码来做到这一点:

c.execute("INSERT INTO "+add+" VALUES ("", "")")

但我收到此错误:

c.execute("INSERT INTO "+add+" VALUES ("", "")")

sqlite3.OperationalError:靠近“,”:语法错误

add 是具有数据库名称的变量,我需要其中的空记录

【问题讨论】:

    标签: sqlite python-3.10


    【解决方案1】:

    看起来问题出在 INSERT 语句的语法上。具有空值的 INSERT 语句的正确语法是:

    c.execute("INSERT INTO "+add+" VALUES (NULL, NULL)")
    

    请注意,我们使用 NULL 而不是空引号 ("") 来表示 INSERT 语句中的空值。这应该可以修复您看到的语法错误。

    在将值插入数据库时​​使用参数化查询也是一个好主意,以避免值中的引号和其他特殊字符出现问题。例如,您可以使用以下代码通过参数化查询将空值插入数据库:

    c.execute("INSERT INTO "+add+" VALUES (?,?)", (None, None))
    

    此代码使用占位符 (?,?) 作为值,然后在 execute() 方法的第二个参数中将值作为元组提供。这有助于防止出现特殊字符问题,并使您的代码更具可读性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-18
      相关资源
      最近更新 更多