使用存储过程插入和删除数据库

Son*_*nül 0 c# database asp.net stored-procedures button

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

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

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

我怎样才能做到这一点?

只要我需要4个代码的一部分,add_click(),delete_click(),sp_add,sp_delete

我该如何开发这个4功能?

mar*_*c_s 8

既然你给我们任何暗示你的表格是什么样子以及你的文本框是什么,这只是一种类似"模板"的方法.

BTW:你应该使用前缀与存储过程sp_-该前缀保留给微软.

proc_delete

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

CREATE PROCEDURE dbo.proc_delete(@PrimaryKey INT)
AS
   DELETE FROM dbo.YourTable
   WHERE ID = @PrimaryKey
Run Code Online (Sandbox Code Playgroud)

proc_add

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

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

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

  • 创建一个SqlConnection数据库
  • 创建一个适合SqlCommand执行所需命令的程序
  • 设置参数并填充其值
  • 执行proc

所以在这种情况下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();
    }
}
Run Code Online (Sandbox Code Playgroud)

这将是如何做到的粗略轮廓 - 我会留给add_click()你的!