创建表给出了错误的表已经存在
问题描述:
Col1 Col2 Col3
1 'Name1' 'Address1'
哪里col1
与约束'constraint1'
主键。
现在我想将Table1
重命名为Table2
。在将它添加col1_1
,改变从“COL1”主键col1_1
然后创建一个名为“Table1
”
现在我已经更名为表table1参见表2新表,并在其中添加列“col1_1”作为主键在部署脚本中。
在预部署脚本中:
1:删除旧的主键约束。
2:使用sp_rename
当我公布我得到错误“Table2
”对象已经存在于创建“Table2
”
答
如果你有机会到SSMS,或者如果你的数据库重命名Table1
到Table2
可以让DBA为你检查它。然后请首先检查名称为Table2的对象是否已经存在。 您可能运行低于T-SQLS
USE DatabaseName
GO
select * from sysobjects
where name = 'Table2'
GO
在上述查询的结果集,将的xtype表示的对象类型。您可以通过运行以下查询来获取对象类型列表:
SELECT *
FROM master..spt_values
WHERE type = 'O9T'
您可以显示脚本吗?这听起来就像'sp_rename'后面没有'GO'。 –
IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = '表1') \t BEGIN \t \t EXEC sp_rename '表1', '表2' \t END GO –
sp_rename –