我無法從Django
調用STORED Procedure
。我可以打電話使用正常的python
程序中的STORED Procedure
。 樣品工作python
代碼Django Pyodbc存儲過程並非在字符串格式化過程中轉換的所有參數1- Sql服務器
cursor = connect.cursor()
params=('IBM','2016')
cursor.execute("EXEC SP_Competitor_Extract ?, ? ",params)
這段代碼工作正常。但是,當我試圖從Django
執行它不起作用。
def index(request):
cursor = connection.cursor()
try:
params=["IBM", "2015"]
cursor.execute("{call SP_Competitor_Extract (?,?)}",params)
while cursor.nextset():
try:
results={'results':cursor.fetchall()}
break
except pyodbc.ProgrammingError:
continue
這是給我錯誤消息not all arguments converted during string formatting
包括錯誤 –
文件的完整回溯 「C:\用戶\ eindswa \應用程序數據\本地\程序\ Python的\ Python35-32 \ LIB \站點包\ SQL_SERVER \ pyodbc \ base.py」 在format_sql 509. sql = sql%tuple('?'* len(params)) 異常類型:TypeError at/DS_LAB_4/ 異常值:並非在字符串格式化期間轉換的所有參數 –