【发布时间】:2020-07-17 16:34:55
【问题描述】:
我想在python的SQL语句中绑定一个不包含固定值的变量:
例子:
import cx_Oracle
def(var1, var2):
....
chkdate = datetime.datetime.now().strftime('%d-%m-%Y')
#some lines of code
def db_select_query(conn_data,query,column_names):
conn_str = 'some user defined data'
conn = cx_Oracle.conn(conn_str)
cur = conn.cursor()
cur.execute(query, chkdate)
#some lines of code
query = """Select * from Table_A where date > :chkdate"""
但这似乎不起作用。我怎样才能做到这一点?
【问题讨论】:
-
你为什么打电话给
query之后cur.execute?请提供有关 DB-API(即 pyodbc、psycopg2、pymysql)的建议,因为这取决于如何运行命名参数。 -
@Parfait ,查询是在一个函数中定义的,我稍后会调用它,当我传入硬编码值时它工作正常,但我希望它接受问题中提到的任何变量..有可能吗?
-
我不明白你的例子。我仍然问我原来的问题。但请阅读有关如何使用 bind named parameters 和
cxOracle的文档。
标签: python python-3.x datetime python-sql