河南IT培训:SQLSERVER2000T-SQL的运行之浅谈
郑州北大青鸟翔天信鸽校区是专业的计算机培训机构,最好的河南IT培训学校,今天我们给大家分享的是:浅谈Sql server2000T-Sql的运行。
大家都知道,T-SQL(Trantsact-SQL)是微软公司在SYBASE的基础上发展起来的一种结构化查询语言,是应用程序和存储过程与SQL SERVER通讯和访问的工具。包涵了ANSI89和ANSI92标准。T-SQL不是一种标准的编程语言,它通过SQL SERVER的数据引擎来分析和运行,SQL SERVER是如何编译和运行T-SQL语句呢?
SQL SERVER在处理任何T-SQL语句时都经过下面三个步骤:
1、解析T-SQL语句
2、编译T-SQL语句
3、执行T-SQL语句
当一个T-SQL的批处理提交到SQL SERVER服务器,服务器回将这个T-SQL批处理作为一个整体进行分析,在优化,编译,在分步执行。
1、 解析
所谓”解析”是指SQL SERVER命令解析模块检查T-SQL批处理语法的过程,如果没有找到错误,命令解析器将源代码细分为多个逻辑单元,比如:关键字,标识符以及运算符。然后命令解析器会构建一个内部结构,通过这个内部结构生成DDL操作或DDM操作所需要的详细的步骤。如果该T-SQL批处理包涵一个查询,那么这个内部结构被成为查询树(QUERY TREE),如果该T-SQL批处理是一个过程,那么这个内部查询被成为顺序树(SEQUENCE TREE)。
2、编译
这一步主要是将顺序树(SEQUENCE TREE)生成为一个执行规划, 查询优化器(Query Optimizer)主要是对T-SQL语句所要检索的资源进行评估,生成I/O的时间,过虑时间和其他逻辑处理的时间。然后查询优化器(Query Optimizer)是试图利用一个最小资源的方案。
这个方案中还包括执行是需要的任务列表(比如:安全检查,约束检查,触发器检查等等)。这个就被成为执行规划
3、执行
执行组件根据执行规划在高速缓存中运行并滞留,执行规划的不同步骤将被发送到关系引擎的不同组件进行处理:DML管理器,DDL管理器,存储过程管理器,事务处理管理器和实用工具管理器。处理结果将以结果集的方式被收集合并返回调用者。
执行规划将在高速缓存中被保留一段时间,如果同一用户或其他用户发出类似请求的T-SQL批处理,关系数据引擎将会优先在高速缓存中寻找匹配的执行规划。如果该执行规划存在就采用运行,如果不存在,SQL SERVER 就会解析并编译这个T-SQL批处理。
如果SQL SERVER需要的内存不够,它会从内存中删除一些执行规划。SQL SERVER有一个很好的”老化”算法,它可以统计某个执行规划的使用时间和次数。如果内存足够的大,也可以无限的增加执行规划到内存中。
以上是我们和大家分享的一些技术知识,想要了解更多有关数据库知识,请查看:http://www.hnbenet.com/jsjl/
本文由站河南北大青鸟校区整编而成,如需了解更多IT资讯类的文章、新闻、课程和学习技巧、就业案例、招生详情等问题,可以对在线咨询老师进行一对一问答!
推荐资讯
- 高中生可以去学啥技术好呢?... 2024-04-22
- 大学生计算机暑期短训班,马上开... 2012-10-13
- 学完安卓技术有就业保障吗... 2014-05-04
- 北京高考分数线:文科一本565分,... 2014-06-23
- 初中毕业到现在还没有找到学校怎... 2014-08-23
热点资讯
- 学习SQL数据库有哪些方法?... 2018-09-07
- 河南IT培训:SQLSERVER2000T-SQL的... 2018-09-07
- 使用access数据库有哪些好处呢?... 2018-09-07
- 网站数据库老是被入侵该怎么办?... 2018-09-07
- 半小时让你快速MySQL 入门... 2018-09-07