StringBuilder strSql = new StringBuilder();
strSql.Append("Update Card set Mark=@Mark,O_Id=@O_Idwhere Id=@Id");
SqlParameter[] parameters = {
new SqlParameter("@Mark", SqlDbType.Bit),
new SqlParameter("@O_Id", SqlDbType.NVarChar,50),
new SqlParameter("@Id", SqlDbType.Int)
};
parameters[0].Value = model.Mark;
parameters[1].Value = model.O_Id;
parameters[2].Value = model.Id;
int rows = _DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
if (rows > 0)
{
return 1;
}
else
{
return 0;
}
报错
参数化查询。。。set '需要参数‘@Id' 但未提供参数
c# 参数化查询为何报错??
答案:2 悬赏:0 手机版
解决时间 2021-02-04 01:01
- 提问者网友:我的未来我做主
- 2021-02-03 06:15
最佳答案
- 五星知识达人网友:七十二街
- 2021-02-03 07:08
SqlParameter[] parameters = {
new SqlParameter("@Mark", SqlDbType.Bit),
new SqlParameter("@O_Id", SqlDbType.NVarChar,50),
new SqlParameter("@Id", SqlDbType.Int)
};
parameters[0].Value = model.Mark;
parameters[1].Value = model.O_Id;
parameters[2].Value = model.Id;
改成
SqlParameter[] parameters = {
new SqlParameter("@Mark", model.Mark),
new SqlParameter("@O_Id", model.O_Id),
new SqlParameter("@Id", model.Id)
};
new SqlParameter("@Mark", SqlDbType.Bit),
new SqlParameter("@O_Id", SqlDbType.NVarChar,50),
new SqlParameter("@Id", SqlDbType.Int)
};
parameters[0].Value = model.Mark;
parameters[1].Value = model.O_Id;
parameters[2].Value = model.Id;
改成
SqlParameter[] parameters = {
new SqlParameter("@Mark", model.Mark),
new SqlParameter("@O_Id", model.O_Id),
new SqlParameter("@Id", model.Id)
};
全部回答
- 1楼网友:渊鱼
- 2021-02-03 08:36
参数化查询对于那个@符号我也遇到过类似的问题
你试试这样可不可以解决(我没试过)
select * from tablename where name like @name
sqlparameter sp = new sqlparameter("@name","%"+变量+"%");
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯