在MSSQL(Visual Studio)中使用特定的数据库和表

在MSSQL(Visual Studio)中使用特定的数据库和表,sql,sql-server,database,visual-studio,database-server,Sql,Sql Server,Database,Visual Studio,Database Server,我在VisualStudio中工作,并使用Studio中内置的SQL管理器。现在我连接到几个数据库,我非常希望能够保存和打开我的SQL查询,并且仍然让它们访问正确的数据库和表 因此: 现在,我想编写一个sql查询,它可以做一些简单的事情,比如: select * from users where userid = '12'; 但是,我想从数据库服务器db2和数据库databasenumber3中选择它 我该如何在use语句中编写它?或者,除了“使用”之外,还有什么其他内容吗?在一次脚本文件中处

我在VisualStudio中工作,并使用Studio中内置的SQL管理器。现在我连接到几个数据库,我非常希望能够保存和打开我的SQL查询,并且仍然让它们访问正确的数据库和表

因此:

现在,我想编写一个sql查询,它可以做一些简单的事情,比如:

select * from users where userid = '12';
但是,我想从
数据库服务器db2
数据库databasenumber3
中选择它


我该如何在
use
语句中编写它?或者,除了“使用”之外,还有什么其他内容吗?

在一次脚本文件中处理多个数据库时,需要使用后跟GO语句

USE db1;
GO

SQL statements ...
...


USE db2;
GO

SQL statements ...
...
另一种选择是使用
server.dbname.tablename
格式,但这严格要求所有数据库托管在同一台服务器上

SELECT * FROM server.db1.table1  
SELECT * FROM server.db2.table2
...

我不能让它工作。db1.company.com是一台运行数据库引擎的计算机。db2.company.com是一台完全不同的计算机,其上运行着一个数据库引擎,即使是在不同的子网上。在VisualStudio中的SQL Server下,我已将它们连接起来,可以浏览它们并使用它们(在SQL Server对象资源管理器中)。如果我写“usedb1;go”,我会得到以下错误:msg911,16级,状态1,第1行数据库“db1”不存在。确保输入的名称正确。(很抱歉,格式很糟糕。我不理解《格式指南》)
SELECT * FROM server.db1.table1  
SELECT * FROM server.db2.table2
...