Cassandra:创建表时不能使用“ NOT NULL”约束

ars*_*ium 4 cassandra

我在这里看到许多使用NOT NULL约束创建表的示例。具有讽刺意味的是,我似乎无法做到这一点。

这是我使用的cql命令:

CREATE TABLE activities_dev (activity_id  uuid ,actor_id bigint NOT NULL, actor_appid bigint NOT NULL, item_id text NOT NULL, verb text NOT NULL,viewer_id bigint NOT NULL,viewer_appid bigint NOT NULL, ts timestamp, PRIMARY KEY(activity_id,actor_id,actor_appid,item_id,verb));
Run Code Online (Sandbox Code Playgroud)

但这是我得到的错误:

SyntaxException: line 1:62 mismatched input 'NOT' expecting ')' (...activities_dev(activity_id uuid, actor_id integer [NOT] NULL...)
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么 ?

Ash*_*lam 5

在Cassandra中,不支持NOT NULL关键字。

对于主键列,cassandra会自动处理。如果您尝试将null插入任何主键值,cassandra将抛出异常

Invalid null value in condition for column


小智 0

首先,如果您将此列修改为 NOT NULL ,请检查此列中的所有字段是否都具有值。