【发布时间】:2011-04-03 22:10:18
【问题描述】:
是否有一种简单的方法可以为不同数据库中的所有表创建同义词?
谢谢
编辑: 我有许多存储过程将一些表模式硬编码到选择查询中。当我将架构复制到新服务器时,SP 失败,因为架构不存在。我对目标服务器几乎没有控制权,我不想更改所有 SP,所以我认为同义词可能是一个很好的解决方案。
【问题讨论】:
-
不回答我的数据库设置问题。当您访问任一数据库时,连接字符串是否与数据库/目录相同?主机名/IP 和端口是否相同?
-
如果 SP 因缺少架构而失败,为什么不创建缺少的架构?但是 SP 可以在新设置中运行 - 表存在等吗?
-
说来话长。该开发旨在建立在零售应用程序的基础上,该应用程序使用在设置时选择的自己的自定义模式。因此,我继承的扩展使用了 SP,它引用了诸如retailProduct.table1 之类的东西。问题是这个模式从开发到生产是不同的。所以我很好奇为每个retailProduct.tablex 创建一个同义词是否更好。如果扩展数据是在单独的数据库中创建的,那将是链接服务器的确切情况。但事实并非如此。表和 SP 与零售产品集成到同一个数据库中。
-
自定义模式会很好......如果设置迭代所有引用以保持它们同步。仍然没有得到关于设置的明确答案,但听起来链接服务器不是解决方案......
标签: sql-server synonym