数据库参数化查询的问题

Athenacle_ 2012-05-19 02:16:06
做一个ASP.NET的课程设计,碰到以下问题,谢谢

string type = ((baseUser)(context.Session["UserInfo"])).userType;
string sql = "UPDATE @table SET @pwdName = @pwd WHERE @idName = @id";
string idName = "";
string pwdName = "";

if (type == "Student")
{
idName = "Stu_id";
pwdName = "Stu_pwd";
}
else if (type == "Teacher")
{
idName = "Tea_id";
pwdName = "Tea_pwd";
}
else if (type == "Admin_User")
{
idName = "User_id";
pwdName = "User_pwd";
}

SqlParameter[] para = new SqlParameter[5];

para[0] = new SqlParameter("@table", type);
para[1] = new SqlParameter("@pwdName", pwdName);
para[2] = new SqlParameter("@pwd", newPwd);
para[3] = new SqlParameter("@idname", idName);
para[4] = new SqlParameter("@id", ((baseUser)context.Session["UserInfo"]).userId);

ExecuteNoReader(sql, para);//<-------------------------这句,无返回,无异常,求解



public static void ExecuteNoReader(string queryString, SqlParameter[] cmdParms)
{
using (SqlConnection connection = new SqlConnection(CONN_STRING))
{
SqlCommand command = new SqlCommand(queryString, connection);
if (cmdParms != null)
{
foreach (SqlParameter parm in cmdParms)
command.Parameters.Add(parm);
}
command.CommandType = System.Data.CommandType.Text;
command.Connection.Open();
command.ExecuteNonQuery();
}
}

...全文
96 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bonnibell 2012-05-19
  • 打赏
  • 举报
回复
表名能作为参数啊?

还真没有见过这样用的
Athenacle_ 2012-05-19
  • 打赏
  • 举报
回复
额。。我当然知道这个是无返回值的,我的意思是返回调用者栈帧啊。。。。。

ExecuteNoReader(sql, para);//<-------------------------这句,无返回,无异常,求解
... //<---------------------------上面的ExecuteNoReader执行完后不会返回到这里
一个吃瓜群众 2012-05-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
那个方法本身就是 void,哪来的返回值?可以改成返回 Int32:

return command.ExecuteNonQuery();
[/Quote]感觉说的对
zhangdaowu5 2012-05-19
  • 打赏
  • 举报
回复
你要返回什么类型的就把方法改一下,然后给个返回值。
theillusion 2012-05-19
  • 打赏
  • 举报
回复
那个方法本身就是 void,哪来的返回值?可以改成返回 Int32:

return command.ExecuteNonQuery();

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧