积极答复者
关于引用不同数据库的问题

问题
-
比如我现在有多个视图需要引用另一个数据库里的不同的表,MYDB1为我想引用的数据库
视图1 select * from MYDB1.dbo.form
视图2 select * from MYDB1.dbo.formdetial
视图3 select * from MYDB1.dbo.user
我想实现的是能否改成另一种模式,类似引用
视图11 using MYDB1
视图2 select * from 视图11.dbo.formdetial
视图3 select * from 视图11.dbo.form
视图3 select * from 视图11.dbo.user
这样我只要修改视图11就能改引用别的数据库了,可是以上是我的猜想,在SQL SERVER里有没有类似的方法来实现?
答案
-
DB上去实现确实没有能够很好达到楼主要求的方法,考虑把东西封装到程序吧,通过在连接字符串中指定连接的数据库来实现
用同义词(SYNONYM)的话,你还是得为所有的源对象去建立同文词,在需要切换数据库的时候,你还是需要去修改所有的同义词(只是比直接修改包含了处理逻辑的视图、存储过程这些简单而已)
- 已建议为答案 Molly Chen_Moderator 2012年5月10日 7:21
- 已标记为答案 Molly Chen_Moderator 2012年5月16日 2:31
全部回复
-
根据T-SQL的多部分名称规则看来,似乎有点难以符合你所要的需求。
http://msdn.microsoft.com/zh-cn/library/ms177563(v=sql.105).aspx
以上說明若有錯誤請指教,謝謝。
http://www.dotblogs.com.tw/terrychuang/ -
DB上去实现确实没有能够很好达到楼主要求的方法,考虑把东西封装到程序吧,通过在连接字符串中指定连接的数据库来实现
用同义词(SYNONYM)的话,你还是得为所有的源对象去建立同文词,在需要切换数据库的时候,你还是需要去修改所有的同义词(只是比直接修改包含了处理逻辑的视图、存储过程这些简单而已)
- 已建议为答案 Molly Chen_Moderator 2012年5月10日 7:21
- 已标记为答案 Molly Chen_Moderator 2012年5月16日 2:31