我需要关于 SQL Server 表列的帮助。 我正在尝试重命名列名,但这不起作用。
USE COST_mesta_test
GO
EXEC sp_rename '[dbo].[1965$].obec' , 'people' , 'COLUMN'
GO
我尝试了不同的方括号[]和表"obec"的路径(例如:1965.obec; 1965$.obec; 1965.[obec];等)。 但是仍然出现错误:
参数@objname不明确,或者所声称的@objtype(COLUMN)是错误的。
我需要关于 SQL Server 表列的帮助。 我正在尝试重命名列名,但这不起作用。
USE COST_mesta_test
GO
EXEC sp_rename '[dbo].[1965$].obec' , 'people' , 'COLUMN'
GO
我尝试了不同的方括号[]和表"obec"的路径(例如:1965.obec; 1965$.obec; 1965.[obec];等)。 但是仍然出现错误:
参数@objname不明确,或者所声称的@objtype(COLUMN)是错误的。
我不太理解你的表是如何设置的,例如表名、列名等等,所以这里给出一个重命名列的存储过程示例:
如果我的表长这样:
CREATE TABLE [dbo].[Company](
[ID] [int],
[CompanyName] [varchar](20)
)
我想修改[CompanyName]
列,这是命令:
EXEC sys.sp_rename
@objname = N'dbo.Company.CompanyName',
@newname = 'Name',
@objtype = 'COLUMN'
我怀疑您的第一个参数不正确。
根据文档(sp_rename (Transact-SQL))
如果要重命名的对象是表中的列,则 object_name 必须采用 table.column 或者 schema.table.column 的形式。如果要重命名的对象是索引,则 object_name 必须采用 table.index 或者 schema.table.index 的形式。