嗨,我是韩语,所以不是说英语的人。
不管怎样,我有个问题
当我学习sql和python烧瓶连接时
这是我的密码
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),)
这就是我的问题
为什么会有不同的结果(,)
我认为它只是一个绑定变量,所以为什么需要(,)?
发布于 2022-09-26 02:48:41
因为绑定变量总是需要在元组中,即使它是一个1元组。(这代表所有坚持到DB-API规范。的Python库。)
因为在Python中,(foo)
只是一个括号式的foo
,要构建一个1元组,就需要后面的逗号(参见如何创建只包含一个元素的元组)。
https://stackoverflow.com/questions/73849316
复制相似问题