这是我创建的类型,
CREATE TYPE urs.dest (
destinations frozen<list<text>>);
这是表格,
CREATE TABLE urs.abc (
id int,
locations map<text, frozen<dest>>,
PRIMARY KEY(id));
当我尝试从cqlsh插入值时,
尝试1:
insert into urs.abc (id, locations ) values (1, {'coffee': { 'abcd', 'efgh'}});
尝试2:
insert into urs.abc (id, locations ) values (1, {'coffee': ['abcd', 'efgh']});
尝试3:
insert into urs.abc (id) values (1);
update urs.abc set locations = locations + {'coffee': {'abcd','qwer'}} where id=1;
我收到以下错误,
Error from server: code=2200 [Invalid query] message="Invalid map literal for locations: value {'abcd', 'qwer'} is not of type frozen<dest>"
任何人都可以告诉我为UDT增值的正确方法吗?
答案 0 :(得分:2)
表创建似乎很好
要将表格插入urs.abc
,请使用此
insert into urs.abc (id, locations ) values (1, {'coffee':{ destinations: ['abcd', 'efgh']}});
您缺少字段名称destinations
。