Как использовать операцию копирования ADF с несколькими строками в источнике?

У меня есть источник, который является массивом JSON, раковина является сервером SQL. Когда я использую сопоставление столбцов и вижу код, я вижу, что сопоставление выполняется с первым элементом массива, поэтому при каждом запуске создается одна запись, несмотря на то, что в источнике есть несколько записей. Как использовать операцию копирования для импорта ВСЕХ строк?

 "enableStaging": false,
                    "translator": {
                        "type": "TabularTranslator",
                        "schemaMapping": {
                            "['@odata.context']": "BuyerFinancing",
                            "['@odata.nextLink']": "PropertyCondition",
                            "value[0].AssociationFee": "AssociationFee",
                            "value[0].AssociationFeeFrequency": "AssociationFeeFrequency",
                            "value[0].AssociationName": "AssociationName",

2 ответа

Решение

Крест поддержки ADF применяется для массива JSON. Пожалуйста, проверьте пример в этом документе. https://docs.microsoft.com/en-us/azure/data-factory/supported-file-formats-and-compression-codecs

Для отображения схемы: https://docs.microsoft.com/en-us/azure/data-factory/copy-activity-schema-and-type-mapping

Используйте * в качестве исходного поля, чтобы указать все элементы в формате json. Например, с json:

      {
"results": [
     {"field1": "valuea", "field2": "valueb"},
     {"field1": "valuex", "field2": "valuey"}
    ]
}

и таблица базы данных с результатом столбца для хранения json. Сопоставление с результатами в виде коллекции и * и подэлемента создаст две записи с:

      {"field1": "valuea", "field2": "valueb"}
{"field1": "valuex", "field2": "valuey"}

в поле результата.

Копировать сопоставление полей данных

Другие вопросы по тегам