java CQL驱动程序中的数据类型
有没有办法在CQL中使用短值和字节值?我已经定义了一个带有int字段的表,可以从中存储和读取短值和字节值,但是如果我试图在一个准备好的语句中绑定一个值,我会得到一个错误。我也试过各种各样的,但还是不走运。这是我得到的一个例外:java CQL驱动程序中的数据类型,java,cassandra,cql,cql3,cassandra-2.0,Java,Cassandra,Cql,Cql3,Cassandra 2.0,有没有办法在CQL中使用短值和字节值?我已经定义了一个带有int字段的表,可以从中存储和读取短值和字节值,但是如果我试图在一个准备好的语句中绑定一个值,我会得到一个错误。我也试过各种各样的,但还是不走运。这是我得到的一个例外: Invalid type for value 1 of CQL type varint, expecting class java.math.BigInteger but class java.lang.Byte provided 以下是表格定义: CREATE TAB
Invalid type for value 1 of CQL type varint, expecting class java.math.BigInteger but class java.lang.Byte provided
以下是表格定义:
CREATE TABLE "Timeline" (
"BucketID" varchar,
"CreationTime" timestamp,
"Attr01" varint,
"Attr02" bigint,
"Attr03" varint,
"Attr04" varint,
"Attr05" uuid,
"Message" text,
PRIMARY KEY (("BucketID", "Attr01"), "CreationTime", "Attr02", "Attr03", "Attr04", "Attr05")
) WITH COMPACT STORAGE AND CLUSTERING ORDER BY ("CreationTime" DESC);
有没有一种方法可以使用short/bytes,而不是总是强制转换/创建整数 这里是图表的链接
我也试过各种各样的,但还是不走运
我本以为varint
也应该起作用。但是我可以看到(在上面引用的链接中)varint
映射到biginger
,所以这里没有运气。在任何情况下,short
和基于CQL3整数的类型之间似乎不存在映射
但是,如果要存储字节,可以使用blob
CQL3类型
编辑20180727
CQL中的
smallint
现在映射到java.lang.Short
@aroth链接已修复。