在ADF中使用复制活动动态映射REST API的子对象集合
用ADF复制活动实现JSON嵌套集合的动态复制与自动建表
你完全可以用单个复制活动实现需求,不需要数据流,问题出在源端的路径配置和映射设置上,调整步骤如下:
1. 精准定位JSON数据源
在复制活动的源选项卡中,找到JSON路径配置项(REST源在「高级」区域,JSON文件源在「格式设置」的「JSON路径」),输入表达式 $[0].items。这个表达式会直接提取返回结果里外层数组第一个元素下的items集合,让复制活动把items里的每个对象作为独立数据记录处理,而非读取外层包含totalResults的对象。
2. 调整映射与接收器设置
- 切换到映射选项卡,勾选「自动映射」,并将「集合引用」设为
$(此时数据源已经是items的数组,每条记录是单个对象,集合引用指向当前对象即可)。 - 在SQL接收器设置里,确认「表选项」选择「自动创建表(如果不存在)」,按需指定目标表名(支持动态参数)。
3. 验证运行
重新启动复制活动后,系统会基于items里的FirstName和LastName字段自动创建SQL表,并插入3条对应记录,不会包含totalResults列。
之前的问题是因为复制活动默认读取外层数组的元素(即带items和totalResults的对象),集合引用没正确指向嵌套的items集合,导致自动建表时识别了外层对象的totalResults字段,而非嵌套集合里的内容。
内容的提问来源于stack exchange,提问作者Geekn
相关产品推荐
相关产品推荐

