Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 数据库的符号链接/别名_Sql Server_Hyperlink - Fatal编程技术网

Sql server 数据库的符号链接/别名

Sql server 数据库的符号链接/别名,sql-server,hyperlink,Sql Server,Hyperlink,我想在一个MS SQL server实例中使用多个版本的数据库(包括表、视图和过程)。假设我有这些数据库: db_dev1 db_dev2 db_dev3 db_dev10 我总是有一个当前/稳定的版本,并希望创建一种“链接”。目前,“db_dev2”是稳定的,我想要一个“link”或别名“db_stable”,并使用所有的表、过程,。。。属于“db_dev2”,但使用名称“db_stable”。在NTFS或EXT4这样的文件系统中,我会创建一个符号链接如何在MS SQL server中执

我想在一个MS SQL server实例中使用多个版本的数据库(包括表、视图和过程)。假设我有这些数据库:

  • db_dev1
  • db_dev2
  • db_dev3
  • db_dev10
我总是有一个当前/稳定的版本,并希望创建一种“链接”。目前,“db_dev2”是稳定的,我想要一个“link”或别名“db_stable”,并使用所有的表、过程,。。。属于“db_dev2”,但使用名称“db_stable”。在NTFS或EXT4这样的文件系统中,我会创建一个符号链接如何在MS SQL server中执行此操作?当开发继续进行时,我会将“链接”更改为“db_dev3”,以此类推。执行此操作时,我不必更改访问此数据库的SQL代码


使用“硬链接”的解决方案——将“db_dev2”的副本重命名为“db_stable”——对我来说不是一个好的解决方案,因为数据库相当大。

您可以使用同义词。很遗憾,您无法为数据库创建同义词。 但是您可以创建一个“空”数据库db_stable,它具有所有对象的同义词。
只需编写一些脚本来创建/更改每个对象的同义词。

这听起来像是个XY问题。当然,如果您要创建符号链接,您必须将数据库脱机,更改链接,然后将其重新联机;这并不理想。老实说,拥有一个数据库的多个可交换副本听起来像是一个主要的设计/工作流程缺陷。这不是我的设计。你将如何设计及时开发的数据库?这取决于你在做什么。我怀疑这是一些额外的实例或良好的源代码管理和迁移过程可以解决的问题(可能是后者)。