如何在复制成功或失败时从 Azure SQL 中的 Azure 数据工厂创建新的 table

How to create new table from Azure data factory in Azure SQL when copy succeeded or fail

我正在 Azure 数据工厂中进行复制 activity。我正在将 csv 文件复制到 azure sql db。我已经设置了从链接器服务到数据集的所有内容。我想要的是,如果复制 activity 成功或失败,那么我想将表名、复制的行数和状态(成功、失败)插入到 Azure SQL 中的另一个 table 中。怎么办。

您可以使用参数化 StoredProcedure Activity。然后,您可以在管道中动态地将值分配给参数。

示例:

Table 存储副本详细信息。

Create table [dbo].[CopyDetails](
TableName nvarchar(max),
NoOfRows int,
CopyStatus nvarchar(max)
)

与复制相同的数据库中的存储过程

CREATE PROCEDURE recordDetails @TableName nvarchar(max), @NoOfRows int, @CopyStatus nvarchar(max)
AS
Insert into [dbo].[CopyDetails] 
VALUES
(@TableName, @NoOfRows, @CopyStatus)
GO

在管道中相应地创建变量

示例工作流水线

设置变量行已复制

@string(activity('Copy data1').output.rowsCopied)

设置变量状态

@activity('Copy data1').output.executionDetails[0].status

设置存储过程Activity

使用变量为存储过程参数设置动态值

执行成功后