【问题标题】:SSIS : Import text File having data in JSON format and load into SQL ServerSSIS:导入具有 JSON 格式数据的文本文件并加载到 SQL Server
【发布时间】:2021-09-07 10:23:22
【问题描述】:

我需要在 SSIS 中创建一个导入包,以从具有 JSON 格式内容的文本文件中加载数据并加载到 SQL Server 数据库中。

以下是文本文件中的一个示例记录:

{
    "apeId": "677ac547367456defgea42beb9bebc",
    "apeName": "DISCOVERY STATION",
    "id": "e1a3af5af654178a0ff5ffc01fd014a7",
    "imageUrl": "http://172.16.6.9:8080/427/21e3698fd99ffb5c.jpg",
    "lat": "25.038544",
    "lng": "52.146149",
    "monitorTask": "Traffic",
    "resultTime": "2021-03-26 16:05:25",
    "sceneImgUrl": "http://172.16.6.9:8080/427/21e3d99ffb5c.jpg",
    "subType": "CAR",
    "subjectId": "H66621",
    "trackId": "329741647"
}

我只需要从中获取值并加载到 SQL 中,关键是我的表列名。 理解它可以通过脚本任务来完成。 请协助我编写代码示例。

谢谢

【问题讨论】:

  • 根据问题指南,请展示您的尝试并告诉我们您发现了什么(在本网站或其他地方)以及为什么它不能满足您的需求。
  • 你的问题是什么,你不问。 Stack Overflow 不是代码示例网站,而是问答网站。您还没有使用tour,所以我建议您这样做,因为您目前似乎不了解该网站的目标。
  • 你见过this tutorial吗?这是相当新的和相当彻底的。我要提到的 SSIS 的一个问题是,如果您的脚本任务具有外部依赖项,您必须对它们进行 GAC 或使用反射来访问它们。 This question 涵盖了这些场景。

标签: sql-server ssis


【解决方案1】:

使用https://json2csharp.com/ 之类的工具来创建类并对其进行反序列化。

// Root[] myDeserializedClass = JsonConvert.DeserializeObject<Root[]>(myJsonResponse); 
    public class Root
    {
        public string apeId { get; set; }
        public string apeName { get; set; }
        public string id { get; set; }
        public string imageUrl { get; set; }
        public string lat { get; set; }
        public string lng { get; set; }
        public string monitorTask { get; set; }
        public string resultTime { get; set; }
        public string sceneImgUrl { get; set; }
        public string subType { get; set; }
        public string subjectId { get; set; }
        public string trackId { get; set; }
    }

这可能不是您的完整解决方案。粘贴整个 Json 文件,因为您可能会有一个类列表/数组。但之后就很简单了。

在这种情况下使用 foreach 循环。

foreach(var r in Root)
{
   //push to SSIS
}

【讨论】:

    猜你喜欢
    • 2020-11-17
    • 1970-01-01
    • 1970-01-01
    • 2018-11-20
    • 1970-01-01
    • 2014-09-16
    • 1970-01-01
    • 2017-03-10
    • 1970-01-01
    相关资源
    最近更新 更多