如何在MS SQL 2005中通过alter table
重命名列?如何在SQL表中重命名我的列?
例如:
alter table tablename rename "old col name" to "new col name"
如何在MS SQL 2005中通过alter table
重命名列?如何在SQL表中重命名我的列?
例如:
alter table tablename rename "old col name" to "new col name"
sp_rename 'TableName.ColumnName', 'NewColumnName', 'COLUMN'
sp_rename
如上所述here。
虽然我似乎记得它不能总是被使用。
我想让它不sp_rename 我怎样才能做到这一点改变..
你不能。您可以使用新名称在表中创建一个新列,将旧列的内容复制到新列中,然后删除旧列(这是两个ALTER和一个UPDATE),但唯一的办法就是这样做是sp_rename。
下面是ALTER TABLE documentation的链接,您可以在其中看到可用的选项。变化不是其中之一。
文档的这一部分涵盖了你可以作为ALTER TABLE的ALTER COLUMN子句的一部分做什么:
ALTER COLUMN column_name { [ type_schema_name. ] type_name [ ({ precision [ , scale ] | max | xml_schema_collection }) ] [ COLLATE collation_name ] [ NULL | NOT NULL ] | {ADD | DROP } { ROWGUIDCOL | PERSISTED | NOT FOR REPLICATION} }
注意,有一个新的名字只字不提。因此,再次重复一次,您无法在SQL Server中使用ALTER TABLE重命名列。如果他们实现的标准语法(它们不),这将是ALTER TABLE [表名] RENAME {COLUMN} [列名]至[new_column_name]
改变表'客户'更改'newColumnName''[First_Name]'类型大小是否为真更改不是在MS SQL? – Penguen 2010-06-17 08:40:24
对于MySQL的语法是:
ALTER TABLE <db>.<table> CHANGE COLUMN <old_column_name> <new_column_name> <column_type>;
试试这个重命名列
EXEC sp_RENAME 'table_name.old_Column_name', 'new_Column_name', 'COLUMN'
我想让它不sp_rename我怎样才能做到这一点改变.... – Penguen 2010-06-17 08:33:18
@Phsika:不要以为你可以,有时我感到沮丧也。 – 2010-06-17 09:13:02