sql-server - SQL Server 多架构对象问题

标签 sql-server schema synonym alter

我的数据库下有多个模式和对象。我想将对象合并到一个架构中。

我试过了

ALTER SCHEMA dbo TRANSFER <custom_schema>.<table_name>

我得到一个

object already exists message

但是,我在管理工作室中看不到它,

SELECT * from dbo.<table_name>

返回

object does not exist.

看起来某些系统表条目不正常。我查看了 sysobjects,它只有一个 .欢迎就如何排查/修复此问题提出任何建议。

注意:我可以创建同义词

CREATE SYNONYM dbo.<table_name> FOR <custom_schema>.<table_name>

工作正常

最佳答案

根据this MSDN page您的问题可能是由重复的主键名称引起的。即您的 table_name 的主键名称与 dbo 中其他表中已定义的主键名称冲突。

To resolve this issue, rename the primary key for the table that you want to move. Use a name that does not appear as a primary key in the destination schema.

关于sql-server - SQL Server 多架构对象问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4227173/

相关文章:

sql - 删除 SQL Server 2010 中的 "duplicate"行

sql - SQL Server 中的复合 SUM

c# - 无法在 sql server 数据库中保存存储过程

xml - ID 属性在 XML 中必须是唯一的吗?

design-patterns - 我可以使用什么数据库模式来保存不同类型的账单数据?

sql-server - SQL Server XQuery - 仅适用于删除命名空间声明的情况

lucene - 在构建索引时提升 Lucene 术语

elasticsearch - 与 ElasticSearch 集成的 WordNet - 如何添加新的同义词

indexing - Solr:同义词文件不应超过多大的大小?

php - 'X and above' 条目的正确架构/查询