河南IT培訓:SQLSERVER2000T-SQL的運行之淺談
鄭州北大青鳥翔天信鴿校區(qū)是專業(yè)的計算機培訓機構(gòu),最好的河南IT培訓學校,今天我們給大家分享的是:淺談Sql server2000T-Sql的運行。
大家都知道,T-SQL(Trantsact-SQL)是微軟公司在SYBASE的基礎上發(fā)展起來的一種結(jié)構(gòu)化查詢語言,是應用程序和存儲過程與SQL SERVER通訊和訪問的工具。包涵了ANSI89和ANSI92標準。T-SQL不是一種標準的編程語言,它通過SQL SERVER的數(shù)據(jù)引擎來分析和運行,SQL SERVER是如何編譯和運行T-SQL語句呢?
SQL SERVER在處理任何T-SQL語句時都經(jīng)過下面三個步驟:
1、解析T-SQL語句
2、編譯T-SQL語句
3、執(zhí)行T-SQL語句
當一個T-SQL的批處理提交到SQL SERVER服務器,服務器回將這個T-SQL批處理作為一個整體進行分析,在優(yōu)化,編譯,在分步執(zhí)行。
1、 解析
所謂”解析”是指SQL SERVER命令解析模塊檢查T-SQL批處理語法的過程,如果沒有找到錯誤,命令解析器將源代碼細分為多個邏輯單元,比如:關(guān)鍵字,標識符以及運算符。然后命令解析器會構(gòu)建一個內(nèi)部結(jié)構(gòu),通過這個內(nèi)部結(jié)構(gòu)生成DDL操作或DDM操作所需要的詳細的步驟。如果該T-SQL批處理包涵一個查詢,那么這個內(nèi)部結(jié)構(gòu)被成為查詢樹(QUERY TREE),如果該T-SQL批處理是一個過程,那么這個內(nèi)部查詢被成為順序樹(SEQUENCE TREE)。
2、編譯
這一步主要是將順序樹(SEQUENCE TREE)生成為一個執(zhí)行規(guī)劃, 查詢優(yōu)化器(Query Optimizer)主要是對T-SQL語句所要檢索的資源進行評估,生成I/O的時間,過慮時間和其他邏輯處理的時間。然后查詢優(yōu)化器(Query Optimizer)是試圖利用一個最小資源的方案!
這個方案中還包括執(zhí)行是需要的任務列表(比如:安全檢查,約束檢查,觸發(fā)器檢查等等)。這個就被成為執(zhí)行規(guī)劃
3、執(zhí)行
執(zhí)行組件根據(jù)執(zhí)行規(guī)劃在高速緩存中運行并滯留,執(zhí)行規(guī)劃的不同步驟將被發(fā)送到關(guān)系引擎的不同組件進行處理:DML管理器,DDL管理器,存儲過程管理器,事務處理管理器和實用工具管理器。處理結(jié)果將以結(jié)果集的方式被收集合并返回調(diào)用者!
執(zhí)行規(guī)劃將在高速緩存中被保留一段時間,如果同一用戶或其他用戶發(fā)出類似請求的T-SQL批處理,關(guān)系數(shù)據(jù)引擎將會優(yōu)先在高速緩存中尋找匹配的執(zhí)行規(guī)劃。如果該執(zhí)行規(guī)劃存在就采用運行,如果不存在,SQL SERVER 就會解析并編譯這個T-SQL批處理!
如果SQL SERVER需要的內(nèi)存不夠,它會從內(nèi)存中刪除一些執(zhí)行規(guī)劃。SQL SERVER有一個很好的”老化”算法,它可以統(tǒng)計某個執(zhí)行規(guī)劃的使用時間和次數(shù)。如果內(nèi)存足夠的大,也可以無限的增加執(zhí)行規(guī)劃到內(nèi)存中。
以上是我們和大家分享的一些技術(shù)知識,想要了解更多有關(guān)數(shù)據(jù)庫知識,請查看:http://www.n7362.cn/jsjl/
本文由站河南北大青鳥校區(qū)整編而成,如需了解更多IT資訊類的文章、新聞、課程和學習技巧、就業(yè)案例、招生詳情等問題,可以對在線咨詢老師進行一對一問答!
推薦資訊
- 周一到周五那天精力最充沛?... 2012-10-13
- 鄭州北大青鳥學校到底怎么樣,求真... 2019-11-12
- 北大青鳥APTECH詩朗誦《在這里》... 2014-12-20
- 鄭州北大青鳥學子們的項目成果展... 2023-10-18
- 河南北大青鳥職業(yè)規(guī)劃李老師... 2012-10-13
熱點資訊
- 學習SQL數(shù)據(jù)庫有哪些方法?... 2018-09-07
- 河南IT培訓:SQLSERVER2000T-SQL的... 2018-09-07
- 使用access數(shù)據(jù)庫有哪些好處呢?... 2018-09-07
- 網(wǎng)站數(shù)據(jù)庫老是被入侵該怎么辦?... 2018-09-07
- 半小時讓你快速MySQL 入門... 2018-09-07