Moja tabela wygląda tak
jak zaktualizować wiersze w Kasandra za pomocą tylko klucza partycji?
create table Notes(
user_id varchar,
real_time timestamp,
insertion_time timeuuid,
read boolean PRIMARY KEY (user_id,real_time,insertion_time)
);
create index read_index on Notes (read);
Chcę zaktualizować wszystkiewierszy więcej z user_id = 'xxx' bez mającego określić wszystkie indeksy klastrowe.
UPDATE Notes SET read = true where user_id = 'xxx'; // Says Error
Błąd:.? Message = "Brak obowiązkowych klucz podstawowy Część real_time
Próbowałem tworzenia indeksu wtórnego, ale jej nie pozwolono na klucz podstawowy
Jak mogę rozwiązać ten
wybrałem uSER_ID być w pierwotnej przyczyny kluczowego chcę być w stanie zrobić select * from Notes where user_id = 'xxx'
powinno być możliwe.
Chociaż powyższa odpowiedź jest poprawna, myślę, że warto wspomnieć, że można użyć klauzuli "IN" dla ostatniej kolumny klucza podstawowego (tj. 'Insertion_time' z pytania autorów). W zależności od przypadku użycia przydatne jest zmniejszenie wymaganej ilości instrukcji CQL. – user909481