從Java程序查詢SQL-Server時,性能有問題。根據日誌,我發現查詢本身需要一段預計的時間。然而,呼叫resultset.next()
似乎需要相當的時間(約3秒)。java.sql.ResultSet.next()方法需要3秒才能獲取1條記錄
long nextBegin = System.currentTimeMillis();
if(!resultset.next()) {
break;
}
logger.info("next cost = "+(System.currentTimeMillis() - nextBegin));
有日誌:
[16-01-04 10:47:34] INFO SqlExecutor:356 - next cost = 3575
對這個問題的任何想法?謝謝〜
注意:設置fetchSize()
沒有解決此問題。正如在SQLServer中直接檢查的那樣,只有一行由該語句返回。
請提供您的查詢... – Devart
您是否在JDBC連接中使用了'selectMethod = direct'或'selectMethod = cursor'? – Jan
@Devart我真的很抱歉。但我不允許通過我工作的公司來分享。查詢是這樣的:「select column1,column2 from subquery inner join subquery where condition」。 – xurk