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

使用ADF复制活动导入SqlGeography至ADLS Gen2失败求助

解决ADF复制活动不支持SqlGeography类型导入ADLS Gen2的问题

ADF复制活动本身不直接支持SqlGeography数据类型,可通过以下几种方案解决:

方案1:源端SQL查询转换为WKT文本

在复制活动的源配置中,放弃直接选择表,改用自定义SQL查询,通过SQL Server内置函数将SqlGeography列转换为Well-Known Text(WKT)格式的文本:

SELECT 
  [其他列名],
  Spatial.STAsText() AS Spatial_WKT
FROM YourTargetTable

转换后的文本类型可被ADF正常识别,导出到ADLS Gen2后,若需还原地理类型,可通过STGeomFromText()函数重新转换。

方案2:源端SQL查询转换为JSON格式

同样使用自定义SQL查询,通过AsJson()函数将SqlGeography列转为JSON格式:

SELECT 
  [其他列名],
  Spatial.AsJson() AS Spatial_JSON
FROM YourTargetTable

JSON格式兼容性强,导出后便于后续解析地理数据结构。

方案3:使用ADF数据流处理复杂转换

如果需要更灵活的转换逻辑,可采用ADF数据流:

  • 数据源选择SQL Server,读取包含SqlGeography列的表。
  • 添加派生列转换,使用表达式将地理列转为字符串类型(例如toString(Spatial),具体函数可参考ADF数据流内置函数)。
  • 将处理后的数据集写入ADLS Gen2目标存储。

注意事项

  • 转换后的文本/JSON格式会完整保留原地理数据的空间信息,仅存储格式变为ADF支持的类型。
  • 若目标为Parquet等列存格式,需将转换后的列类型设置为string,确保兼容性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 03:50:59