0
我在兩個不同的表用戶表和帶表創建一個問題查詢:加入查詢VB.net DataReader的
cmd.CommandText = "SELECT zone_name, zone_difference FROM user_master INNER JOIN zones on user_master.zone_id = zones.ID WHERE user_master.uname LIKE " & """" & usr_gl & """"
Dim reader_q As OleDbDataReader
reader_q = cmd.ExecuteReader()
這裏,區域名稱和差異是由區表和zone_id(顧客)和ID (區域)有關係,用戶名(uname)也是來自外部,例如usr_gl變量「admin」
這是說沒有給出一個或兩個參數的值。我檢查了所有的表格列和數據。相同的查詢獨立於Access數據庫運行。
我在這裏執行有什麼問題嗎?
'usr_gl'的運行時值可能是將參數語法元素注入查詢並混淆查詢解析器?即使您認爲您可以控制輸入值,使用類似字符串連接來構建數據庫查詢也是非常危險的。如果您修復SQL注入漏洞並使用參數化查詢,問題是否會持續存在? – David 2013-05-14 12:23:10