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

首頁 > 編程 > .NET > 正文

asp.net Parameters.AddWithValue方法在SQL語句的 Where 字句中的用法

2024-07-10 12:39:16
字體:
供稿:網(wǎng)友

他的寫法是這樣的:
代碼如下:
view plaincopy to clipboardprint?
string strWhere = "'%美%'";
strSql = "SELECT * FROM area Where [name] like @strWhere";//這個就不好使
cmd.Parameters.AddWithValue("@strWhere", strWhere);
string strWhere = "'%美%'";
strSql = "SELECT * FROM area Where [name] like @strWhere";//這個就不好使
cmd.Parameters.AddWithValue("@strWhere", strWhere);

這是因為,ASP.NET在生成SQL語句時,會在Like后面再加上一次單引號,造成錯誤,如果打開 SQL Server的跟蹤管理器,可以看到執(zhí)行的語句如下
代碼如下:
exec sp_executesql N'SELECT * FROM Article Where [Title] like @strWhere',N'@strWhere nvarchar(5)',@strWhere=N'%為什么%'

不難理解,在 OldDbCommand 中也會有類似的做法。
正確的代碼為:
代碼如下:
string connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|/aspxWeb.mdb;";
OleDbConnection con = new OleDbConnection(connectionString);
con.Open();
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = con;
string strWhere = "%孟憲會%";
string strSql = "SELECT * FROM Document Where [Author] like @strWhere";
cmd.Parameters.AddWithValue("@strWhere", strWhere);
cmd.CommandText = strSql;
OleDbDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
Response.Write(dr["Author"] + " : " + dr["Title"] + "<br>");
}
con.Close();
con.Dispose();

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 红河县| 彰武县| 水富县| 惠安县| 灵山县| 遂宁市| 米林县| 东阿县| 连平县| 靖安县| 宜城市| 曲水县| 顺平县| 策勒县| 利津县| 泰来县| 中牟县| 鲁甸县| 崇文区| 贵定县| 边坝县| 分宜县| 巨鹿县| 溆浦县| 龙门县| 屏东市| 高淳县| 印江| 宣城市| 周至县| 富平县| 额尔古纳市| 三江| 治县。| 灌云县| 渑池县| 塘沽区| 邵东县| 高淳县| 金寨县| 伽师县|