gpt4 book ai didi

node.js - 使用 NODEjs : Syntax error; token: \"updated\", 附近的 DynamoDB 更新:\"set updated =\""

转载 作者:太空宇宙 更新时间:2023-11-03 22:08:30 25 4
gpt4 key购买 nike

我的 dynamoDB 上的每个项目如下所示

 {
"status": "pending",
"ccNumber": "0012",
"created": "2018-03-07T16:42:02-04:00",
"id": "14664d28-ef41-4228-99b5-6381a2a69f62",
"amount": "12",
"invoice": "71200",
"customerId": "00000"
}

我正在尝试更新此特定记录上的字段并添加更多项目。这是我的参数变量

 const params = {
TableName: this.table,
Key: { id },
UpdateExpression: `set tranStatus = :status, updated = :updated, authTransacId = :authTransacId, avsResponse = :avsResponse, authCode = :authCode`,
ExpressionAttributeValues: {
':status': data.status,
':updated': moment().utcOffset(-4).format(),
':authTransacId': data.transId,
':avsResponse': data.avsResponse,
':authCode': data.authCode
},
ReturnValues: "UPDATED_NEW"
}

我似乎找不到新字段的问题:已更新

最佳答案

你可以console.log(params)吗?

我怀疑updated是一个保留字。在参数中使用 ExpressionAttributeNames 是一种安全的做法。

我想你调用了.update(params),不是吗?

const params = {
TableName: this.table,
Key: { id },
UpdateExpression: `set #a = :status, #b = :updated, #c = :authTransacId, #d = :avsResponse, #e = :authCode`,
ExpressionAttributeValues: {
':status': data.status,
':updated': moment().utcOffset(-4).format(),
':authTransacId': data.transId,
':avsResponse': data.avsResponse,
':authCode': data.authCode
},
ExpressionAttributeNames: {
'#a': 'tranStatus',
'#b': 'updated',
'#c': 'authTransacId',
'#d': 'avsResponse',
'#e': 'authCode',
},
ReturnValues: "UPDATED_NEW"
}

关于node.js - 使用 NODEjs : Syntax error; token: \"updated\", 附近的 DynamoDB 更新:\"set updated =\"",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49179637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com