【发布时间】:2018-07-12 15:42:07
【问题描述】:
我有以下型号
case class TagPartitionsInfo (
year:Int,
month:Int
)
case class TagPartitions(tag:String,
partition_info:Set[TagPartitionsInfo])
Cassandra 表中的数据存储方式如下:
tag | partition_info
------------+--------------------------------------------------
javascript | {{year: 2018, month: 1}, {year: 2018, month: 2}}
当我在表中插入数据时,出现以下错误
Value 1 of type class scala.collection.convert.Wrappers$SetWrapper does not correspond to any CQL3 type
向表中插入数据的代码是
def insertValues(tableName:String, model:TagPartitions):Insert = {
QueryBuilder.insertInto(tableName).value("tag",model.tag)
.value("partition_info",setAsJavaSet(model.partition_info))
.ifNotExists();
}
我做错了什么?在控制台中,我可以看到以下打印表明我的数据是正确的inserting in table partitions_of_a_tag with partition key List(tag) and values TagPartitions(testtag,Set(TagPartitionsInfo(2018,6)))
表架构是
CREATE TABLE codingjedi.partitions_of_a_tag (
tag text PRIMARY KEY,
partition_info set<frozen<tag_partitions>>
)
tag_partitions 是 UDT 类型
{
year bigint,
month bigint
);
【问题讨论】:
标签: cassandra datastax-java-driver