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

AWS DMS迁移testt表name列哈希转换报错求助

问题解决:AWS DMS 数据迁移时列转换表达式无效

问题原因

你使用的sha256($column)不符合AWS DMS转换表达式的语法规范,DMS有自己的内置函数库,不能直接使用通用的哈希函数命名。

解决方案

根据你的需求,分两种实现方式:

方式1:生成SHA256哈希值(匹配哈希需求)

修改转换规则中的expression为DMS支持的内置哈希函数语法,且需要先将列值转为字符串类型再哈希:

{
  "rules": [
    {
      "rule-type": "selection",
      "rule-id": "1",
      "rule-name": "SelectTable",
      "object-locator": {
        "schema-name": "public",
        "table-name": "testt"
      },
      "rule-action": "include"
    },
    {
      "rule-type": "transformation",
      "rule-id": "2",
      "rule-name": "HashNameColumn",
      "rule-target": "column",
      "object-locator": {
        "schema-name": "public",
        "table-name": "testt",
        "column-name": "name"
      },
      "rule-action": "transform",
      "expression": "HASH_SHA256(TO_STRING($column))",
      "rule-description": "Hash the name column using SHA256"
    }
  ]
}

如果需要将哈希值格式化为示例中的带短横线样式,可添加字符串截取拼接逻辑:

"expression": "CONCAT(SUBSTRING(HASH_SHA256(TO_STRING($column)),1,6), '-', SUBSTRING(HASH_SHA256(TO_STRING($column)),7,6), '-', SUBSTRING(HASH_SHA256(TO_STRING($column)),13,6))"

方式2:生成UUID(更贴合示例格式)

如果不需要严格哈希,仅需要UUID格式字符串,直接使用DMS内置的UUID()函数即可:

{
  "rules": [
    {
      "rule-type": "selection",
      "rule-id": "1",
      "rule-name": "SelectTable",
      "object-locator": {
        "schema-name": "public",
        "table-name": "testt"
      },
      "rule-action": "include"
    },
    {
      "rule-type": "transformation",
      "rule-id": "2",
      "rule-name": "GenerateUUIDForName",
      "rule-target": "column",
      "object-locator": {
        "schema-name": "public",
        "table-name": "testt",
        "column-name": "name"
      },
      "rule-action": "transform",
      "expression": "UUID()",
      "rule-description": "Replace name with UUID"
    }
  ]
}

关键说明

  • AWS DMS转换表达式必须使用官方定义的内置函数,常见的包括HASH_SHA256()、TO_STRING()、CONCAT()、SUBSTRING()、UUID()等。
  • 若源列非字符串类型,必须先用TO_STRING()转换后再进行哈希或字符串操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 16:42:59