我有一个带有sql插入记录的sql的基本逻辑应用程序,它运行良好。但是在这里我需要在插入记录之前截断表。
Azure逻辑应用程序有可能吗?如果可以的话,我该如何实现?
注意:我正在使用本地数据网关访问数据库,并且数据库是MSsql
答案 0 :(得分:1)
我需要在插入记录之前截断表。 Azure逻辑应用程序可以做到这一点吗?
是的,您无需编写任何SP即可在Logic App上进行操作。
在SQL应用中,逻辑应用程序设计器上的内置连接器为Execute a SQL Query
。您必须使用该连接器。
如果可以,我该如何实现?
您可以在此处编写RAW
sql命令。请参见下面的示例。
我有一个如下表:
CREATE TABLE AzureSqlTable(
[Id] [int] PRIMARY KEY IDENTITY(1,1) NOT NULL,
[FirstName] [nvarchar](max) NULL,
[LastName] [nvarchar](max) NULL,
[Email] [nvarchar](max) NULL,
)
GO
您的案例:
在您的情况下,我曾尝试使用
INSERT
执行程序命令SQL
进行数据 在执行INSERT操作之前,我只需要对该表进行截断,如下所示:
TRUNCATE TABLE AzureSqlTable
INSERT INTO AzureSqlTable VALUES('PassFirstNameParam','PassLastNameParam','PassEmailParam')
我已经使用参数值定义了HTTP请求JSON模式,并将其传递给SQL Executor Connector
。请参见以下屏幕截图:
在场所操作中:
对于前提查询执行,您必须进行如下配置:
注意:对于本地连接配置,您可以参考此official docs
这是在INSERT操作之前可以对表进行截断的方法。如您所知,如何配置SQL连接。所以我没有把它放进去。
答案 1 :(得分:0)
在SQL Server上写一个存储过程以截断该表,然后通过数据网关通过SQL连接器在逻辑应用程序中对其进行调用。之后,您可以注入数据。