Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.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 server中将数据从一个数据库表插入到另一个数据库表_Sql_Sql Server - Fatal编程技术网

在sql server中将数据从一个数据库表插入到另一个数据库表

在sql server中将数据从一个数据库表插入到另一个数据库表,sql,sql-server,Sql,Sql Server,我有两个表结构相同的数据库 一个在我的计算机上的本地SQL中,另一个在Live SQL数据库中 现在我想将实时数据库表数据插入本地数据库表 有什么想法吗?当然,您可以使用数据导入功能。不过,如果你不是在说数百万行,还有另一种相当简单的方法。 基本上,您可以对要从中提取的表运行SELECT查询,为每一行创建INSERT语句: SELECT 'INSERT INTO MyTable (col1, col2, col3) VALUES ( ''' + CAST(co

我有两个表结构相同的数据库

一个在我的计算机上的本地SQL中,另一个在Live SQL数据库中

现在我想将实时数据库表数据插入本地数据库表


有什么想法吗?

当然,您可以使用数据导入功能。不过,如果你不是在说数百万行,还有另一种相当简单的方法。

基本上,您可以对要从中提取的表运行SELECT查询,为每一行创建INSERT语句:

SELECT 'INSERT INTO MyTable 
    (col1, col2, col3) 
    VALUES (
        ''' + CAST(col1 AS VARCHAR(25)) + ''',
        ''' + CAST(col2 AS VARCHAR(25)) + ''',
        ''' + CAST(col3 AS VARCHAR(25)) + '''' 
    + ')'   
FROM MyTable
结果集如下所示:

INSERT INTO MyTable (col1, col2, col3, col4)  VALUES ('val1','val2','val3')
INSERT INTO MyTable (col1, col2, col3, col4)  VALUES ('val1','val2','val3')
INSERT INTO MyTable (col1, col2, col3, col4)  VALUES ('val1','val2','val3')
当然,您也可以添加标识插入

因此,只需将结果集复制到测试服务器的查询窗口中并执行它。当我从多个表复制时,我自己已经做过很多次了


我要补充的是,有时这比试图找出如何链接服务器更容易(对于较小的数据集)。

链接服务器?开放行集?这是我想到的前两个选项。您可以使用数据导入/导出工具或设置链接服务器并使用insert语句。甚至OpenRowset我也没有VPS。我使用了我的godaddy服务器。如果它们在同一个物理SQL server上,只需从一个数据库复制到另一个数据库即可。如果它们位于单独的SQL Server实例上,只需链接这些服务器,然后从一个Server.database复制到另一个Server.database。