当用户单击按钮时,我需要更改SQL表的名称。我刚刚发现T-SQL代码可以正常工作,但是需要执行步骤;
右键单击数据库并添加新查询(在SQL Server Object Explorer上)
编写tsql代码并运行( sp_rename“ old_name”,“ new_name” )
我只想用一个按钮来做到这一点,我的意思是,当我单击该按钮时,表格的名称将会更改。
有可能吗?
答案 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();
}
}