Python 参数化查询的ConfigParser不工作

Python 参数化查询的ConfigParser不工作,python,sql,pandas,configparser,Python,Sql,Pandas,Configparser,我希望通过python程序访问并执行存储在config.ini中的sql查询。在我的程序中显式发出查询是可行的,但config.ini方法不行 以下是有效的方法: chg_list = tuple(list(df_code['A'])) placeholders=','.join(['?']*len(chg_list)) max_charge = "SELECT code, description FROM test WHERE code IN (%s)" % (place

我希望通过python程序访问并执行存储在config.ini中的sql查询。在我的程序中显式发出查询是可行的,但config.ini方法不行

以下是有效的方法:

chg_list = tuple(list(df_code['A']))
placeholders=','.join(['?']*len(chg_list))

max_charge = "SELECT code, description FROM test WHERE code IN (%s)" % (placeholders)
df_chg_max = pd.read_sql(max_charge, oracle_cnxn, params = chg_list)
什么不起作用:

file = 'config.ini'
config = configparser.RawConfigParser()
config.read(file)

max_charge = config.get('CHARGEBACK-LINE','max_charge')
df_chg_max = pd.read_sql(max_charge, oracle_cnxn, params = chg_list)
在配置文件上,条目为:

max_charge = "SELECT code, description FROM test WHERE code IN (%s)" % (placeholders)
为什么ConfigParser不能正确读取sql查询?我猜这与占位符参数的读取方式有关,但似乎不知道如何更正

以下是我在使用ConfigParser方法时遇到的错误:

pandas.io.sql.DatabaseError: Execution failed on sql '"SELECT code, description FROM test WHERE code IN (%s)" % (placeholders)': ('The SQL contains 0 parameter markers, but 1 parameters were supplied', 'HY000')
``