Sql server 是否从sys.objects中删除记录?

Sql server 是否从sys.objects中删除记录?,sql-server,etl,Sql Server,Etl,我在一个表(SQL Server 2012 SP1)上运行了一个ALTER SCHEMA…,但是sys.objects记录仍然存在。当我运行ETL时,我得到一个错误,该表不再存在,因为它试图删除所有约束。这是PK主键约束类型。如何安全地从sys.objects表中删除记录 我设法解决了这个问题,方法是将数据库编写成一个新的脚本,ALTER SCHEMA…再次放在该表上,使其返回到dbo.,然后DROP并在不同的表架构中重新创建该表。要删除主键约束,语法是ALTER TABLE your TABL

我在一个表(SQL Server 2012 SP1)上运行了一个
ALTER SCHEMA…
,但是
sys.objects
记录仍然存在。当我运行ETL时,我得到一个错误,该表不再存在,因为它试图删除所有约束。这是PK主键约束类型。如何安全地从
sys.objects
表中删除记录


我设法解决了这个问题,方法是将数据库编写成一个新的脚本,
ALTER SCHEMA…
再次放在该表上,使其返回到
dbo.
,然后
DROP
并在不同的表架构中重新创建该表。

要删除主键约束,语法是
ALTER TABLE your TABLE DROP CONSTRAINT your CONSTRAINT name
。感谢Dan的回复,但该表已不存在。我已经将它从一个表模式移动到另一个表模式,但是sys.objects表没有得到更新来反映这一点。运行命令I get:找不到对象“MY_TABLE_NAME”,因为它不存在或您没有权限。请尝试此查询从sysobjects中选择*,其中object_NAME(id)=“yourtable”并照顾架构所有者。因为您的表可能存在于其他模式(而不是dbo)中,所以可能没有很好地解释这个问题。我有一个表
dbo。我的表
带有PK约束,我使用
ALTER SCHEMA..
移动到
RAW。我的表
但是
sys.objects
没有更新!?。我的ETL正在尝试删除所有约束,但失败了,因为仍然在系统对象中的表
dbo.My_table
实际上已经不存在了。所有后续的
ALTER
DROP
命令都会失败,
…因为它不存在…
,所有与架构相关的字段
sysobjects.schema\u ver,sysobjects.base\u schema\u ver,sysobjects.stats\u schema\u ver
返回0。