PyODBC:使用參數變數執行Select 語句
在此場景中,您尋求基於儲存在data['DeviceName'] 中的特定設備名稱。但是,您之前嘗試使用參數變數執行 SELECT 語句並未成功。
解決方案是在 SQL 語句中使用參數化。透過使用「?」佔位符並傳遞 DeviceName 作為參數,您可以保護您的系統免受 SQL 注入和其他安全漏洞的影響。
這是一種修改後的方法:
cursor.execute("SELECT * FROM Throughput WHERE DeviceName = ?", data['DeviceName'])
參數化有幾個好處:
除了修改後的查詢片段之外,這裡還有一部分工作程式碼範例供您參考:
query = "SELECT * FROM Throughput WHERE DeviceName = '%s'" % data['DeviceName'] try: for row in cursor.execute(query): ...
無論使用參數化或使用參數化,請記得驗證使用者輸入動態SQL增強安全性。
以上是如何在 PyODBC SELECT 語句中安全地使用參數變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!