我使用大量存储过程(〜1500)处理项目。这些存储过程中的大多数都包含散布在其中的USE“databaseName”语句。维护数据库的类似副本
问题:我目前正在处理的项目需要我维护两个版本的数据库。在一个版本中,我有一组不应该改变的基础数据,并且可以在需要时使用。另一个版本是来自第一个数据库的数据,以及对该数据的更改。
是否有人知道在给定时间更改使用哪个数据库的简单方法?
一种选择是使用不同的名称备份和恢复原始数据库。但是,这样做会破坏存储过程中的USE语句。我可以用新名称替换存储过程中旧数据库名称的所有情况,但误报可能会导致问题。另一种选择是制作整个SQL Server实例的副本,并连接到该副本。从网上搜索,这样做看起来像一个相当复杂的过程。
当然,这是一个常见问题,我忽略了一个简单的方法来处理这个问题?除了上述两种选择外,我从互联网搜索中看不到任何东西。
您确定您在存储过程中使用了[databasename]吗?最后我检查了这是不允许的。或者,你的意思是从[databaseA]。[schema]。[table] join [database] .schema.table中选择x – SqlACID