2016-03-19 16 views
1

カサンドラテーブルに新しいカラムを挿入しようとしています。 列名 - テキストのマップタイプ - feedback_map 柱、カサンドラ:カサンドラテーブルにカラムを挿入

をfeedback_mapそして、この文を実行しようとしています。

 ALTER TABLE my_table ADD feedback_map map<text, frozen<feedback_details>>; 

が、カサンドラにかなり新しいです feedback_detailsに未知のタイプのエラーを取得。

私は2つのフィールド -

 @Field(name = "field_mappings") 
     private Map<String, String> fieldMappings; 


     @Field(name = "field_defaults") 
     private Map<String, String> fieldDefaults; 

ないでカスタムfeedback_detailsのユーザタイプを持っています私はまだそれを定義していませんか?このユーザータイプを最初にテーブルに追加する必要がありますか?

+0

はあなたが定義されていますUDTはまだですか? 'desc type feedback_details;'の出力は何ですか? – Aaron

+0

私は私の郵便局を更新しました。見てください – JOGO

答えて

3

まず、ユーザー定義型(UDT)が存在することを確認します。そうでない場合、あなたはそれを作成する必要があります:

CREATE TYPE feedback_details (
    field_mappings MAP<TEXT, TEXT>, 
    field_defaults MAP<TEXT, TEXT>); 

その後、あなたは(あなたが上記の持っているように)あなたのテーブルに列として追加できるようになります:

ALTER TABLE my_table ADD feedback_map map<text, frozen<feedback_details>>; 
+0

ああ..私はちょうどdatastaxドキュメントを通過していた。ありがとうございます – JOGO

関連する問題