根据以下文档, https://learn.microsoft.com/en-us/azure/data-factory/connector-azure-sql-database
有一个功能可以运行 SQL 后脚本。是否可以从那里运行存储过程?
我已经尝试过了,似乎不起作用,目前正在调查。
感谢您提前提供信息。
最佳答案
我创建了一个测试来证明可以在 Post SQL 脚本中调用该存储过程。
我创建了两个表:
CREATE TABLE [dbo].[emp](
id int IDENTITY(1,1),
[name] [nvarchar](max) NULL,
[age] [nvarchar](max) NULL
)
CREATE TABLE [dbo].[emp_stage](
id int,
[name] [nvarchar](max) NULL,
[age] [nvarchar](max) NULL
)
我创建了一个古老的程序。
create PROCEDURE [dbo].[spMergeEmpData]
AS
BEGIN
SET IDENTITY_INSERT dbo.emp ON
MERGE [dbo].[emp] AS target
USING [dbo].[emp_stage] AS source
ON (target.[id] = source.[id])
WHEN MATCHED THEN
UPDATE SET name = source.name,
age = source.age
WHEN NOT matched THEN
INSERT (id, name, age)
VALUES (source.id, source.name, source.age);
TRUNCATE TABLE [dbo].[emp_stage]
END
我会将 csv 文件复制到我的 Azure SQL 临时表 [dbo].[emp_stage]
中,然后使用存储的程序 [dbo].[spMergeEmpData]
进行传输数据从 [dbo].[emp_stage]
到 [dbo].[emp]
。
关于azure - 在 Azure 数据平台中执行存储过程 - Post SQL 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67118539/