Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java cqlsh看不到使用Astyanax创建的键空间_Java_Cassandra_Astyanax_Cqlsh - Fatal编程技术网

Java cqlsh看不到使用Astyanax创建的键空间

Java cqlsh看不到使用Astyanax创建的键空间,java,cassandra,astyanax,cqlsh,Java,Cassandra,Astyanax,Cqlsh,我将Cassandra 1.2.6与Astyanax一起使用。我使用Java创建了一个名为DummyKeyspace的键空间。我可以从cassandra cli访问该键空间,但不能从cqlsh访问该键空间。为什么? 以下是我的Java代码: public void createKeyspace(Cluster cluster,String KEYSPACE_NAME,String STRATEGY, String REPLICA_FACTOR) throws ConnectionExceptio

我将Cassandra 1.2.6与Astyanax一起使用。我使用Java创建了一个名为DummyKeyspace的键空间。我可以从
cassandra cli
访问该键空间,但不能从
cqlsh
访问该键空间。为什么?

以下是我的Java代码:

public void createKeyspace(Cluster cluster,String KEYSPACE_NAME,String STRATEGY, String REPLICA_FACTOR) throws ConnectionException
    {
        if(cluster.describeKeyspace(KEYSPACE_NAME) == null)
        {
            KeyspaceDefinition ksDef = cluster.makeKeyspaceDefinition();

            Map<String,String> stratOptions = new HashMap<String,String>();
            stratOptions.put("replication_factor", REPLICA_FACTOR);

            ksDef.setName(KEYSPACE_NAME)
                .setStrategyOptions(stratOptions)
                .setStrategyClass(STRATEGY);

            cluster.addKeyspace(ksDef);
            System.out.println("Keyspace " + KEYSPACE_NAME + " created and added to cluster.");
        }
        else
        {
            System.out.println("Keyspace " + KEYSPACE_NAME + " already existed.");
        }
    }

我为此创建了一张罚单()。也许目的是使用引号,但这是不直观的。您还可以将
-k
命令行参数用于cqlsh。

尝试将键空间括在引号内
“”

是否正确?当你使用“DummyKeyspace”的时候,你怎么会收到“twitter2”的坏请求?哦,对不起,我忘了更改那个部分。当我在公共场合共享代码段时,我通常不使用代码段的实际名称。这就是它存在的原因。已编辑。是的,这是我的代码,不是copypasta。
描述键空间的是什么output?多亏了你的评论,我意识到cql将键空间名称小写,因此我无法访问它。我尝试用小写字母创建键空间,结果成功了。然后查找大写解决方案,结果如下:
使用“DummyKeyspace”
cqlsh> USE DummyKeyspace;
Bad Request: Keyspace 'dummykeyspace' does not exist