CQL查询中的语法错误] message =”行1:7输入'MATERIALIZED'([CREATE] MATERIALIZED)没有可行的选择 [英] Syntax error in CQL query] message="line 1:7 no viable alternative at input 'MATERIALIZED' ([CREATE] MATERIALIZED

查看:381
本文介绍了CQL查询中的语法错误] message =”行1:7输入'MATERIALIZED'([CREATE] MATERIALIZED)没有可行的选择的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

任何提示,为什么我会从该主题中得到错误。在下面,我粘贴了所有步骤来重现该错误。

Any clue why I am getting the error from the topic. Bellow I pasted all steps to reproduce the error.

我发现有人面临着相同的问题,我尝试了提出的解决方案,但确实遇到了同样的问题。

I found someone facing same issue and I try the solution proposed but I did get extactly the same issue.

我尝试按照 Cassandra中的材料化视图错误通过创建表all_orders并遵循@halfer解决方案,但出现了完全相同的错误消息。

I tried follow Materialised view error in Cassandra by creating table all_orders and following @halfer solution but I reached exactly same error message.

整个日志:

C:\Program Files\DataStax Community\apache-cassandra\bin>set JAVA_HOME=C:\Program Files\Java\jre1.8.0_171
C:\Program Files\DataStax Community\apache-cassandra\bin>cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 2.2.3 | CQL spec 3.3.1 | Native protocol v4]
Use HELP for help.
WARNING: pyreadline dependency missing.  Install to enable tab completion.
cqlsh> CREATE KEYSPACE IF NOT EXISTS sample WITH replication = {'class':'SimpleStrategy', 'replication_factor':1};
cqlsh> use sample;
cqlsh:sample> CREATE TABLE IF NOT EXISTS  sample.hotels (
          ...     id UUID,
          ...     name varchar,
          ...     address varchar,
          ...     state varchar,
          ...     zip varchar,
          ...     primary key(id)
          ... );
cqlsh:sample>
cqlsh:sample> CREATE TABLE IF NOT EXISTS  sample.hotels_by_letter (
          ...     first_letter varchar,
          ...     hotel_name varchar,
          ...     hotel_id UUID,
          ...     address varchar,
          ...     state varchar,
          ...     zip varchar,
          ...     primary key((first_letter), hotel_name, hotel_id)
          ... );
cqlsh:sample> CREATE MATERIALIZED VIEW sample.hotels_by_state AS
          ... SELECT id, name, address, state, zip FROM hotels
          ... WHERE state IS NOT NULL AND id IS NOT NULL AND name IS NOT NULL
          ... PRIMARY KEY ((state), id)
          ... WITH CLUSTERING ORDER BY (name DESC)
          ... ;
SyntaxException: <ErrorMessage code=2000 [Syntax error in CQL query] message="line 1:7 no viable alternative at input 'MATERIALIZED' ([CREATE] MATERIALIZED...)">

***已添加

我尝试过 https:// www中提供的确切示例.datastax.com / dev / blog / new-in-cassandra-3-0-materialized-views ,我遇到了同样的问题(证据如下)。

I tried the exact sample provided in https://www.datastax.com/dev/blog/new-in-cassandra-3-0-materialized-views and I got the same issue (evidence bellow).

cqlsh:sample> CREATE TABLE scores
          ... (
          ...   user TEXT,
          ...   game TEXT,
          ...   year INT,
          ...   month INT,
          ...   day INT,
          ...   score INT,
          ...   PRIMARY KEY (user, game, year, month, day)
          ... );
cqlsh:sample> CREATE MATERIALIZED VIEW alltimehigh AS
          ...        SELECT user FROM scores
          ...        WHERE game IS NOT NULL AND score IS NOT NULL AND user IS NOT NULL AND year IS NOT NULL AND month IS NOT NULL AND day IS NOT NULL
          ...        PRIMARY KEY (game, score, user, year, month, day)
          ...        WITH CLUSTERING ORDER BY (score desc);
SyntaxException: <ErrorMessage code=2000 [Syntax error in CQL query] message="line 1:7 no viable alternative at input 'MATERIALIZED' ([CREATE] MATERIALIZED...)">
cqlsh:sample>


推荐答案

我不认为这是Cassandra中的选项2.X。我以为这是3.X规范(我们跳到3.11,效果还不错)。

I didn't think this was an option in Cassandra 2.X. I thought this was a 3.X spec (we jumped to 3.11 and it worked just fine).

这篇关于CQL查询中的语法错误] message =”行1:7输入'MATERIALIZED'([CREATE] MATERIALIZED)没有可行的选择的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆