gpt4 book ai didi

Java Cassandra 异常 timeuuid

转载 作者:行者123 更新时间:2023-11-30 06:13:41 24 4
gpt4 key购买 nike

在 java 中,插入 cassandra 时出现此错误,我还尝试了时间戳数据类型,

那么是发布日期类型,还是java代码?您能否建议更改代码

读取 csv 文件。

错误:

Exception in thread "main" com.datastax.driver.core.exceptions.InvalidQueryException: Invalid STRING constant (2012/11/11) for "fl_date" of type timeuuid

结构:fl_date时间uuid,

代码:

    System.out.println("Processing CSV file ...");
List<Flight> flightList = ProcessFlightsCSV.processFlights("flights_from_pg.csv");

for (Flight flight : flightList) {

System.out.println(flight);

Insert query = QueryBuilder.insertInto("flights")
.value("id", flight.getId())
.value("year", flight.getYear())
.value("fl_date", flight.getFlDate())
.value("airline_id", flight.getAirlineId())
.value("carrier", flight.getCarrier())
.value("fl_num", flight.getFlNum())
.value("origin_airport_id", flight.getOriginAirportId())
.value("origin", flight.getOrigin())
.value("origin_city_name", flight.getOriginCityName())
.value("origin_state_abr", flight.getOriginStateAbr())
.value("dest", flight.getDest())
.value("day_of_month", flight.getDayOfMonth())
.value("dest_city_name", flight.getDestCityName())
.value("dest_state_abr", flight.getDestStateAbr())
.value("dep_time", flight.getDepTime())
.value("arr_time", flight.getArrTime())
.value("distance", flight.getDistance())
;

session.execute(query.toString());
}
}
}

最佳答案

Cassandra 中没有直接方法可以将字符串日期时间转换为 TimeUUID。因此,您需要根据日期时间值创建 timeuuid。这是一个简单的例子:

    long fl_date_in_mili = // some code to get millisecond time from flight.getFlDate(); DO it yourself, As we don't know what kind of datatype it is.
...
...
UUID fl_date_time_uuid = UUIDs.endOf(fl_date_in_mili);
// or
UUID fl_date_time_uuid = UUIDs.startOf(fl_date_in_mili);

...
...
...
Insert query = QueryBuilder.insertInto("flights")
.value("id", flight.getId())
......
.value("fl_date", flDateTimeUUID)
.value("airline_id", flight.getAirlineId())
.....

这里我们使用:com.datastax.driver.core.utils.UUIDs;可以在 datastax cassandra 驱动程序中找到。

关于Java Cassandra 异常 timeuuid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49693300/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com