Python 绑定变量
Python binding variables
我完全迷失在这里:
v_sql = "SELECT widget_name, widget_url FROM widget_calls WHERE widget_name = :widget"
cursor.execute(v_sql, widget=widget_name)
df_wid = pd.read_sql(v_sql, con=connection)
结果:
pandas.io.sql.DatabaseError: Execution failed on sql 'SELECT widget_name, widget_url FROM widget_calls WHERE widget_name = :widget': ORA-01008: not all variables bound
执行中有 1 个绑定变量、:widget 和 1 个声明。那么,我错过了什么?
cursor.execute
调用和pd.read_sql
调用完全无关。您正在执行两次查询,并丢弃了第一个结果。我会删除无用的 cursor.execute
.
而对于 read_sql,您需要:
df_wid = pd.read_sql( v_sql, con=connection, params={'widget': widget_name})
我完全迷失在这里:
v_sql = "SELECT widget_name, widget_url FROM widget_calls WHERE widget_name = :widget"
cursor.execute(v_sql, widget=widget_name)
df_wid = pd.read_sql(v_sql, con=connection)
结果:
pandas.io.sql.DatabaseError: Execution failed on sql 'SELECT widget_name, widget_url FROM widget_calls WHERE widget_name = :widget': ORA-01008: not all variables bound
执行中有 1 个绑定变量、:widget 和 1 个声明。那么,我错过了什么?
cursor.execute
调用和pd.read_sql
调用完全无关。您正在执行两次查询,并丢弃了第一个结果。我会删除无用的 cursor.execute
.
而对于 read_sql,您需要:
df_wid = pd.read_sql( v_sql, con=connection, params={'widget': widget_name})