位置: 编程技术 - 正文

SQL Server Parameter Sniffing及其改进方法

编辑:rootadmin

推荐整理分享SQL Server Parameter Sniffing及其改进方法,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

SQL Server 在处理存储过程的时候,为了节省编译时间,是一次编译,多次重用。当第一次运行时代入值产生的执行计划,不适用后续代入的参数时,就产生了parameter sniffing问题。 create procedure Sniff1(@i int) as SELECT count(b.SalesOrderID),sum(p.weight) from [SaleSQL Server 在处理存储过程的时候,为了节省编译时间,是一次编译,多次重用。当第一次运行时代入值产生的执行计划,不适用后续代入的参数时,就产生了parameter sniffing问题。

Parameter Sniffing问题发生不频繁,只会发生在数据分布不均匀或者代入参数值不均匀的情况下。现在,我们就来探讨下如何解决这类问题。

1. 使用Exec() 方式运行动态SQL

exec Nosniff1 ;

exec Nosniff1 ;

从上述trace中可以看到,在执行查询语句之前,都有SP: CacheInsert事件,SQL Server做了动态编译,根据变量的值,都正确的预估了结果集,给出了不同的执行计划。

SQL Server Parameter Sniffing及其改进方法

2. 使用本地变量

exec Nosniff2 ;

exec Nosniff2 ;

如上一篇文章所述,使用本地变量,参数值在存储过程语句执行过程中得到,SQL Server在运行时不知道变量的值,会根据一个预估值进行编译,给出一个折中的执行计划。

3. 使用Query Hint,指定执行计划

在 SELECT、DELETE、UPDATE 和 MERGE 语句最后加上OPTION ( [ ,...n ] ),对执行计划进行指导。当数据库管理员知道问题所在时,可以通过hint引导SQL Server生成一个对所有变量都不太差的执行计划。

以上所述是小编给大家介绍的SQL Server Parameter Sniffing及其改进方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对积木网网站的支持!

sqlserver实现树形结构递归查询(无限极分类)的方法 SQLServer开始,我们可以直接通过CTE来支持递归查询,CTE即公用表表达式百度百科公用表表达式(CTE),是一个在查询中定义的临时命名结果集将在from

SQL Server Alwayson添加监听器失败的解决方法 一、错误描述1.群集服务未能使群集服务或应用程序Alwayson完全联机或脱机。一个或多个资源可能处于失败状态。这可能会影响群集服务或应用程序的

SqlServer将查询结果转换为XML和JSON 很久之前用到的,现在整理在这,里面一些代码来源于网上,不过有些bug已被我修改了。1.查询结果转XMLDECLARE@ParameterSQLNVARCHAR(MAX)='SELECT*FROMtable';DECLARE@SQ

标签: SQL Server Parameter Sniffing及其改进方法

本文链接地址:https://www.jiuchutong.com/biancheng/347063.html 转载请保留说明!

上一篇:用非动态SQL Server SQL语句来对动态查询进行执行(动态sql语句)

下一篇:sqlserver实现树形结构递归查询(无限极分类)的方法(sql树结构)

  • 服务费收入是什么
  • 并入房屋价值的土地是否交房产税?
  • 计提个税会计分录怎么做小规模
  • 存货报废进项是否要转出
  • 小规模纳税人出租
  • 税控盘费用抵扣
  • 用友u8如何计提折旧生成凭证
  • 银行存款没有期初余额的总账怎么填
  • 交易性金融资产公允价值变动计入
  • 事业单位其他应付款如何核销
  • 扣员工餐费需要缴纳个税吗
  • 应付职工薪酬的账务处理
  • 营改增后还要交企业所得税吗
  • 实收资本印花税税率多少
  • 旅游业要怎么进行差额征税处理
  • 待转销项税额结转分录
  • 金税盘密码忘记了打客服有用吗?
  • 财政部的监管职责范围不包括
  • 融资租赁与经营租赁的相同点
  • 进项税额忘了抵扣
  • 托收承付结算方式
  • 其他应收款怎么冲平
  • win11进入黑屏
  • rebootandselectproperbotdevice
  • 电脑玩游戏卡怎么弄
  • 跨境电商小规模与一般纳税人
  • 怎么看腾讯游戏
  • linux命令行怎么用
  • 苹果系统的声音
  • 公司收到供应商的律师函
  • 应交增值税减免税款包括什么
  • 固态硬盘最新接口
  • 合同权益转让 范本
  • symfony是最好的框架
  • 企业盈利结转本年利润分录
  • 所有非批扣和所有批扣是什么意思
  • php socket_create
  • delete select语句
  • 强大的图片预览软件
  • typescript tsconfig
  • 代销手续费的税率
  • 购买承兑的收益会计分录
  • 企业有代扣代缴个税义务
  • mongodb分区分片
  • 固定资产原值和净值的区别
  • mysql备份模式
  • 冲销上个月成本的会计分录
  • 金税四期介绍 王石
  • 所得税汇算清缴调整后要账务处理吗
  • 企业收入总额是营业额吗
  • 固定资产登记在三栏明细账可以吗
  • 酒店客房收入如何分配
  • 增值税专用发票的税率是多少啊
  • 企业外购的软件叫什么
  • 投资房地产的后续计量有哪几种模式
  • 最新版的电子发票没有章
  • 建筑服务红字发票需要填写备注吗
  • 非包销的视同买断的账务处理是?
  • 免税店为什么没有发票
  • 库存商品盘点流程
  • 明细分类账三栏式
  • 数据库时区与url连接设置的时区
  • sql %和_
  • window怎么升级系统
  • win7系统步骤
  • windows8出现蓝屏
  • 如何更改centos的语言
  • ktpcntr.exe
  • 360杀毒恢复区
  • vnc for linux
  • 电脑死机是什么问题
  • centos6.5升级到7.2
  • cocos2dx AudioEngine初体验,音效播放结束判断测试
  • cocos2dx-3.1.1 win8+eclipse+android开发 初学者容易迷惑的两个问题
  • unity ui图层
  • 如何使用开塞露排便
  • c语言node定义
  • 留抵退税再提速
  • 上海电子税务平台开票不含税怎么改成含税
  • 什么是增值税税率是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设