Cassandra:在尝试创建简单表时,在')'时缺少EOF

use*_*995 3 cassandra

我正在尝试使用cqlsh在Cassandra上创建一个简单的表.语法是:


    CREATE TABLE TEST(
        timestamp timestamp,
        system_id text,
        hostname text,
        cpu_pct float,
        memory_used bigint,
        PRIMARY_KEY(system_id, timestamp)
    );

当我运行这个时,我得到了这个错误.怎么修?


    ErrorMessage code=2000 [Syntax error in CQL query] message="line 8:0 missing EOF at ')' (...,PRIMARY_KEY(system_id, timestamp)[)];)"

Jim*_*yer 6

你不小心在"PRIMARY KEY"而不是空格之间加了一个下划线.

你也可能不想要一个名为"timestamp"的字段,因为那也是一个Cassandra类型,所以可能称之为"ts"或其他东西.


Ria*_*iad 5

CREATE TABLE TEST(
        timestamp timestamp,
        system_id text,
        hostname text,
        cpu_pct float,
        memory_used bigint,
        PRIMARY KEY(system_id, timestamp)
    );
Run Code Online (Sandbox Code Playgroud)

请参阅CQL CREATE TABLE Doc

  • 这里的变化是'PRIMARY KEY'中的空格而不是下划线 (10认同)