我有列名 [car_no] 我想重命名它....
我是这样想的:
exec sp_rename 'add_duty_slip.[car_no]' , 'car_no', 'column'
但它没有用。
谢谢
我有列名 [car_no] 我想重命名它....
我是这样想的:
exec sp_rename 'add_duty_slip.[car_no]' , 'car_no', 'column'
但它没有用。
谢谢
你的代码运行起来就像一个魅力。看到这个小提琴。
但是对旧名称和新名称使用相同的名称不会做任何事情。
为两者使用不同的名称(即实际上重命名列),例如:
exec sp_rename 'add_duty_slip.[car_no]' , 'car_no1', 'column'
效果也很好。看到这个其他的小提琴。
编辑:
如果这是您问题的真正含义,括号 ( []
) 不是列名的一部分,它们只是包含不规则字符(例如空格)的名称的分隔符。所以[car_no]
和car_no
实际上是完全相同的名称。
如果您的列名确实包含在括号内,您可以执行以下操作:
exec sp_rename 'add_duty_slip."[car_no]"' , 'car_no', 'column'
看到这个小提琴。
这会对你有所帮助。
sp_RENAME 'TableName.[OldColumnName]' , '[NewColumnName]', 'COLUMN'
此外,由于旧名称和新名称相同,因此即使在运行代码后您也无法注意到更改。
你有没有试过这个:
EXEC sp_rename
@objname = 'table_name.old_column_name',
@newname = 'new_column_name',
@objtype = 'COLUMN'
试试这个
重命名任何列的脚本:
sp_RENAME 'TableName.[OldColumnName]' , '[NewColumnName]', 'COLUMN'
重命名任何对象(表、sp 等)的脚本:
sp_RENAME '[OldTableName]' , '[NewTableName]'