You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用ADF导入含换行符的CSV至SQL数据库的行拆分问题

Azure Data Factory 处理含换行符的CSV字段行拆分错误的解决方法

核心问题定位

ADF的CSV解析器默认会优先识别换行符作为行分隔符,即使手动设置了;作为行分隔符,如果引号包裹的字段内有换行且未正确配置引号相关参数,解析器仍会误判为新行。

分步解决方法

  • 精准配置数据集的引号与转义参数
    在CSV类型数据集的设置面板中:

    1. 把Quote character设置为CSV中包裹多行字段的引号(通常是双引号");
    2. 把Escape character也设置为相同的引号(符合CSV标准:引号内的引号用双引号转义,比如"评论里的""双引号""");
    3. 确认Row delimiter设置为;,同时根据CSV实际情况勾选/取消First row as header。
  • 用Binary数据集+Data Flow强制预处理
    如果上述配置无效,改用Binary数据集读取原始文件,再通过Data Flow清洗:

    1. 创建Binary数据集指向Blob中的CSV文件;
    2. 在Data Flow的Source组件中选择该Binary数据集,添加Derived Column转换,用表达式replace(toString($$), '\n', '<br>')把字段内的换行符替换为HTML换行符或其他占位符;
    3. 再用Select组件按;拆分字段,最后输出到目标数据集,此时多行评论会被合并为单行。
  • 验证原始CSV格式合法性
    确保你的CSV没有格式错误:

    • 所有含换行的字段必须被完整的引号包裹,不能出现开头有引号但结尾缺失的情况;
    • 字段内的引号必须用双引号转义,比如"我有""特殊""字符",而非"我有"特殊"字符"。
  • 用Lookup Activity快速验证解析效果
    创建Lookup Activity指向你的CSV数据集,配置好分隔符和引号参数后运行,查看返回的结果是否为预期的3条记录。如果Lookup能正确识别,说明后续的Copy Activity可以正常工作。

内容的提问来源于stack exchange,提问作者Martijntrt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 06:58:15