0
我在java中使用sqlserver-jdbc驅動程序執行查詢,在返回結果集之前等待大約700s,但當我用navicat或SSMS執行此操作時,它只有50秒。任何人都有類似的問題,我不知道datebase,因爲我不知道datebase。爲什麼jdbc執行sqlserver過程需要10分鐘,但是navicat或ssms只有50s?
我在java中使用sqlserver-jdbc驅動程序執行查詢,在返回結果集之前等待大約700s,但當我用navicat或SSMS執行此操作時,它只有50秒。任何人都有類似的問題,我不知道datebase,因爲我不知道datebase。爲什麼jdbc執行sqlserver過程需要10分鐘,但是navicat或ssms只有50s?
使用該腳本,讓您的SP的高速緩存的執行計劃:
SELECT cp.objtype AS ObjectType,
OBJECT_NAME(st.objectid,st.dbid) AS ObjectName,
cp.usecounts AS ExecutionCount,
st.TEXT AS QueryText,
qp.query_plan AS QueryPlan
FROM sys.dm_exec_cached_plans AS cp
CROSS APPLY sys.dm_exec_query_plan(cp.plan_handle) AS qp
CROSS APPLY sys.dm_exec_sql_text(cp.plan_handle) AS st
WHERE objtype ='Proc' AND OBJECT_NAME(st.objectid,st.dbid) = '__YOUR_SP_NAME__';
我想這SSMS和SQLServer-JDBC驅動程序使用不同的緩存計劃。
我們需要一些更多的信息來幫助。向我們展示一些代碼,哪些查詢運行緩慢? – Carra