Как обновить таблицу в Кассандре без указания ключа раздела? - PullRequest
0 голосов
/ 20 сентября 2019

У меня проблема, когда я хочу обновить семейство столбцов в cassandra, без указания ключа раздела, у меня есть ошибки.Я пытаюсь использовать РАЗРЕШЕНИЕ ФИЛЬТРАЦИИ, но всегда.

update tablename set field1="newValue";

1 Ответ

0 голосов
/ 21 сентября 2019

Невозможно использовать ALLOW FILTERING в обновлениях:

https://docs.datastax.com/en/archived/cql/3.3/cql/cql_reference/cqlUpdate.html?hl=update

Сравните его с синтаксисом SELECT:

https://docs.datastax.com/en/archived/cql/3.3/cql/cql_reference/cqlSelect.html?hl=update

Если это то, что вы хотите делать регулярно, то у вас, вероятно, есть проблема дизайна, и таблицы должны быть смоделированы таким образом, чтобы вам не нужно было использовать ALLOW FILTERING.

Если это всего лишь одноразовая вещь,Вы всегда можете выбрать ключи, используя ALLOW FILTERING (возможно, экспортировать их, в зависимости от размера результата), а затем выполнить обновление этих ключей (IN поддерживается для первичных ключей).

...