国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

asp.net SqlParameter關(guān)于Like的傳參數(shù)無效問題

2024-07-10 13:19:29
字體:
供稿:網(wǎng)友
按常規(guī)的思路,我們會這樣寫

復制代碼 代碼如下:


String searchName ="Sam";
String strSql = "select * FROM Table1 where Name like '%@Name%' ";
SqlParameter[] parameters = {
new SqlParameter("@Name", searchName)
};


但結(jié)果是查詢不到結(jié)果,跟蹤代碼也沒有發(fā)現(xiàn)錯誤,又不想用字符串拼接的方式(防止攻擊)。于是跟蹤了Sql的執(zhí)行,發(fā)現(xiàn)問題在于Sql給參數(shù)自動添加了單引號。
實際上在Sql,將like的代碼解析成為了 like '%'Sam'%' ",所以,你怎么查也都得不到想要的結(jié)果。

據(jù)此,我們可以將代碼改成:

復制代碼 代碼如下:


String searchName ="Sam";
String strSql = "select * FROM Table1 where Name like @Name ";
searchName = "%"+searchName+"%"; //注意不用加單引號,傳參到Sql語句中會自動添加
SqlParameter[] parameters = {
new SqlParameter("@Name", searchName)
};


這樣,就可以達到想要的查詢結(jié)果。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 兴安县| 罗江县| 酉阳| 乃东县| 达尔| 哈尔滨市| 军事| 南康市| 安仁县| 北票市| 安福县| 三穗县| 万宁市| 东方市| 垦利县| 思南县| 贺州市| 安福县| 陕西省| 岱山县| 阿图什市| 井研县| 清徐县| 新闻| 达拉特旗| 绵阳市| 区。| 卢龙县| 资溪县| 海口市| 图木舒克市| 日土县| 西城区| 和平区| 手游| 宁远县| 达孜县| 彭泽县| 聂拉木县| 黎城县| 南阳市|