標籤:ar 問題 sp on c ad new sql res
在寫項目的時候遇到一個問題,sql 語句進行 like in 參數化,按照正常的方式是無法實現的
我們一般的思維是:
Like 參數:
string strSql = "select * from Person.Address where City like ‘%@add%‘";
SqlParameter[] Parameters=new SqlParameter[1];
Parameters[0] = new SqlParameter("@add", "bre");
In 參數
string strSql = "select * from Person.Address where AddressID in (@add)";
SqlParameter[] Parameters = new SqlParameter[1];
Parameters[0] = new SqlParameter("@add", "343,372,11481,11533,11535,11755,11884,12092,12093,12143");
可是這樣放在程式裡面是無法執行的,即使不報錯,也是搜尋不出來結果的,
去網上搜尋也沒有一個明確的答案,經過反覆實驗,終於解決這個問題
正確解法如下:
like 參數
string strSql = "select * from Person.Address where City like ‘%‘+ @add + ‘%‘";
SqlParameter[] Parameters=new SqlParameter[1];
Parameters[0] = new SqlParameter("@add", "bre");
in 參數
string strSql = "exec(‘select * from Person.Address where AddressID in (‘[email protected]+‘)‘)";
SqlParameter[] Parameters = new SqlParameter[1];
Parameters[0] = new SqlParameter("@add", "343,372,11481,11533,11535,11755,11884,12092,12093,12143");
C# 參數化SQL語句中的like和in