为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Go 更新 DynamoDB 中的多个值

使用 Go 更新 DynamoDB 中的多个值

Go
浮云间 2022-09-05 11:02:42
我正在尝试更新 DynamoDb 表中的值 1 和值 2 项目属性,但只设置一个参数 (value1)。尝试同时包含值 1 和值 2 () 会导致:UpdateExpressionaws.String("set value1= :r, set value2= :c")Got error calling UpdateItem: %sValidationException: Invalid UpdateExpression: Syntax error; token: "set", near: ", set HashValue" status code: 400, request id:******如何更新数据库项中的多个字段?--func UpdateObject(obj MyObject) (string, error) {sess := session.Must(session.NewSessionWithOptions(session.Options{    SharedConfigState: session.SharedConfigEnable,}))// Create DynamoDB clientsvc := dynamodb.New(sess)// Update item in table MoviestableName := "MyTable"input := &dynamodb.UpdateItemInput{    ExpressionAttributeValues: map[string]*dynamodb.AttributeValue{        ":r": {            N: aws.String(strconv.Itoa(obj.value1)),        },        ":c": {            S: aws.String(obj.value2),        },    },    TableName: aws.String(tableName),    Key: map[string]*dynamodb.AttributeValue{        "ThreatID": {            N: aws.String(strconv.Itoa(obj.value3)),        },        "ThreatName": {            S: aws.String(obj.value4),        },    },    ReturnValues:     aws.String("UPDATED_NEW"),    UpdateExpression: aws.String("set value1= :r"),} //........}-- type MyObject struct {     value3 int     value4 string     value2 string     value1 int   }
查看完整描述

1 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

使用以下语法:

aws.String("set value1= :r, value2= :c")

参考资料: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.UpdateExpressions.html


查看完整回答
反对 回复 2022-09-05
  • 1 回答
  • 0 关注
  • 136 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号