刚刚安装了Cassandra(3.11.1)和Datastax node.js驱动程序(3.3.0)。

创建了一个简单的结构:

CREATE KEYSPACE CaseBox
   WITH REPLICATION={
     'class': 'SimpleStrategy',
     'replication_factor': 1};
USE CaseBox;

CREATE TABLE Regions (
    regionId int,
    name varchar,
    PRIMARY KEY ((regionId))
);


尝试连接到键空间没有成功:

const client = new cassandra.Client({
  contactPoints: ['localhost'],
  keyspace: 'CaseBox'
});

await client.connect();


错误:Keyspace 'CaseBox' does not exist
如果我将所需的kayspace更改为system,它将起作用。
怎么了?请协助。

您可以找到我的完整Cassandra配置,CQL和js脚本here

最佳答案

Keyspace names are forced lower case when unquoted in CQL

在CQL中使用CREATE KEYSPACE "CaseBox"或在Node中使用keyspace: 'casebox'

通常只使用snake_case名称,因为您不会经常被困住。

09-17 04:38