1
如何處理使用SQL Server後端數據庫的asp.net網頁搜索中的特殊字符。例如,單引號和雙引號等如何在asp.net網頁搜索中處理單引號
如何處理使用SQL Server後端數據庫的asp.net網頁搜索中的特殊字符。例如,單引號和雙引號等如何在asp.net網頁搜索中處理單引號
更換單引號'
或雙引號"
會這樣
StrQuery = "Select * from TableName Where Keyword LIKE '%" + TxtSearchBox.Text + "%'";
StrQuery = StrQuery.Replace("'", "\'");
StrQuery = StrQuery.Replace('"', "\"");
StrQuery = StrQuery.Replace("\", "\\");
還有很重要的事情要做的就是,你會更好使用參數查詢。這些將自動處理單引號,並且更好地保護您免受SQL注入。
SET QUOTED_IDENTIFIER將遵循關於引號分隔標識符和文字字符串的ISO規則。用雙引號分隔的標識符既可以是Transact-SQL保留關鍵字,也可以包含標識符的Transact-SQL語法規則通常不允許的字符。
使用escape char來處理'\''斜槓單引號或''''雙單引號或'\「' –
我認爲參數化的SQL或使用實體框架和存儲過程可以解決這個問題。 – User2012384