在C#按钮中运行存储过程

时间:2010-11-08 13:08:46

标签: c# sql

点击C#Windows应用程序中的按钮是否有办法可以启动存储过程来更新数据?我也遇到过在我的数据源中看到SP的问题,这是第一次发生在我身上。艾米关于这些事情的想法?我应该使用SSIS,那是否可能?

由于

ALTER PROCEDURE dbo.InsertData

 @QuoteNumber as varchar(11), 
 @ItemNumber as varchar(15)
AS
  UPDATE       SF1411
 SET                QuoteNumber = @QuoteNumber, ItemNumber = @ItemNumber, DeleteItem = 'NO'
 WHERE        (QuoteNumber IS NULL)
 RETURN

3 个答案:

答案 0 :(得分:1)

我认为这是这样的......

using (SqlCommand cmd  = new SqlCommand("InsertData", conn))
{
   cmd.CommandType = CommandType.StoredProcedure;
   cmd.Parameters.Add(new SqlParameter("@QuoteNumber ", QuoteNumber ));
   cmd.Parameters.Add(new SqlParameter("@ItemNumber ", ItemNumber ));
   cmd.ExecuteNonQuery();
}

答案 1 :(得分:1)

shin的回答看起来不错。虽然我不认为你必须写“新的SQL参数”。

它应该像这样工作= cmd.Parameters.Add("@QuoteNumber ", QuoteNumber ));

答案 2 :(得分:0)

您可以在事件处理程序中为按钮的click事件使用类似的内容,将 ConnectionString quote item 替换为适当的值。

using (SqlConnection dataConn = new SqlConnection(ConnectionString))
        {
            dataConn.Open();

            using (SqlCommand dataCommand = dataConn.CreateCommand())
            {
                dataCommand.CommandType = CommandType.StoredProcedure;
                dataCommand.CommandText = "InsertData";

                dataCommand.Parameters.AddWithValue("@QuoteNumber", quote); 
                dataCommand.Parameters.AddWithValue("@ItemNumber", item); 

                dataCommand.ExecuteNonQuery();
            }
        }