我们在同一个DB服务器中有两个数据库。但是数据库都使用不同的用户名和密码。我在第二个数据库中有一个存储过程,应该连接到第一个数据库并提取一些记录吗?
这可行吗?
之前我们的数据库都使用相同的用户名和密码。所以我们很容易在存储过程中的数据库之间进行连接。但现在我们更改了密码。
我们正在使用SQL Server 2008 DB
答案 0 :(得分:0)
如果不将数据库用户映射到同一服务器登录,您的选项非常有限。一个好的选择是再看一下跨数据库所有权链接的工作原理。您可能已经在使用跨数据库所有权链接,如this MSDN article和this MSDN article中所述。
可以将SQL Server配置为允许特定数据库之间或SQL Server单个实例内所有数据库之间的所有权链接。默认情况下禁用跨数据库所有权链接,除非特别需要,否则不应启用它。
如果跨数据库所有权链接不是一个选项,那么丑陋的选择就是使用OpenRowset
。详细信息位于this MSDN article。