问题是当我将一行插入Cassandra表时。列(ciderblocks)似乎没有持久化。没有异常生成。以下是我的架构,
CREATE TABLE atlascarpenter.registration (
id timeuuid PRIMARY KEY,
email text,
firstname text,
lastname text,
cidrblocks set<text>
);
我的插入就是这个,
INSERT INTO atlascarpenter.registration
(id, cidrblocks, email, firstname, lastname)
VALUES
(now(), {'222.222.222.0/10','111.111.111.0/10'}, 'john.doe@google.com', 'john', 'doe');
我的查询和结果就是这个,
select * from atlascarpenter.registration
id, cidrblocks, email, firstname, lastname
54ca6860-6b47-11e6-8ddf-c9ea2c0bd7d2 [] jane.doe@company.com jane doe
知道为什么cidrblocks是空的吗?
答案 0 :(得分:0)
原来问题是RazorSQL。如果我使用Cassandra的cqlsh工具转储模式或表的内容,我会看到正确的模式和数据。 RazorSQL的工具表明它与Cassandra兼容,但不幸的是它似乎不支持所有Cassandra数据类型。或者至少它不支持像列表和集合这样的多值类型。奇怪的是我发布了自己的回复作为答案,但我认为这可能对其他人有所帮助。