卡桑德拉插入列集<text>不持久



问题是,当我将一行插入到Cassandra表中时。列(ciderblocks)似乎没有持久化。不产生异常。下面是我的schema

CREATE TABLE atlascarpenter.registration (
    id timeuuid PRIMARY KEY,
    email text,
    firstname text,
    lastname text,
    cidrblocks set<text>
);


我的insert是这个,

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是空的吗?

原来问题是RazorSQL。如果我使用Cassandra的cqlsh工具转储模式或表的内容,我将看到正确的模式和数据。RazorSQL的工具表明它与Cassandra兼容,但不幸的是,它似乎不支持所有Cassandra数据类型。或者至少它不支持像list和set这样的多值类型。奇怪的是,我把我自己的回复作为一个答案,但我认为这可能对别人有帮助。

最新更新