位置: 编程技术 - 正文

SQL参数化查询的另一个理由 命中执行计划(sql参数化是什么意思)

编辑:rootadmin
1概述 SQL语言的本质就是一串伪代码,表达的是做什么,而不是怎么做的意思。如其它语言一样,SQL语句需要编译之后才能运行,所以每一条SQL是需要通过编译器解释才能运行的(在这之间还要做SQL的优化)。而这些步骤都是需要运行成本,所以在数据库中有一个叫做执行计划的东西,编译器会将编译过后的SQL存入执行计划当中,当遇到同样的SQL时,就直接调用执行计划来执行,而不需要再次编译。 通过对上面执行计划的认识,为了提高数据库运行的效率,我们需要尽可能的命中执行计划,这样就可以节省运行时间。 2相关SQL 2.1查看当前数据库中所有的执行计划: 2.2删除执行计划 2.3测试脚本(创建员工表,并向其插入条数据)

3测试执行计划

3.1 先执行删除所有执行计划,然后执行SELECT * FROM Employee ,最后查看执行计划(2.1中的查看执行计划脚本)如下图

即SQL SERVER会为每一条SQL建立一个执行计划,并将它缓存起来

3.2 再运行一次SQL: SELECT * FROM Employee,并查看执行计划

可以看到这个计划的重用次数为2,即这个计划被重用了;

3.3 修改SQL:SELECT * FROM Employee(在SELECT后多加一个空格),执行并查看执行计划

结果又新添加一个执行计划,即SQL SERVER认为这是两个不同的SQL语句并分别建立了执行计划;

4重用执行计划——使用参数化查询方法

推荐整理分享SQL参数化查询的另一个理由 命中执行计划(sql参数化是什么意思),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sqlserver参数化查询,sql参数化是什么意思,参数化sql命令,sql 参数,sql参数化查询的原理,sql语句参数查询,sqlserver参数化查询,sqlserver参数化查询,内容如对您有帮助,希望把文章链接给更多的朋友!

4.1 未参数化SQL查看执行计划:

SQL参数化查询的另一个理由 命中执行计划(sql参数化是什么意思)

即当执行一个未参数化SQL时,SQL SERVER需要先将其转换成一个参数SQL并执行它。一共需要两执行计划

然后再执行下面的代码(查询的条件变了)查看执行计划

此时不需要再准备一个准备的SQL,但还是需要再产生一个执行计划,并缓存下来;

4.2 参数化SQL

输入参数并执行,然后查看执行计划:

只需要一个准备SQL,然后,输入不同的参数,并执行,再查看执行计划

重用执行计划,perfect...

5总结

总的来说,SQL语句在执行时,会生成执行计划并将它缓存起来,我们可以通过提高使用缓存中的执行计划次数,来减少数据库的压力。而使用参数化的SQL是一个很好的选择,参数化查询的作用不仅只有防止SQL注入,还可以提高缓存中执行计划使用次数。

SQL Server重温 事务 为什么使用事务当对多个表进行更新的时候,某条执行失败。为了保持数据的完整性,需要使用事务回滚。显示设置事务begintrybegintransactioninsertintoshiwu(a

sql 存储过程批量删除数据的语句 CreatePROCEDUREBatch_Delete@TableNamenvarchar(),--表名@FieldNamenvarchar(),--删除字段名@DelCharIndexIDnvarchar()asDECLARE@PointerPrevintDECLARE@PointerCurrintDECLARE@TIdNVARCHAR(),@

SQL处理多级分类,查询结果呈树形结构 这样处理的弊端是:如果数据量大,子分类很多,达到4级以上,这方法处理极端占用数据库连接池对性能影响很大。如果用SQL下面的CTE递归处理的话,

标签: sql参数化是什么意思

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

上一篇:每个分类取最新的几条的SQL实现代码(分类不同)

下一篇:SQL Server重温 事务(sql server如何重启)

  • 纳税人办理退税流程
  • 小规模纳税人劳务派遣差额征税税率
  • 玉米大量收购
  • 食堂费用没有发票可以税前扣除吗
  • 其他应收款属于应收账款吗
  • 进口商品仓库
  • 税务局多扣的一笔钱
  • 哪些会计科目需要结转
  • 外籍个人工资薪金汇出境
  • 罚款收入需要开票吗
  • 汇票的票据行为有贴现吗
  • 没有合同可以收违约金
  • 大额存款提前取一部分怎么计息
  • 存货在财务报表中存在的财务操纵
  • 民办幼儿园怎么给老师交五险一金
  • 网上勾选认证发票步骤
  • 建筑业预收账款如何缴税
  • 固定资产管理的三大原则
  • 异地建筑工程预缴企业所得税
  • 汽车配件税收分类
  • 供应商质量问题通知函范文
  • 事业单位固定资产处置流程
  • 金蝶的币别和汇率怎么取消
  • 消费税如何避税计算
  • 坏账准备和资产减值损失
  • 上个月多计提的工资怎么调整
  • 鸿蒙系统字体不太好看
  • 公司收到保险公司退保费怎么账务处理
  • php session_start
  • 开发产品转作经营性资产
  • nddeagnt.exe - nddeagnt是什么进程 有什么用
  • 自由职业者如何交五险一金
  • 期间损益结转都结转什么
  • 结转所得税费用到本年利润的会计分录
  • 【2023亲测可用】JS 获取电脑本地IP 和 电脑网络IP(外网IP|公网IP)
  • 雪花 (© TothGaborGyula/Getty Images Plus)
  • 已领待用物资
  • php sendmail
  • 税法规定个人收入超过3500元的超过部分应
  • php上级目录
  • GPT-4 免费体验方法
  • 损益类科目调整影响所得税吗为什么
  • 处置资产的账务处理
  • html/css/javascript
  • 任何单位和个人发现洗钱活动有权向什么举报
  • 一次性收取一年租金增值税怎么计算
  • 制造费用月末一般有余额吗
  • python中字符串转数字函数
  • 爬虫技术是做什么的
  • 电子发票可以作废吗?当月
  • 企业管理费用的分类
  • 对外支付代扣代缴税费
  • 发票收款人和复核人在哪儿政
  • 运费发票抵扣要求
  • 价内税与价外税的计算公式
  • 资产负债表其他应收款计算公式
  • 损益类科目借贷怎么记
  • 分支机构可不可以不建账合并到总机构?
  • 年末转出未交增值税借方余额怎么处理
  • 交车辆购置税需要什么材料
  • 支付水电费取得专用发票上注明税金0.68万元
  • 小规模印花税怎么报
  • 商业企业所有者的权益
  • 在windows中打开一个窗口后
  • linux怎么看历史记录
  • spools.exe - spools是什么进程 有何作用
  • mac 无线网
  • android开发环境配置
  • cocos creator3
  • 使用jQuery的ajax方法向服务器发出get和post请求的方法
  • unity il2cpp热更新
  • [android那些事] linux 下android源码编译(国内被墙方案)
  • javascript数学函数
  • node的express
  • jquery的筛选
  • 安卓开源项目叫什么
  • 全面解析白羊座o型血女
  • 江苏增值税发票代码
  • 组织创新包括哪些类型
  • 分支机构如何变更为独立纳税人?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设