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

Azure Data Factory复制数据时字符串转Single类型失败求助

解决ADF Copy Data Activity中CSV空字符串转SQL Real类型的类型转换错误

针对你遇到的类型转换失败问题,这里提供几个无需直接用数据流写入SQL MI的可行方案:

  • 方案1:配置CSV源数据集识别空字符串为Null
    打开你的CSV源数据集,切换到「连接」选项卡,展开高级设置,勾选「将空字符串视为null」选项。这个设置会让Copy Data Activity在读取CSV时,自动把空字符串('')解析为SQL兼容的Null值,而非字符串类型,从而匹配SQL MI中Real列的Null兼容特性。

  • 方案2:在Copy Data Activity的映射中添加转换逻辑
    如果方案1未解决问题,进入Copy Data Activity的「映射」面板:

    1. 找到Use列的映射项,点击编辑图标进入配置
    2. 在「源列」的表达式输入框中填入:iif(Use == '', null(), Use),强制将空字符串转换为Null
    3. 确认「目标列」的类型设置为Single(对应SQL MI的Real类型),同时确保SQL端该列允许Null值
  • 修正数据流输出CSV的配置(针对你的预处理流程)
    若你仍需要通过数据流预处理后输出CSV,调整数据流接收器的配置:

    1. 在数据流的派生列步骤中,用iif(Use == '', null(), Use)将空字符串替换为Null
    2. 在CSV接收器的「设置」选项卡中,取消勾选「将Null写入为空字符串」,这样输出的CSV中Null值会以空单元格形式保存,后续Copy Data Activity读取时配合方案1的设置即可正确识别为Null

额外检查项

  • 确认SQL Managed Instance中Use列的类型为Real,且列的「允许Null」属性已启用
  • 检查Copy Data Activity的「设置」选项卡,确保未开启可能干扰的特殊配置(如不必要的行过滤规则)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 02:20:56