不匹配的输入')'期望CQL中的EOF

时间:2013-09-28 11:28:59

标签: cassandra cql cql3 cassandra-cli

创建了密钥空间并使用CQL但得到了错误

CREATE KEYSPACE demodb
           WITH strategy_class = 'org.apache.cassandra.locator.SimpleStrategy'
  ...          AND strategy_options:replication_factor='1';

cqlsh:demodb> CREATE TABLE users (
      ...                 user_name varchar,
      ...                 password varchar,
      ...                 gender varchar,
      ...                 session_token varchar,
      ...                 state varchar,
      ...                 birth_year bigint,
      ...                 PRIMARY KEY (user_name)
      ...               );
Bad Request: line 1:163 mismatched input ')' expecting EOF

为什么我得到这个错误,任何帮助,谢谢。

2 个答案:

答案 0 :(得分:4)

Cassandra 1.0具有CQL2,您的语句仅在CQL3中有效。您应该升级到1.2.10或2.0.1,因为1.0很旧并且不推荐使用CQL2。

答案 1 :(得分:-1)

有时,会出现错误,因为语法可能不正确。检查支架是否正确关闭。尝试将查询存储为字符串并打印。如果是正确的话,那么正如Richard所说,您可能对CQL的版本有疑问。否则,这只是语法错误,您必须仔细观察。