sql server 2005中如何修改字段名

2024-12-04 11:12:31
推荐回答(3个)
回答(1):

SQL Server
调用
EXECUTE sp_rename
来进行 对数据库表中,列名的变更。

下面的代码,是在 SQL Server Management Studio 里面做修改
然后把 修改所生成的 SQL 语句复制粘贴出来,在 Sqlcmd 下面执行的
操作是把 test_tab 表的 val字段, 修改为 val2 字段。

1> BEGIN TRANSACTION
2> SET QUOTED_IDENTIFIER ON
3> SET ARITHABORT ON
4> SET NUMERIC_ROUNDABORT OFF
5> SET CONCAT_NULL_YIELDS_NULL ON
6> SET ANSI_NULLS ON
7> SET ANSI_PADDING ON
8> SET ANSI_WARNINGS ON
9> COMMIT
10> BEGIN TRANSACTION
11> GO
1> EXECUTE sp_rename N'dbo.test_tab.val', N'Tmp_val2', 'COLUMN'
2> GO
注意: 更改对象名的任一部分都可能会破坏脚本和存储过程。
1> EXECUTE sp_rename N'dbo.test_tab.Tmp_val2', N'val2', 'COLUMN'
2> GO
注意: 更改对象名的任一部分都可能会破坏脚本和存储过程。
1> COMMIT
2> go

test_tab 表的 val字段, 修改为 val2 字段。
SQL Server Management Studio 生成的代码为什么要先把 val 字段修改为 Tmp_val2
然后再把 Tmp_val2 修改为 val2
这个原理还不大清楚。

不过简单的写,就是
EXECUTE sp_rename N'dbo.test_tab.val', N'val2', 'COLUMN'

回答(2):

一、在sql server 2005企业管理器中修改
打开企业管理器,找到要修改的数据表,点右键,选择设计表,在设计视图中修改字段名

二、通过SQL语句
EXEC sp_rename ‘表名.字段名','更改后的字段名','COLUMN'

回答(3):

下例将表 customers 中的列 contact_title 重命名为 title。
EXEC sp_rename 'customers.[contact_title] ', 'title ', 'COLUMN ' ;