
正文
sqlserver查询执行时间长的sql,查询sql语句执行时间
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
怎么查看用户的SQL执行历史
对v$sqltext、v$sqlarea查看的是shared pool中的SQL,其时间索引是其解析历史,因为共享的问题这个查询可能并不能完整地反映出执行的历史。
可能查不到 2 原因可能是执行历史记录被删除了,或者是oracle未开启SQL执行历史记录功能。
在Oracle中,如果需要查看SQL执行历史,需要使用SQL跟踪功能。如果没有开启 SQL 跟踪功能,执行SQL的历史记录将无法被记录下来。
方法/步骤 首先先建一个查询的窗口中,选中数据库,点击新建查询。弹出了一个新建查询的窗口的界面中,输入需要执行的sql的语句。sql输入完成之后,选中需要的执行的sql的语句。然后进行点击菜单中的查询的按钮选项。
相关问答
Q1: 怎么查找一次执行时间最长的SQL
1、执行show processlist, 看Time列时间最长,并且state处于执行状态的SQL就可以找到慢查询。
2、可以看一下执行计划,里边很详细。在plsql里按住F5即是执行计划。
3、SQL 2000用户自定义函数 一。SQL Server 的三种自定义函数“自定义函数”是我们平常的说法,而“用户定义的函数”是 SQL Server 中书面的说法。SQL Server 2000 允许用户创建自定义函数,自定义函数可以有返回值。
4、关键字即可查看执行计划。这可以帮助找到 SQL 执行效率低下的原因,优化查询语句。slow_query_log 表记录了所有执行时间超过指定时间的 SQL 语句,可以通过查询此表来分析慢查询情况。
Q2: setrs=con.execute(sql)这条代码运行很慢
这个可能的原因有很多;首先,execute immediate v_sql语句需要硬解析,这是一个较为耗时的过程,而直接拿出来执行的语句,其查询分析树已经存在,所以只需要软解析。
STRSQL =“SELECT * FROM [表Sheet1 $]”设置rsexcel = db.Execute(STRSQL)设置RS =的Server.CreateObject(“ADODB.RECORDSET”)SQL =“SELECT * FROM [网友]”rs打开SQL中,康恩,1,3 N =实验项目。
我试了下中间那段没问题啊。不过我用的是ACE驱动,JET太老了,mdf也太老了说。还有一般情况下,rs用完后要close掉的。后半段没再试了。祝你好运了。
这种方法慢在每次循环都要重新建立连接,执行新的查询。不但因为建立连接费时,而且不利于查询优化器对查询进行优化。
看看表结构的索引吧,如果需要重新计算索引就会很慢。
sqlserver查询执行时间长的sql的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于查询sql语句执行时间、sqlserver查询执行时间长的sql的信息别忘了在本站进行查找喔。






