如何从带有参数的Sql中删除多行? [英] How To Delete Multi Rows From Sql With Parameter?
本文介绍了如何从带有参数的Sql中删除多行?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好,我想从sql中删除多行。
我的代码:
Hello, I want to delete multiple rows from sql.
My code:
USE [MyWebsite]
GO
/****** Object: StoredProcedure [dbo].[DeletUserFromAdmin] Script Date: 3/21/2013 7:54:08 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[DeletUserFromAdmin]
@userid int
as
DELETE FROM [dbo].[Users]
WHERE usr_Id in (@userid)
protected void Button1_Click(object sender, EventArgs e)
{
string id = "0";
foreach (GridDataItem mm in grdAllUsers.Items)
{
if (mm.Selected)
{
id +="," + mm.GetDataKeyValue("usr_Id");
Literal1.Text = id;
}
}
Admin delet = new Admin();
string req = delet.DeleteUserFromAdmin(id);
id = string.Empty;
LoadGridAllUsers();
Literal1.Text += "REquest:" + req;
}
SqlCommand cmd = new SqlCommand("DeletUserFromAdmin", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@userid", SqlDbType.Int).Value = id;
try
{
if (con.State == ConnectionState.Closed)
{
con.Open();
}
if (cmd.ExecuteNonQuery() > 0)
{
return "Succ";
}
else
{
return "UnSucc";
}
}
catch(Exception ex)
{
return ex.Message;
}
finally
{
con.Close();
}
}
推荐答案
string id = "0";
cmd.Parameters.Add("@userid", SqlDbType.Int).Value = id;
为什么你尝试将字符串分配给一个整数值?
但这只是猜测什么可能是你的问题,因为你甚至没有描述它。
Why do you try to assign to an integer value a string one ?
But it''s just a guess on what could be your problem, as you did not even describe it.
这篇关于如何从带有参数的Sql中删除多行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文