我有兩個SQL查詢,我試圖在每次調用查詢時分別用+1和-1更新sup
和opp
值。哪個SQL查詢在SQL注入方面更安全
首先查詢:
query=update disc set [email protected], [email protected] where [email protected]
int sup=getnoofsup(did);
int opp = getnoofopp(did);
com.Parameters.AddWithValue("@sup", sups + 1);
com.Parameters.AddWithValue("@opp", opps - 1);
com.Parameters.AddWithValue("@did", did);
com.ExecuteNonQuery();
第二個查詢
string query="update disc set sup=sup+1, opp=opp-1 where [email protected]" ;
com.Parameters.AddWithValue("@did", did);
com.ExecuteNonQuery();
是否有注射第二查詢任何威脅,因爲我交流@sup
與sup+1
?
但第二個版本讓SQL服務器自己做增量。如果這可能會導致奇怪的錯誤或非法值,您可以使用第一個來檢查sup和opp是否可以正確遞增和遞減。 – Davio
@Davio查詢可能會產生錯誤結果,但無法將其用於SQL注入。 – dasblinkenlight