5

是否可以在我的数据库服务器中创建另一个服务器数据库表的视图?

假设您有一个数据库调用Testing并且server1您有另一个数据库Testing2server2. 是否可以在数据库中创建Testing2表视图?Table2server1Testing

另外,我使用的是 SQL Server 2008。

请让我知道,如果你有任何问题。

谢谢,

4

2 回答 2

6

是的你可以。首先,您需要使用类似sp_addlinkedserver.

然后,您可以使用 4 部分命名访问数据。这是一个例子:

create view v_server1_master_tables as
    select *
    from server1.master.information_schema.tables;
于 2013-03-22T15:22:38.093 回答
3

可以通过链接服务器。但是,我不鼓励您基于来自另一台服务器的表创建视图,因为每次使用此视图时,很可能会从链接服务器中选择整个表 - 优化器可能不知道此表结构来发出任何过滤器。我在工作中看到过它,没有人知道select * from大表上的查询来自哪里,这会减慢数据库的速度,而且它似乎在另一个服务器的某个地方被使用,在一个简单的查询中。至少您应该检查您的解决方案是否不会导致上述问题。也许其他人可以详细说明优化器在处理链接服务器时的行为方式?

于 2013-03-22T15:29:33.430 回答