刚刚安装了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。
答案 0 :(得分:3)
Keyspace names are forced lower case when unquoted in CQL
在CQL中使用CREATE KEYSPACE "CaseBox"
或在节点中使用keyspace: 'casebox'
。
通常只使用snake_case
名称,因为您不会像往常一样被困。