我想从oracle数据库中提取记录。我有一个选择查询,其中有一个order by子句实现。现在,当我在蟾蜍上触发查询时,我以正确的顺序得到结果。即上午10点的记录顺序如同 记录1,记录2,记录3和10:05记录1,记录2,记录3.这就是我所需要的。选择JDBC查询不按顺序检索记录
现在,当我通过Java代码JDBC访问它时。我尝试迭代结果集,但是在上午10:05,我得到了像记录2,记录1,记录3那样的顺序。由于这个原因,当我将记录添加到数组列表时,顺序并没有被消除。 我不想在添加后对arraylist的记录进行排序。
有人可以让我知道为什么使用jdbc记录不会按照我们可以看到使用蟾蜍的顺序获取吗?
示例代码
try{
List<TestObjVO> testResults = new ArrayList<TestObjVO>();
double statusValue = 0;
//Connection code
pstmt = conn.prepareStatement(QUERY);
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
testObj = new TestObjVO();
String date = rs.getString(1);
String status = rs.getString(2);
String svc_nm= rs.getString(3);
if("SUCCESS".equalsIgnoreCase(status)){
statusValue = 1;
}else if("ERROR".equalsIgnoreCase(status)){
statusValue = -1;
}
testObj.setTime(date);
testObj.setStatus(statusValue);
testObj.setSvc_nm(svc_nm);
testResults.add(testObj);
}
SELECT查询
SELECT to_char(PROBING_DATE,'DD-MM-YYYY HH24:MI:SS') AS PROBING_DATE, STATUS, SERVICE_NAME FROM TABLE_NAME WHERE PROBING_DATE >= (sysdate-30/1440) ORDER BY PROBING_DATE,SERVICE_NAME
表
create table TABLE_NAME(
probing_date TIMESTAMP(6) not null,
status VARCHAR2(8) not null,
service_name VARCHAR2(128) not null
)
请添加您的代码 –
您可以为您的问题添加一些代码吗? –
向我们展示您的实际'SELECT'查询,包括'ORDER BY'子句和相关表的定义(作为'CREATE TABLE'语句) –