Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.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 Can';t将记录从一个表插入其他数据库中的另一个表_Sql_Sql Server_Azure_Azure Sql Database - Fatal编程技术网

Sql Can';t将记录从一个表插入其他数据库中的另一个表

Sql Can';t将记录从一个表插入其他数据库中的另一个表,sql,sql-server,azure,azure-sql-database,Sql,Sql Server,Azure,Azure Sql Database,我有一个带有2个数据库的SQL Azure数据库服务器,我需要将记录从第一个数据库的表插入到另一个数据库的另一个表中。这两个数据库位于具有相同安全设置/登录的同一服务器上 我试过: INSERT INTO DatabaseB.dbo.TableB (ColumnA, ColumnB) SELECT TableA.ColumnA, TableA.ColumnB FROM DatabaseA.dbo.TableA 当我使用SSMS运行SQL时,我得到: Msg 40515, Level 15, S

我有一个带有2个数据库的SQL Azure数据库服务器,我需要将记录从第一个数据库的表插入到另一个数据库的另一个表中。这两个数据库位于具有相同安全设置/登录的同一服务器上

我试过:

INSERT INTO DatabaseB.dbo.TableB (ColumnA, ColumnB)
SELECT TableA.ColumnA, TableA.ColumnB
FROM DatabaseA.dbo.TableA
当我使用SSMS运行SQL时,我得到:

Msg 40515, Level 15, State 1, Line 16
Reference to database and/or server name in 'DatabaseB.dbo.TableB ' is not supported in this version of SQL Server.

SQL数据库不支持跨数据库查询,例如您正在尝试执行的查询,只读弹性查询除外。您需要执行两个单独的操作

SQL Server和SQL数据库之间的一轮T-SQL差异的具体说明如下


关于弹性查询的信息:。

您所说的“两个单独的操作”是什么意思?意思是,您需要首先对数据库a进行查询,然后独立地插入数据库B。使用单独的连接字符串/数据库上下文。如上所述,您不能在一个查询中桥接两个数据库(无论凭据是否相同)。首先对数据库a进行查询,将结果临时存储在“某处”(?),然后将结果复制到数据库B中的表中。是否正确?是的,完全正确。很简单。只需两个数据库调用,通过应用层将数据从一个数据库调用传递到另一个数据库调用。