在我的示例应用程序中,下面的代码片段工作得很好。
SELECT_CQL = "SELECT * FROM " + STREAM_NAME_IN_CASSANDRA + " WHERE '" + CONTEXT_ID_COLUMN + "'=?";
Connection connection = getConnection();
statement = connection.prepareStatement(SELECT_CQL);
statement.setString(1, "123");
resultSet = statement.executeQuery();但是,当我试图向where子句查询中添加另一个参数时,什么都不会返回!
SELECT_CQL = "SELECT * FROM " + STREAM_NAME_IN_CASSANDRA + " WHERE '" + CONTEXT_ID_COLUMN + "'=? AND '"+TIMESTAMP_COLUMN+"'=?";
Connection connection = getConnection();
statement = connection.prepareStatement(SELECT_CQL);
statement.setString(1, "123");
statement.setString(2, "1390996577514");
resultSet = statement.executeQuery();当我在cqlsh终端中尝试准确的查询时,它工作得很好。
发布于 2014-01-30 17:20:15
statement.setString(2, "1390996577514");再次检查TIMESTAMP_COLUMN的数据类型,并确保它是一个字符串。否则,需要使用适当的"set“方法。例如:
statement.setLong(2, 1390996577514L);https://stackoverflow.com/questions/21456548
复制相似问题