2024-10-01 09:20:08 发布
网友
嗨,我有这样的查询字符串
executeQuery = '''insert into CarModel (modeli,msubuqi,gamomshvebi) values(%s,%s,%s)''' % ("BMW","X5","Jeep") cursor.execute(executeQuery)
但当我执行它时,它会给我一个错误: “BMW”列不存在第3行:值(BMW、X5、Jeep) 我不知道为什么要用“宝马”这个专栏,请帮我忙了一整天
格式化后,executeQuery等于:
executeQuery
executeQuery = '''insert into CarModel (modeli,msubuqi,gamomshvebi) values(BMW, X5, Jeep)'''
SQL返回BMW不是列是正常的,因为您的值周围没有引号。请改用execute with parameters:
注意逗号而不是%。在
%
有关详细信息,请参见cursor.execute()定义。我假设您使用的是SQLite,但这与Python中DB-API的约定相同。每个著名的数据库系统都使用这个接口。在
如果要构造SQL查询,可以使用方法,但要用引号将%s括起来:
%s
executeQuery = '''insert into CarModel(modeli,msubuqi,gamomshvebi) values("%s","%s","%s")''' % ("BMW","X5","Jeep")
格式化后,
executeQuery
等于:SQL返回BMW不是列是正常的,因为您的值周围没有引号。请改用execute with parameters:
^{pr2}$注意逗号而不是
%
。在有关详细信息,请参见cursor.execute()定义。我假设您使用的是SQLite,但这与Python中DB-API的约定相同。每个著名的数据库系统都使用这个接口。在
评论后编辑
如果要构造SQL查询,可以使用方法,但要用引号将
%s
括起来:相关问题 更多 >
编程相关推荐