1
Python3.5 SQL服務器2012標準如何日期變量傳遞給一個SQL查詢在Python
包pypyodbc
此代碼的工作
myConnection = pypyodbc.connect('Driver={SQL Server};'
'Server=myserver;'
'Database=mydatabase;'
'TrustedConnection=yes')
myCursor = myConnection.cursor()
sqlstr = ("Select * From DB.Table1 Where DB.Table1.Date <= '7/21/2016'")
myCursor.execute(sqlstr)
results = myCursor.fetchall()
但是,日期必須是變量由用戶傳入。我做了幾個MODS的sqlstr但繼續在myCursor.execute錯誤: 「類型錯誤:字節或整數地址預期,而不是元組實例」
sqlstr = ("Select * From DB.Table1 Where DB.Table1.Date <= %s", '7/21/2016')
錯誤
sqlstr = ("Select * From DB.Table1 Where DB.Table1.Date <= '%s'", '7/21/2016')
錯誤
sqlstr = ("Select * From DB.Table1 Where DB.Table1.Date <= ?", "'7/21/2016'")
錯誤
var1 = "'7/21/2016'"
sqlstr = ("Select * From DB.Table1 Where DB.Table1.Date <= %s", var1)
等等。不過,我確信有一個正確的方法...
感謝您的任何幫助!
謝謝你,那確實起作用。對於對多個參數感興趣的人,只需用逗號分隔[param1,param2,param3]即可。另外,我不必編輯整個查詢以進行參數化,只需要將變量包含在括號中。 – pbean