in dynamoDB У меня есть таблица с атрибутами, которые переносятся через дефис. (например, имя)Обновление атрибута в DynamoDB, содержащего дефис или тире (-) в javascript
Теперь я хочу обновить их, используя javascript. Это мой код до сих пор:
//create UpdateExpression and ExpressionAttributeValues
let updateExpression = "set ";
let expressionAttributeValues ={};
if (e.firstName !== null){
updateExpression = updateExpression + " "+ 'first-name'+" = :f,";
expressionAttributeValues[":f"] = e.firstName;
}
let table = "tableName";
let bpNumber = e.bpNumber;
let params = {
TableName: table,
Key: {
"bpNumber": bpNumber
},
UpdateExpression: updateExpression,
ExpressionAttributeValues: expressionAttributeValues,
ReturnValues:"UPDATED_NEW"
};
console.log("Updating the item...");
docClient.update(params, function(err, data) {
if (err) {
console.error("Unable to update item. Error JSON:", JSON.stringify(err, null, 2));
} else {
console.log("UpdateItem succeeded:", JSON.stringify(data, null, 2));
}
});
Однако это бросает мне эту ошибку:
Unable to update item. Error JSON: {
"message": "Invalid UpdateExpression: Syntax error; token: \"-\", near: \"first-name\""
Есть ли способ обойти это?
Благодарим за помощь :)
удивительного, это работает. спасибо .... я бы никогда не нашел это в одном документе –