Как я могу динамически заменить, где параметры условия в Dynamodb? - PullRequest
0 голосов
/ 04 января 2019

Текущий код Пример:

Scan * from table_name where name='ajith' and lastname='gupta';

В реальном сценарии я буду получать разные значения. Мне нужно передать их здесь в этом запросе выше и получить вывод. Также лучше предотвратить внедрение данных.

Желаемый:

Scan * from table_name where name=? and lastname=?;

1 Ответ

0 голосов
/ 05 января 2019

Используйте параметры Имена атрибутов выражений и Значения атрибутов выражений.

Пример Javascript с использованием DocumentClient:

let params = {
  TableName: 'table_name',
  KeyConditionExpression: '#lname = :lname and #name = :name',
  ExpressionAttributeNames: {
    '#name': 'name',
    '#lname': 'lastname'
  },
  ExpressionAttributeValues: {
    ':name': 'ajith',
    ':lname': 'qupta',
  }
}
dynamodbDocumentClient.query(params).promise().then(result => {
  // soSomethingWithTheResultHere
})

В этом примере предполагается, что у вас есть таблица с разделом и ключом сортировки с именами name и lastname См. https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Query.html для получения дополнительной информации о запросах.

...