SQL Server 多架构对象问题
Posted
技术标签:
【中文标题】SQL Server 多架构对象问题【英文标题】:SQL Server multiple schema object issues 【发布时间】:2011-05-12 17:56:30 【问题描述】:我的数据库中有多个架构和对象。我想将对象合并到一个架构中。
我试过了
ALTER SCHEMA dbo TRANSFER <custom_schema>.<table_name>
我得到一个
对象已存在消息
但是,我在管理工作室中看不到它,并且
SELECT * from dbo.<table_name>
返回
对象不存在。
看起来某些系统表条目不正常。我查看了 sysobjects,它只有一个 .欢迎任何有关如何解决/解决此问题的建议。
注意:我可以创建同义词
CREATE SYNONYM dbo.<table_name> FOR <custom_schema>.<table_name>
工作正常
【问题讨论】:
您是否在尝试转移之前创建了同义词? 没有。当我发现我无法执行 ALTER SCHEMA 时,我创建了它... TRANSFER 【参考方案1】:根据this MSDN page,您的问题可能是由主键名称重复引起的。即您的 table_name 的主键名称与已在 dbo 中的某个其他表中定义的主键名称冲突。
要解决此问题,请重命名 您创建的表的主键 想搬家。使用不 作为主键出现在 目标架构。
【讨论】:
我今天遇到了这个问题,改了PK名,改了schema,然后把PK名改回原来的名字,效果很好!以上是关于SQL Server 多架构对象问题的主要内容,如果未能解决你的问题,请参考以下文章