嗨,我是韩国人,所以不是以英语为母语的
不管怎样,我对有疑问
当我学习sql和python-flask连接时
这是我的代码
sql='''select count(*) from member where id = :1 '''
result=curs.execute(sql,(join_id))
cnt=result.fetchone()
该代码打印(ORA-01036:非法变量名称/编号(错误消息
好的,我解决了错误
sql='''select count(*) from member where id = :1 '''
result=curs.execute(sql,(join_id,)
cnt=result.fetchone()
像这样(join_id(add(,(
这是我的问题
为什么不同的结果(,(或不
我认为它只是一个绑定变量那么为什么需要(,(呢??
因为绑定变量总是需要在一个元组中,即使它是一个1-元组。(这代表所有遵循DB-API规范的Python SQL库(
由于在Python中,(foo)
只是一个带括号的foo
,因此要构建一个1-元组,需要使用尾部逗号(例如,请参阅如何创建一个只有一个元素的元组(。