Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.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
如何在CQL中使用JAVA创建表并插入json数据?_Java_Json_Cassandra_Cql - Fatal编程技术网

如何在CQL中使用JAVA创建表并插入json数据?

如何在CQL中使用JAVA创建表并插入json数据?,java,json,cassandra,cql,Java,Json,Cassandra,Cql,我是CQL的新学员。 我正在使用docker env运行Cassandra 在前面的示例中,我有两个表(餐厅和检查),其中插入了通过csv插入的数据,并且设置如下: 由于CQL中不支持join方法,因此我需要将连接的数据集(JSON)重新插入到新表中(调用InspectionRestarantny) 因此,我尝试创建InspectionrestaurantNY表: 然后,我有了jav,它帮助我安装json文件。 但是我得到了错误,我不知道应该创建什么表(Inspectionrestauran

我是CQL的新学员。 我正在使用docker env运行Cassandra

在前面的示例中,我有两个表(餐厅和检查),其中插入了通过
csv
插入的数据,并且设置如下:

由于CQL中不支持
join
方法,因此我需要将连接的数据集(JSON)重新插入到新表中(调用InspectionRestarantny)

因此,我尝试创建InspectionrestaurantNY表:

然后,我有了
jav
,它帮助我安装
json
文件。 但是我得到了错误,我不知道应该创建什么表(InspectionrestaurantNY)设置来插入
json
数据

我运行了
java-jar-JSonFile2Cassandra.jar-host 192.168.99.101-port 3000-keyspace restaurantsNY-columnFamily InspectionsRestaurantsNY-file InspectionsRestaurantsNY.json
,它显示了以下错误:

并且,我的
json
文件存储如下:

我应该首先建立什么表设置来插入JSON数据

如何解决JAVA错误


非常感谢。

问题是Cassandra在处理名称时区分大小写,您使用驼峰大小写
InspectionsRestaurantsNY
创建它,但您尝试将其插入小写
InspectionsRestaurantsNY


最好使用小写的名称,因为在使用cqlsh时,如果有大写字母,则需要将名称用双引号括起来。

在运行jar插入JSON时,似乎使用了错误的表名。您共享的命令是

java-jar-JSonFile2Cassandra.jar-host 192.168.99.101-port 3000 -keyspace restaurantsNY-columnFamily InspectionsRestaurantsNY-文件InspectionsRestaurantsNY.json

难道不是吗

java-jar-JSonFile2Cassandra.jar-host 192.168.99.101-port 3000 -keyspace restaurantsNY-columnFamily InspectionRestaurantSNY-文件InspectionRestaurantSNY.json

i、 e在上述命令中为-columnFamily参数使用正确的表名

另外,最好不要使用驼峰大小写约定,因为CQL标识符名称不区分大小写。如果你真的想要区分大小写的名字,那么你应该用双引号把名字括起来。如果不使用双引号,则Cassandra会将大小写混合的名称转换为小写。但在上面的问题中,我不认为这是错误的原因。我想这是因为列的姓氏不对

在这里查看混合案例名称

这是什么意思?java错误是由于InspectionsRestaurantsNY名称的驼峰大小写造成的?当我运行
desc inspectionsrestaurantny
desc InspectionsRestaurantsNY
时,也可以在CqlSHT中返回结果。java错误是因为执行插入的查询对表名使用小写字母,您如何指示您将使用按键空间
restaurantsNY
?如果在插入查询<代码> CurrutsNy。InspectionsRestaurantsNY < /Cord>中,请考虑粘贴实际代码或错误日志而不是图像。