如何在按钮单击(C#)上执行SqlQuery

时间:2018-08-08 13:17:53

标签: c# sql-server

当用户单击按钮时,我需要更改SQL表的名称。我刚刚发现T-SQL代码可以正常工作,但是需要执行步骤;

  1. 右键单击数据库并添加新查询(在SQL Server Object Explorer上)

  2. 编写tsql代码并运行( sp_rename“ old_name”,“ new_name”

我只想用一个按钮来做到这一点,我的意思是,当我单击该按钮时,表格的名称将会更改。

有可能吗?

1 个答案:

答案 0 :(得分:0)

您可以使用如下所示的sql命令。但是,我不确定为什么每次用户按下按钮时都要重命名表。

编辑:已更新,以修复SQL连接超出范围的问题。太早看了这个。感谢Richardissimo指出这一点!您也绝对不应该吞下该异常。

using(var conn = new SqlConnection("connectionString")
{
    try
    {
        conn.Open();
        using (var sqlCmd = new SqlCommand("sp_rename")
        {
            CommandType = CommandType.StoredProcedure,
            Parameters =
            {
                new SqlParameter("@old_name", "oldtablename"),
                new SqlParameter("@new_name", "newtablename")
            },
            Connection = conn
        })
        {
            sqlCmd.ExecuteNonQuery();
        }   
    }
    catch(Exception ex)
    {
        System.Diagnostics.Debug.WriteLine(ex.Message.Trim());
    }
    finally
    {
        if(conn.State == ConnectionState.Open)
            conn.Close();
    }
}