Обновите несколько предметов в Amazons SimpleDB - PullRequest
3 голосов
/ 23 июля 2011

Можно ли обновить все элементы в домене на основе значения атрибута, не выбирая все соответствующие элементы и затем обновляя элементы по одному?

Допустим, у меня есть база данных контактов, и я хочу обновить поле региона на «Юго-запад» для всех элементов с атрибутом состояния «TX».

в MySQL я могу использовать "ОБНОВИТЬ контакты SET region = 'Southwest' WHERE State = 'TX', есть ли такая же простая команда для SimpleDB?

Я использую AWS SDK для PHP.

1 Ответ

3 голосов
/ 26 июля 2011

К сожалению, я не верю, что вы можете сделать традиционное обновление, похожее на RDMS.Два способа Я знаю , как это сделать, - использовать запрос BatchPutAttributes или запрос PutAttributes.Оба требуют, чтобы вы сначала выбрали данные и прошли через объекты.Разница в том, что BatchPutAttributes позволит вам обновлять несколько сущностей за один вызов против обновления каждой сущности в отдельности.Я бы рассмотрел документацию для BatchPutAttributes и PutAttributes , поскольку каждый запрос имеет свои ограничения.

Надеюсь, это поможет, и, пожалуйста, держите нас в курсе, если вы нашли другие способы выполнить массовое обновление.

...