【问题标题】:Efficient way of copying data from one azure SQL DB to another将数据从一个 Azure SQL DB 复制到另一个的有效方法
【发布时间】:2020-02-22 11:10:05
【问题描述】:

尝试优化两个 azure sql 数据库之间的表内容副本。

目前,一个数据库有一个外部表设置:

CREATE EXTERNAL TABLE [dbo].[Database2_TableA] (
    [Col1] [varchar](100) NULL,
    [ColN] [varchar](200) NULL
)
    WITH (
    DATA_SOURCE = [Database2],
    SCHEMA_NAME = N'dbo',
    OBJECT_NAME = N'TableA'
    );

然后,在存储过程中,此语句复制数据

insert into TableA1 select * from Database2_TableA

表很大(很多大的列和行),复制时间太长。

有没有更有效的方法?

【问题讨论】:

  • 大表数据拷贝是否考虑使用SSMS导入导出数据?
  • 您好 Greg Balajewicz,如果我的回答对您有帮助,请将其标记为答案或投票。这对其他社区成员可能是有益的。谢谢。

标签: azure-sql-database


【解决方案1】:

如果表有大数据,我想你可以考虑使用以下方式:

  1. SSMS 导入和导出数据。它支持在两个 Azure SQL 数据库之间复制数据。

  • 使用 SSMS Generate Scripts 获取数据:
  • 启动 SQL Server Management Studio 并登录到您的数据库
  • 右键单击您的数据库名称,然后单击生成脚本
  • 选择左侧菜单中的选择对象
  • 单击右侧的选择特定数据库对象 窗口
  • 勾选要复制的表格
  • 点击左侧的设置脚本选项
  • 选择将脚本保存到特定位置并保存到新查询 窗口
  • 点击高级按钮,如下图:

当您单击高级时,您将获得一个选项列表,向下到列表底部并选择数据、架构和数据或仅架构用于脚本的数据类型:

参考:Copy Data Between Two Azure Databases

希望这会有所帮助。

【讨论】:

  • 这是唯一有效的方法
猜你喜欢
  • 1970-01-01
  • 2013-09-10
  • 2012-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-24
相关资源
最近更新 更多