色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

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

他的寫法是這樣的:
復(fù)制代碼 代碼如下:
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í)行的語句如下
復(fù)制代碼 代碼如下:
exec sp_executesql N'SELECT * FROM Article Where [Title] like @strWhere',N'@strWhere nvarchar(5)',@strWhere=N'%為什么%'

不難理解,在 OldDbCommand 中也會有類似的做法。
正確的代碼為:
復(fù)制代碼 代碼如下:
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();

AspNet技術(shù)asp.net Parameters.AddWithValue方法在SQL語句的 Where 字句中的用法,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 彭阳县| 浪卡子县| 锦屏县| 禄丰县| 新乡市| 卢湾区| 新余市| 漯河市| 花莲市| 肃北| 当阳市| 横峰县| 容城县| 大渡口区| 青川县| 台江县| 滨海县| 宝鸡市| 南通市| 桑植县| 武川县| 自治县| 呼和浩特市| 英山县| 平潭县| 织金县| 杭锦后旗| 昌平区| 临朐县| 榆林市| 威宁| 榆林市| 永清县| 遵义县| 青铜峡市| 乃东县| 土默特右旗| 城市| 印江| 靖远县| 新疆|