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

Azure Data Factory中更新JSON指定表时间及全局更新时间的需求

解决方案

核心步骤

要实现需求,需要完成以下关键操作:

  • 确保JSON格式合法(你提供的原始JSON缺失闭合括号,需补全)
  • 解析JSON为可操作的数据结构
  • 获取格式化后的当前时间
  • 遍历表数组匹配目标表名并更新time字段
  • 更新根节点的lastupdate字段
  • 序列化回JSON字符串

Python 实现示例

import json
from datetime import datetime

# 补全后的合法JSON
original_json = '''
{
  "name" :"job", 
  "lastupdate": "2023-09-15", 
  "schedule": { 
    "table" : [
      { 
        "tablename":"mani",
        "time":"2023-09-15"
      },
      { 
        "tablename":"user",
        "time":"2023-09-10"
      }
      // 其余8个表对象省略
    ]
  }
}
'''

# 解析JSON为字典
data = json.loads(original_json)
# 生成YYYY-MM-DD格式的当前时间
current_date = datetime.now().strftime("%Y-%m-%d")
# 指定需要更新的表名
target_tablename = "mani"

# 遍历表列表,匹配并更新time字段
for item in data["schedule"]["table"]:
    if item["tablename"] == target_tablename:
        item["time"] = current_date
        break  # 如需更新所有同名表,移除该行

# 更新根节点的lastupdate
data["lastupdate"] = current_date

# 输出格式化后的更新结果
print(json.dumps(data, indent=2))

JavaScript 实现示例

// 补全后的合法JSON字符串
const originalJSON = `{
  "name" :"job", 
  "lastupdate": "2023-09-15", 
  "schedule": { 
    "table" : [
      { 
        "tablename":"mani",
        "time":"2023-09-15"
      },
      { 
        "tablename":"user",
        "time":"2023-09-10"
      }
    ]
  }
}`;

// 解析JSON
const data = JSON.parse(originalJSON);
// 获取YYYY-MM-DD格式的当前时间
const currentDate = new Date().toISOString().split('T')[0];
// 指定目标表名
const targetTablename = "mani";

// 遍历更新匹配的表
data.schedule.table.forEach(table => {
  if (table.tablename === targetTablename) {
    table.time = currentDate;
  }
});

// 更新根节点的lastupdate
data.lastupdate = currentDate;

// 输出结果
console.log(JSON.stringify(data, null, 2));

常见失败原因排查

  1. JSON语法错误:原始JSON缺失]和},解析前必须补全,否则会抛出语法错误
  2. 匹配逻辑错误:表名匹配时未区分大小写,或遍历路径错误(比如写成data.table而非data.schedule.table)
  3. 时间格式不统一:当前时间格式与原有time字段格式不一致,需确保都是YYYY-MM-DD
  4. 遗漏根节点更新:忘记设置lastupdate为当前时间,导致该字段未同步更新

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 21:38:37