如何在将 REST 数据集映射到 SQL 数据集时使用动态日期
How to use dynamic date in mapping of a REST dataset to SQL dataset
我从 Elasticsearch(通过 REST 数据集)获取一些数据并将其添加到 SQL 服务器 Table。我想通过 utcnow() 将实际日期添加到写入 SQL 数据库的数据集中。
我尝试在字段中添加 @formatDateTime(adddays(utcnow(),-2), 'yyyy-MM-dd') 但这会导致目标数据库中的 "null"。
不得不说 formatDateTime
的语法是正确的。根据我对你的要求的理解,你想添加一个额外的列(命名为 nowDate),它不涉及源 dataset.I恐怕它是列出的错误条件 here:
- 源数据存储查询结果没有列名是
在输入数据集 "structure" 部分中指定。
- 接收器数据存储(如果具有预定义架构)没有列
在输出数据集 "structure" 部分中指定的名称。
- 接收器 "structure" 中的列更少或更多
比映射中指定的数据集。
- 重复映射。
但是,由于您的接收器是 sql 服务器,您可以在存储过程中添加可以在副本中执行的列 activity.Please 请参阅本指南:https://docs.microsoft.com/en-us/azure/data-factory/connector-sql-server#invoke-a-stored-procedure-from-a-sql-sink
我从 Elasticsearch(通过 REST 数据集)获取一些数据并将其添加到 SQL 服务器 Table。我想通过 utcnow() 将实际日期添加到写入 SQL 数据库的数据集中。
我尝试在字段中添加 @formatDateTime(adddays(utcnow(),-2), 'yyyy-MM-dd') 但这会导致目标数据库中的 "null"。
不得不说 formatDateTime
的语法是正确的。根据我对你的要求的理解,你想添加一个额外的列(命名为 nowDate),它不涉及源 dataset.I恐怕它是列出的错误条件 here:
- 源数据存储查询结果没有列名是 在输入数据集 "structure" 部分中指定。
- 接收器数据存储(如果具有预定义架构)没有列 在输出数据集 "structure" 部分中指定的名称。
- 接收器 "structure" 中的列更少或更多 比映射中指定的数据集。
- 重复映射。
但是,由于您的接收器是 sql 服务器,您可以在存储过程中添加可以在副本中执行的列 activity.Please 请参阅本指南:https://docs.microsoft.com/en-us/azure/data-factory/connector-sql-server#invoke-a-stored-procedure-from-a-sql-sink