【问题标题】:How to move on-premises database table identity column data to Azure SQL table如何将本地数据库表标识列数据移动到 Azure SQL 表
【发布时间】:2017-07-25 20:39:05
【问题描述】:

我需要将本地数据库迁移到 Azure SQL。数据库的结构完全相同。在我的数据库中,有列上具有 Indentity 属性的表。我需要从我的本地数据库中插入这些列。我需要按照预定义的时间表(比如每天)通过 ADF 复制活动来完成。我尝试了以下链接中提到的各种选项: Data migration to Azure with foreign key referencing an identity columnAzure Data Factory Copy Identity Column With Gaps。但是,我没有复制标识列数据的选项。 在 Azure 中可以吗?这是我现在的问题。如果是,那么如何?

【问题讨论】:

    标签: azure


    【解决方案1】:

    我不能代表 ADF 复制活动的权威,但您可以使用以下设置写入 SQL Server/SQL Azure 中的标识列:

    https://docs.microsoft.com/en-us/sql/t-sql/statements/set-identity-insert-transact-sql 这会将值从 SQL Server 表精确复制到 SQL Azure 表(覆盖标识语义)

    请注意,在保持此属性的同时允许对两个 SQL 表进行插入是没有意义的(假设您将其用作代理键)。

    如果您只想发布到“只读”的 SQL Azure 表(发布步骤除外),请注意,您还可以将 SQL Azure 用作附加的事务复制发布者的订阅者到本地 SQL Server。这也可能解决您的问题。

    希望对您有所帮助, 康纳坎宁安 架构师,SQL 团队

    【讨论】:

    • 嗨,是的,我知道通过将 IDENTITY_INSERT 设置为 ON,我们可以插入标识列。但是,我的问题是,在使用 ADF 的 Copy data(PREVIEW) 选项时,我无法将标识列从本地映射到 Azure。我的问题现在已经解决了。我以编程方式修改了一个管道来映射标识列并部署它。我还在控制 IDENTITY_INSERT 的输出数据集上执行存储过程。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-12
    • 1970-01-01
    • 1970-01-01
    • 2015-12-17
    • 2018-06-09
    • 1970-01-01
    相关资源
    最近更新 更多