Есть ли способ предотвратить создание новой строки командой CQL Update, если ключ строки 'row1' не существует?
UPDATE columnfamily SET data = 'test data' WHERE key = 'row1';
Есть ли способ предотвратить создание новой строки командой CQL Update, если ключ строки 'row1' не существует?
UPDATE columnfamily SET data = 'test data' WHERE key = 'row1';
Обновление 2015-04-10:
Начиная с Cassandra 2.0 вы можете использовать облегченные транзакции для выполнить это. Имейте в виду, что, хотя они и называются «легковесными», эти запросы требуют гораздо больше работы в кластере Cassandra.
Спасибо @BSB за обновление.
Ответ до 2.0:
Нет. В отличие от SQL, в CQL Update
и insert
семантически одинаковы. Сначала вам нужно будет выполнить чтение, чтобы определить существование строки.