cassandra - java.lang.NumberFormatException:用于输入String

时间:2013-08-13 17:28:31

标签: cassandra date-format

我有cassandra的另一个问题..我在.csv格式的Mysql中导出一个表并将其导入Cassandra.the Mysql表包含类型日期和时间的filds日期和时间。我在cassandra中将这些字段定义为varchar。所以当我导入.csv文件并执行以下查询时,它会显示一个错误: 我的疑问:

ResultSet rs = stmnt.ExecuteQuery("Select * from station info where IDstation = 1011 and IDinfo = 18412:);
while (rs.next) {
   System.out.println(rs1.getFloate(1) + "  " + 
                      rs1.getString(2) + "  " + 
                      rs1.getFloate(3) + " " + 
                      rs1.getString(4) + "  " + 
                      rs1.getInt(5) + "  " + 
                      rs1.getInt(6) + "  " + 
                      rs1.getString(7) + "  " + 
                      rs1.getFloate(8));
}

打印命令中的第7个字段是日期..

,错误是:

java.lang.NumberFormatException: For input String: "6/2/1962"
    at org.apache.cassandracql.jdbc.cassandraResultSet.getInt(CassandraResultSet.java:619)
    at org.apache.cassandracql.jdbc.cassandraResultSet.getInt(CassandraResultSet.java:590)

我无法理解它的含义......任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:1)

仔细阅读堆栈跟踪告诉你的内容

  

java.lang.NumberFormatException:对于输入字符串:“6/2/1962”       在org.apache.cassandracql.jdbc.cassandraResultSet。 getInt (CassandraResultSet.java:619)       在org.apache.cassandracql.jdbc.cassandraResultSet。 getInt (CassandraResultSet.java:590)

您遇到的错误是尝试将字符串检索为整数。

答案 1 :(得分:0)

确保日期列仅在第7个位置而不是其他任何位置。我建议您通过指定列名来改进查询。例如,

SELECT Col1, Col2... FROM Table

这可以避免混淆列顺序。