2014-04-05 11 views
5

Ich versuche, eine Tabelle/Spaltenfamilie aus meiner Datenbank zu löschen, aber ich kann es nicht tun.Wie kann man Tabellen oder Spaltenfamilien in Cassandra 2.0.5 ablegen?

Ich habe die folgenden Befehle versucht, und ihre Antworten sind:

cqlsh:testreducedb> DROP_COLUMNFAMILY largest_time_total; 
Bad Request: line 1:0 no viable alternative at input 'DROP_COLUMNFAMILY' 
cqlsh:testreducedb> DROP COLUMNFAMILY largest_time_total; 
Bad Request: unconfigured columnfamily largest_time_total 
cqlsh:testreducedb> DROP COLUMN FAMILY largest_time_total; 
Bad Request: line 1:5 no viable alternative at input 'COLUMN' 
cqlsh:testreducedb> DROP COLUMN FAMILY 'largest_time_total'; 
Bad Request: line 1:5 no viable alternative at input 'COLUMN' 
cqlsh:testreducedb> DROP COLUMN FAMILY "largest_time_total"; 
Bad Request: line 1:5 no viable alternative at input 'COLUMN' 

und auch:

cqlsh:testreducedb> DROP_TABLE largest_time_total; 
Bad Request: line 1:0 no viable alternative at input 'DROP_TABLE' 
cqlsh:testreducedb> DROP TABLE largest_time_total; 
Bad Request: unconfigured columnfamily largest_time_total 
cqlsh:testreducedb> DROP TABLE 'largest_time_total'; 
Bad Request: line 1:11 no viable alternative at input 'largest_time_total' 
cqlsh:testreducedb> DROP TABLE "largest_time_total"; 
Bad Request: unconfigured columnfamily largest_time_total 

jemand weiß, wie man in Cassandra 2.0.5 Tabellen/Spalten-Familien fallen zu lassen?

Ich verwende:

[cqlsh 4.1.1 | Cassandra 2.0.5 | CQL spec 3.1.1 | Thrift protocol 19.39.0] 

Antwort

5

ich durch die Fehler gehen werde Sie bekam so können Sie ein klares Bild von dem, was vor sich geht, sondern zunächst eine Notiz, dass columnfamily == Tabelle.

cqlsh: testreducedb> DROP_COLUMNFAMILY large_time_total; Bad Request: Linie 1: 0 keine brauchbare Alternative am Eingang 'DROP_COLUMNFAMILY'

DROP_COLUMNFAMILY Ist kein gültiger Befehl. Es sollte DROP COLUMNFAMILY oder DROP TABLE sein vorausgesetzt, Sie verwenden bereits den Schlüsselbereich (Datenbank), der die oben genannte Tabelle (aka columnfamily) speichert. Wenn Sie nicht den Schlüsselraum auf Ihren Client angegeben haben, dann können Sie es in der Drop-Anweisung angeben:

DROP TABLE <keyspace>.<columnfamily>; 
DROP TABLE <keyspace>.<table>; 
# the below is an actual statement assuming grocerystore is the keyspace and 
# shoppers is the columnfamily 
DROP TABLE "grocerystore"."shoppers"; 

cqlsh: testreducedb> DROP COLUMNFAMILY largest_time_total; Schlechte Anforderung: unkonfigurierte Spaltenfamilie largest_time_total

Die Spaltenfamilie existiert nicht tatsächlich. Basierend auf nur zu sehen, cqlsh meine Wette ist, dass Sie nicht mit dem Schlüsselraum angegeben, speichert * größte_Zeit_gesamt *. Versuchen Sie, USE <keyspace> in Cqlsh, z. USE grocerystore;

Der Rest der Fehler sind nur Wiederholungen der oben genannten.

P. S Sie waren mit diesem ganz in der Nähe, aber es gibt einen Raum zu viele zwischen COLUMN und FAMILY :)

cqlsh: testreducedb> DROP largest_time_total COLUMN FAMILY; Bad Request: Linie 1: 5 keine brauchbare Alternative am Eingang 'column'

Versuchen:

USE testreducedb; 
DROP COLUMNFAMILY largest_time_total;