簡體   English   中英

如何使用邏輯應用程序將 blob 中存在的 CSV 數據復制到 azure 存儲表

[英]how to copy CSV data that is present in blob to azure storage table using logic app

我設計了一個邏輯應用程序,現在使用邏輯應用程序將數據從 blob 復制到 azure 存儲表,我的 output 是錯誤的,因為 blob 中存在的所有數據都顯示在 azure 存儲表的單列中的 output 中。

我嘗試使用獲取 blob 內容操作,然后從 azure 存儲表中插入實體。在插入實體步驟中,我得到的所有 output 的 blob 內容都存儲在 azure 存儲表的單列中

從 csv 文件中檢索到內容后,您需要將數據轉換為 Json。然后使用撰寫操作可以將數據插入表中。 從我這邊轉載的問題和下面是我遵循的步驟,

  1. 創建的邏輯應用程序如下所示,

在此處輸入圖像描述

  1. 在存儲帳戶中創建容器並在容器中上傳一個 CSV 文件。在此處輸入圖像描述

3.接下來使用 compose 操作將 CSV 文件的內容在每個新行上拆分到一個數組中。在此處輸入圖像描述

下面是 compose 動作中使用的表達式:

split(body('Get_blob_content_(V2)'),decodeUriComponent('%0D%0A'))
  1. 使用另一個撰寫操作從之前的 output 中刪除最后(空)行,如下所示,

在此處輸入圖像描述

take(outputs('Compose'),add(length(outputs('Compose')),-1))

5.使用組合動作分隔文件名在此處輸入圖像描述

split(first(outputs('Compose')), ',')
  1. 使用 Select 操作形成如下所示的 json,在此處輸入圖像描述
skip(outputs('Compose_3'), 1)
outputs('Compose_2')[0]  split(item(), ',')?[0]
outputs('Compose_2')[1]   split(item(), ',')?[1]
outputs('Compose_2')[2]   split(item(), ',')?[2]
outputs('Compose_2')[3]   split(item(), ',')?[3]
  1. 由於 csv 文件中有多行,使用 for each 循環如下所示,在此處輸入圖像描述
  2. 使用compose動作,形成json向azure表中插入數據,在此處輸入圖像描述
  3. 從 Compose4 動作的 output 向表中插入數據,在此處輸入圖像描述
  4. 邏輯應用程序成功運行並將數據插入到 azure 表中,在此處輸入圖像描述

獲取 blob 內容的 Output:在此處輸入圖像描述

Select 的 Output:

在此處輸入圖像描述

插入實體的 Output:在此處輸入圖像描述

插入表中的數據:在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM