2016-05-09 10 views
0

Hier ist die benutzerdefinierte UDT, die ich in Cassandra erstellt habe, aber ich bin nicht in der Lage Frame korrekt einfügen Abfrage für die UDT.Einfügen von Abfrage in Cassandra

ERSTELLEN TYP WENN NICHT EXISTENT drei ( ein Text, b Text );

CREATE TYPE WENN NICHT VORHANDEN zwei ( c Text, d gefroren < Liste < gefroren < drei>>> );

CREATE TABLE IF NOT ein solches vorhanden ist ( id Text PRIMARY KEY, Haupt gefroren < zwei> );

die folgende INSERT-Abfrage geben inkompatibel Fehler Spaltentyp in DataStax dev Zentrum insert into one (id, main) values ('something', [ { 'c' : 'something', 'three': [{'a':'something', 'b': 'something'}] } ]);

Antwort

1

Sie könnten versuchen wollen

insert into one (id, main) values ('something', {  
    c : 'something', 
    d : [ {a:'something', b: 'something'}] 
    } 
); 

Sie haben an mehreren Stellen schief gegangen.

  1. Definition von one hat keine Liste.
  2. Definition von two enthält c, d - nicht c, drei.
  3. Bitte benutzen Sie c oder "c" statt 'c'

Ich hoffe, dass Sie mehr versuchen, bevor Sie es auf dem Stack-Überlauf posten.