暂无图片
_optim_peek_user_binds=false 是不是关闭绑定变量,每次都得硬解析sql?
我来答
分享
暂无图片 匿名用户
_optim_peek_user_binds=false 是不是关闭绑定变量,每次都得硬解析sql?

_optim_peek_user_binds=false 是不是关闭绑定变量,每次都得硬解析sql?

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
布衣
暂无图片

“_optim_peek_user_binds”,该参数默认为TRUE。这就意味着,第一次以变量的方式执行某类SQL时,会生成第一个执行计划,后续执行该类SQL语句,即使变量的传入值不同,但因变量窥视的作用,依然会沿用第一次SQL语句执行时生成的执行计划,这种特性非常适用于业务表数据分布比较均匀的场景,执行计划比较稳定。但对于数据分布严重倾斜的业务表,固定的执行计划,就有可能降低SQL的执行效率,引起前端响应时间变慢等。在极端情况下,会引发严重的性能问题。

当"_optim_peek_user_binds"参数设置为FALSE。即,将绑定变量窥视参数特性禁用。那么已经执行过的某类值的执行计划将不会发生变化,一旦传入某个新值时,优化器会自动根据被访问对象的统计、直方图等信息,产生它认为效率最高、成本最低的执行计划。也就是说,在特性关闭的情况下,该类SQL语句可能会产生更优的执行计划。

暂无图片 评论
暂无图片 有用 0
打赏 0
暂无图片
严少安
2022-11-09
👍‍
回答交流
Markdown


请输入正文
提交
相关推荐
怎么给SQL中的变量进行拼接?
回答 1
在SQL中,可以使用CONCAT()函数来拼接字符串。这个函数可以将多个字符串合并成一个字符串。以下是一些例子:1.拼接两个字符串:sqlSELECTCONCAT('Hello','','World!
多表关联查询分页优化问
回答 3
首先,那2,3点你可以做改善。其次。我还是不认可这个分页框架。在小的分页数下可能没有问题。在数据量大的情况下,很明显那个rn>xx 应该带入到里面去。我没有明白,这里多嵌套一层的意义。
求一个能判断YYYY-MM-DD HH24:MI:SS正则表达式
回答 6
已采纳
date类型都是统一根据nls变量或者工具设置的格式来显示的,如果显示成YYYYMMDD,则表示时分秒部分为00:00:00,工具自动省略了显示,并不是说这个值里就没有时分秒。如果想要过滤掉不含时分秒
sql有什么好用的编译器啊?有代码提示那种
回答 1
已采纳
1.MSSQLSERVER自己的查询分析器2.SQLPROGRAMMER3.SQLDEV
采用insert into tbl values(a1,a2),(a3,a4)...类似这样的插入,数据大了报错,但是一次插入数据太多,sql语句太长,会抱错 是哪个参数控制插入语句大小呢?
回答 1
你是写了多长的sql语句啊,我测试了下,我写很长很长都没报错!
sql ,执行报错:临时表空间不足,运行失败。给临时表空间加空间 ,结果临时表空间加到了2个T,才不报错。
回答 1
已采纳
得看看你的sql是怎么关联的,实际数据可能很小,结果sql连接或者嵌套弄出来的结果集比较大,然后排序跟分组就会用到很大的临时表空间
查询存在有85分以上成绩的课程Cno.
回答 1
sqlselectscofromteacher,score,coursewhereteacher.tnocourse.tnoandcourse.cnoscore.cnoandteacher.depar
Oracle里两段SQL有什么区别吗?
回答 4
已采纳
如果是分页的话,这两个分页sql都不对,至少要再套一层括号,你现在这两个sql相当于是取不排序的前150000行,对这个数据再进行排序,再取大于等于140000行。应该先orderby排完后,在外面取
请教大家个sql问题,如图表按照时间从小到大排序,如何去除相邻记录某个字段内容重复的记录。只保留第一次出现。(图打叉的就是需要删除的记录),最终想要的结果就是按照时间排序,"状态"列的内容为 通-断-通-断-通-断。
回答 2
selectfrom(selecttype,sampletime,status,de,delag(de,1,0)over(orderbytype,sampletime)asdifffrom(selec
不熟悉客户的业务流程和业务逻辑,能否做SQL语句优化?
回答 4
我倒是觉得,如果熟悉客户的业务流程和业务逻辑,那么在某些sql优化上,可以获得不一样的思路。比如有时候为了获取一个字段代码的翻译,去关联了一个超大表,但你如果熟悉业务的话,会知道这个字段代码翻译有在另