我们有一个int类型的cassandra列,int的这个值对应于一个enum的值,在查询时有没有办法将这个int列转换成enum字符串。
o4tp2gmn1#
不可能在cql本身中实现,但是java驱动程序通过使用 EnumOrdinalCodec 类(文档示例):
EnumOrdinalCodec
enum State {INIT, RUNNING, STOPPING, STOPPED} cluster.getConfiguration().getCodecRegistry() .register(new EnumOrdinalCodec<State>(State.class)); // schema: create table ordinal_example(id int PRIMARY KEY, state int) session.execute("insert into ordinal_example (id, state) values (1, ?)", State.INIT);
1条答案
按热度按时间o4tp2gmn1#
不可能在cql本身中实现,但是java驱动程序通过使用
EnumOrdinalCodec
类(文档示例):