【问题标题】:Database Insert and Delete with Stored Procedure使用存储过程的数据库插入和删除
【发布时间】:2011-01-26 06:49:37
【问题描述】:

在我的.aspx 页面中,我有两个文本框和一个添加按钮和一个删除按钮。

我只想在输入数据文本框并单击添加按钮时,使用存储过程添加到数据库。

当输入数据文本框并单击删除按钮时,使用存储过程从数据库中删除。

我该怎么做?

我只需要 4 个代码部分,add_click()delete_click()sp_addsp_delete

如何开发这4个功能?

【问题讨论】:

  • 到目前为止您尝试过什么?您要求为一个答案提供大量代码...
  • 还请说明您的知识/经验和困难领域,因为当我们不知道从哪里开始时,不可能给您答案。就目前的情况而言,答案必须是一个小型应用程序。

标签: c# asp.net database stored-procedures button


【解决方案1】:

由于您向我们提供了任何提示您的表格是什么样子以及您的文本框将是什么,这只是一个类似“模板”的方法。

顺便说一句:您应该在您的存储过程前面加上 sp_ - 该前缀是为 Microsoft 保留的。

proc_delete

想法:你只需传入要删除的主键(通常是某种ID):

CREATE PROCEDURE dbo.proc_delete(@PrimaryKey INT)
AS
   DELETE FROM dbo.YourTable
   WHERE ID = @PrimaryKey

proc_add

你并没有真正告诉我们你想做什么.....所以这是一种可能性

CREATE PROCEDURE dbo.proc_add(@value1 VARCHAR(50), @value2 VARCHAR(50))
AS 
    INSERT INTO dbo.YourTable(Value1, Value2)
    VALUES(@value1, @value2)

从您的 ASP.NET 代码中,您必须执行以下操作:

  • 为数据库创建一个SqlConnection
  • 创建一个合适的SqlCommand来执行你想要的命令
  • 设置参数并填写其值
  • 执行过程

所以在delete_click() 的情况下,你会得到类似的东西:

public void delete_click()
{
    using(SqlConnection _con = new SqlConnection(-your-connection-string-here-))
    using(SqlCommand _cmdDelete = new SqlCommand(_con, "dbo.proc_delete"))
    {
        _cmdDelete.CommandType = CommandType.StoredProcedure;

        // add parameter
        _cmdDelete.Parameters.Add("@PrimaryKey", SqlDbType.Int);
        _cmdDelete.Parameters["@PrimaryKey"].Value = (your key value here);

        // open connection, execute command, close connection
        _con.Open();
        _cmdDelete.ExecuteNonQuery();
        _con.Close();
    }
}

这将是如何做到这一点的大致轮廓 - 我将把 add_click() 留给你!

【讨论】:

    猜你喜欢
    • 2014-06-23
    • 2013-12-19
    • 2011-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-07
    • 2014-02-12
    相关资源
    最近更新 更多