亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? microsoft sql server

?? 介紹了數(shù)據(jù)庫方面的基礎(chǔ)知識
??
字號:
作者:怡紅公子
日期:00-6-7 下午 03:35:04
[H1]Microsoft SQL Server 查詢處理器的內(nèi)部機(jī)制與結(jié)構(gòu)[/H1]


Hal Berenson 和 Kalen Delaney
2000 年 1 月
[HR]



[B]摘要:[/B]本文介紹了在客戶機(jī)上處理 Microsoft SQL Server 查詢的方式,各種客戶機(jī)與 SQL Server 的交互方式,以及 SQL Server 在處理客戶機(jī)程序的請求時需要完成的工作。
[H2]簡介[/H2]


Microsoft(R) SQL Server(TM) 內(nèi)部機(jī)制和結(jié)構(gòu)是一個非常大的主題,因此本文僅限于程序開發(fā)人員感興趣的問題,集中研究其他源中沒有徹底討論的問題。在討論 SQL Server 的結(jié)構(gòu)時,我們主要觀察客戶機(jī)的處理過程,研究不同的客戶機(jī)程序與 SQL Server 的交互方式,以及 SQL Server 如何處理客戶機(jī)的請求。還有一些討論 SQL Server 其他方面的信息源,特別是 Microsoft Press 出版的 [I]Inside SQL Server 7.0[/I],作者是 Ron Soukup 和 Kalen Delaney,這本書非常詳細(xì)地討論了 SQL Server 存儲引擎的內(nèi)部機(jī)制和處理方法,不過對查詢處理器的討論不夠深入。本文正填補(bǔ)了這個空白。


我們期望本文有助于讀者編寫出更好的應(yīng)用程序。通過本文,讀者會在提高程序性能方面得到新的啟發(fā),產(chǎn)生新的理解。
[H2]SQL Server 是一種客戶機(jī)/服務(wù)器系統(tǒng)[/H2]


多年來,SQL Server 一直被認(rèn)為是一種客戶機(jī)/服務(wù)器系統(tǒng)。事實上,Sybase DataServer(以此為基礎(chǔ)開發(fā)了原始的 SQL Server)正是第一個作為客戶機(jī)/服務(wù)器系統(tǒng)開發(fā)的商用關(guān)系數(shù)據(jù)庫系統(tǒng)。那這又說明了什么呢?這不只意味著 SQL Server 是一個雙層系統(tǒng)。從傳統(tǒng)上看,雙層系統(tǒng)意味著客戶機(jī)應(yīng)用程序運(yùn)行在一臺機(jī)器上,向另一臺計算機(jī)上的服務(wù)器發(fā)送請求。而對于 SQL Server,客戶機(jī)/服務(wù)器意味著 SQL Server 的[I]組成部分[/I],即客戶機(jī) API 部分,駐留在處理結(jié)構(gòu)中的遠(yuǎn)端,與服務(wù)器組件本身是分開的。


在典型的雙層模型中,客戶機(jī)程序部分駐留在臺式機(jī)上,具有大量客戶機(jī)應(yīng)用程序邏輯和業(yè)務(wù)邏輯,并且會直接向數(shù)據(jù)庫系統(tǒng)發(fā)出請求。然后,客戶機(jī)得到服務(wù)器響應(yīng)這些請求所返回的數(shù)據(jù)。


三層系統(tǒng)也采用了同樣的模型。多年以來,SQL Server 一直用在事務(wù)處理監(jiān)視系統(tǒng)中,例如 BEA 的 Tuxedo 以及 Compaq 的 ACMSxp,這些系統(tǒng)早在二、三十年前就采用了典型的三層模型。三層模型在今天基于 Web 的應(yīng)用系統(tǒng)中占據(jù)了支配地位,這類系統(tǒng)以 Microsoft 的 MTS 以及新的 COM+ 1.0 為代表。從 SQL Server 的角度看,三層解決方案中的客戶機(jī)程序是放在[I]中間[/I]層的。中間層直接與數(shù)據(jù)庫交互。實際的桌面,或瘦客戶機(jī)(Thin Client),使用其他機(jī)制并通常直接與中間層交互,而不是直接與數(shù)據(jù)庫系統(tǒng)交互。圖 1 描述了這種結(jié)構(gòu)。


[img]http://www.microsoft.com/china/msdn/library/techart/sqlquerproc1.gif[/img]


[B]圖 1. 三層系統(tǒng)模型[/B]
[H2]客戶機(jī)結(jié)構(gòu)[/H2]


從結(jié)構(gòu)的角度看,SQL Server 關(guān)系服務(wù)器組件本身并不真正關(guān)心客戶機(jī)程序運(yùn)行的位置。事實上,就 SQL Server 而言,即使在運(yùn)行 SQL Server 的同一臺機(jī)器上運(yùn)行應(yīng)用程序,仍然還是客戶機(jī)/服務(wù)器模型。服務(wù)器運(yùn)行一個單獨的多線程進(jìn)程,為來自客戶機(jī)的請求提供服務(wù),不管客戶機(jī)的位置在哪里。客戶機(jī)程序代碼本身是單獨的運(yùn)行在客戶機(jī)應(yīng)用程序內(nèi)部的 DLL,與 SQL Server 的實際接口是在客戶機(jī)和服務(wù)器之間對話的“表格數(shù)據(jù)流”(Tabular Data Stream, TDS) 協(xié)議。


一個常見的問題是“什么是 SQL Server 的本機(jī)接口呢?”很長時間以來,很多開發(fā)人員一直都不愿意使用 ODBC 這樣的接口,因為他們認(rèn)為由 Sybase 開發(fā)的客戶機(jī) API,也就是 DB-Library,是 SQL Server 的本機(jī)接口。實際上,SQL Server 關(guān)系服務(wù)器本身并沒有本機(jī) API,它的接口就是在客戶機(jī)和服務(wù)器之間的通信流協(xié)議 TDS。TDS 把客戶機(jī)發(fā)送給服務(wù)器的 SQL 語句封裝起來,也把服務(wù)器返回給客戶機(jī)的處理結(jié)果封裝起來。任何直接處理 TDS 的 API 都是 SQL Server 的[I]本機(jī)[/I]接口。


讓我們來看一下客戶機(jī)的組件,如圖 2 所示。客戶機(jī)結(jié)構(gòu)中的某些部分就不在這里討論了,因為它們不屬于 SQL Server 的范疇。但如果您在編寫應(yīng)用程序的話,就必須了解這些部分。大家知道得最多的應(yīng)該是各種對象模型,如果您正在編寫 ASP 或 Microsoft Visual Basic(R) 應(yīng)用程序,就需要通過 ADO 與數(shù)據(jù)庫系統(tǒng)交互,而不是直接調(diào)用底層的 API,例如 ODBC 或 OLE-DB。ADO 映射到 OLE-DB,而 RDO 映射到 ODBC。因此,作為這種最常用的編程模型的對象模型,并不是 SQL Server 客戶機(jī)結(jié)構(gòu)中的嚴(yán)格意義上的組件。此外,還有另外一些組件可以插接到 SQL Server 基礎(chǔ)結(jié)構(gòu)上面的這一層。OLE-DB 的“會話池服務(wù)提供程序 (Session Pooling Service Provider)”就是這種組件的一個例子。


[img]http://www.microsoft.com/china/msdn/library/techart/sqlquerproc2.gif[/img]


[B]圖 2. 客戶機(jī)結(jié)構(gòu)[/B]
[H2]客戶機(jī)接口[/H2]


SQL Server 有兩個接口可以認(rèn)為是 [I][/I]SQL Server[I][/I] 7.0 的本機(jī)接口,即 OLE-DB 和 ODBC。DB-Library 接口也是本機(jī)的,它與 TDS 通信,但是 DB-Library 使用的是 TDS 較老的版本,需要在服務(wù)器上進(jìn)行一些轉(zhuǎn)換。現(xiàn)有的 DB-Library 應(yīng)用程序仍然可以繼續(xù)與 SQL Server 7.0 協(xié)同使用,但是很多新的功能和性能提高等好處只能通過 ODBC 和 OLE DB 才能利用。更新 DB-Library 使其支持 SQL Server 7.0 的新能力,將會導(dǎo)致與現(xiàn)有應(yīng)用程序的很多不兼容性,因此需要修改應(yīng)用程序。ODBC 在五年之前就替代了 DB-Library,是新的 SQL Server 應(yīng)用程序更理想的 API,因此引入不兼容的 DB-Library 新版本并不明智。


從圖 2 可以看到,所有這些客戶機(jī) API 都有三個部分。最上面的部分實現(xiàn) API 的細(xì)節(jié),例如行集和游標(biāo)應(yīng)該是什么樣等等。TDS 格式化程序負(fù)責(zé)處理實際請求,例如 SQL 語句,并將其封裝成 TDS 消息包,發(fā)送給 SQL Server,獲得返回的結(jié)果,然后再把結(jié)果反饋到接口實現(xiàn)。


還有一些供所有提供程序使用的公共庫代碼。例如,BCP 設(shè)備就是 ODBC 和 OLE-DB 都可以調(diào)用的庫。DTC 也是這樣。第三個例子是 ODBC 規(guī)范的 SQL 語法,即帶有參數(shù)標(biāo)記的 CALL 語法,這些對于所有提供程序都是通用的。


除了我們在前面已經(jīng)提到的局限性,即 DB-Library 仍然只能使用 SQL Server 6.5 版,TDS 協(xié)議對于所有 API 都是相同的。ODBC 和 OLE-DB 在與 SQL Server 7.0 通信時使用 SQL Server 7.0 版,但也能夠與 6.5 或 6.0 服務(wù)器通信。另一個是 Net-Library,這是一個抽象層,客戶機(jī)和服務(wù)器都在此層上同網(wǎng)絡(luò)抽象接口通信,不必為 IPX 還是 TCP/IP 困擾。在這里我們將不討論 Net-Library 的工作細(xì)節(jié);只要知道它們的工作基本上是將來自的網(wǎng)絡(luò)通信底層的細(xì)節(jié)隱藏起來不讓軟件的其他部分看到就可以了。

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本大道综合伊人精品热热 | 久久久精品国产免大香伊| 国产成人亚洲综合a∨猫咪| 玉足女爽爽91| 337p粉嫩大胆色噜噜噜噜亚洲| 日本福利一区二区| 国产一区二区三区在线观看免费 | 亚洲私人黄色宅男| 欧美成人精品1314www| 欧美性视频一区二区三区| 国产iv一区二区三区| 日本中文字幕不卡| 亚洲一区二区三区不卡国产欧美| 中文字幕免费不卡| 337p粉嫩大胆噜噜噜噜噜91av| 欧美日韩国产系列| 一本到不卡免费一区二区| 成人免费视频免费观看| 国内精品免费**视频| 日韩主播视频在线| 亚洲一卡二卡三卡四卡| 亚洲欧美日韩综合aⅴ视频| 国产三级久久久| 久久久综合精品| 亚洲精品一区二区三区精华液| 在线成人午夜影院| 欧美色窝79yyyycom| 色先锋资源久久综合| 成人ar影院免费观看视频| 国产乱码精品一区二区三| 久久se这里有精品| 久久99久国产精品黄毛片色诱| 亚洲国产成人av好男人在线观看| 一区二区三区美女| 亚洲黄色片在线观看| 亚洲视频小说图片| 亚洲品质自拍视频网站| 中文字幕亚洲欧美在线不卡| 亚洲欧洲精品天堂一级| 国产精品免费久久| 国产精品热久久久久夜色精品三区 | 六月丁香婷婷久久| 九九九久久久精品| 国精品**一区二区三区在线蜜桃| 久久99精品久久只有精品| 久久国产三级精品| 国产一区视频在线看| 久久99国产乱子伦精品免费| 日韩和欧美一区二区三区| 亚洲国产精品麻豆| 日韩一区精品字幕| 久久激情综合网| 国产毛片精品视频| 成人免费视频一区二区| 色哟哟在线观看一区二区三区| 色婷婷香蕉在线一区二区| 色欧美日韩亚洲| 欧美日韩一区二区在线观看视频| 欧美顶级少妇做爰| 日韩欧美电影一二三| 久久久777精品电影网影网| 中文字幕一区三区| 一区二区三区四区不卡视频| 亚洲国产精品自拍| 美国一区二区三区在线播放| 国内精品伊人久久久久av一坑| 成人深夜视频在线观看| 91高清视频在线| 欧美哺乳videos| 欧美国产精品专区| 亚洲猫色日本管| 青青草视频一区| 国产精品69毛片高清亚洲| 日本高清成人免费播放| 7777女厕盗摄久久久| 国产清纯白嫩初高生在线观看91| 亚洲免费av网站| 精品一区二区三区久久久| 成人av免费在线观看| 欧美猛男男办公室激情| 久久这里只有精品6| 有坂深雪av一区二区精品| 蜜芽一区二区三区| 豆国产96在线|亚洲| 欧美日韩一区二区三区高清| 精品国产乱码久久久久久蜜臀| 有坂深雪av一区二区精品| 麻豆精品一二三| 欧美综合天天夜夜久久| 欧美电视剧免费全集观看| |精品福利一区二区三区| 蜜臀久久99精品久久久久久9| av电影天堂一区二区在线| 欧美一区二区三区四区在线观看| 国产喷白浆一区二区三区| 无码av免费一区二区三区试看 | 日韩欧美一级二级| 亚洲欧美一区二区久久 | 欧美日韩亚洲高清一区二区| 国产精品久久久久久一区二区三区 | 国产精品成人免费精品自在线观看| 日韩精品欧美精品| 91免费视频观看| 久久久久久99精品| 秋霞av亚洲一区二区三| 欧洲精品一区二区| 国产精品亲子伦对白| 黄色日韩网站视频| 欧美美女bb生活片| 一区二区三区精密机械公司| 粉嫩av一区二区三区粉嫩| 日韩欧美色电影| 午夜日韩在线电影| 99re热这里只有精品免费视频| 久久夜色精品国产噜噜av| 日韩av二区在线播放| 欧美日韩一区二区三区四区| 一区二区三区在线视频免费| 成人av资源下载| 国产精品欧美极品| 大桥未久av一区二区三区中文| 26uuu欧美日本| 久久精品国产精品亚洲精品| 日韩一级黄色片| 亚洲18影院在线观看| 欧美性猛交一区二区三区精品| 综合激情成人伊人| 白白色亚洲国产精品| 久久亚洲欧美国产精品乐播| 久久成人精品无人区| 日韩欧美的一区| 极品销魂美女一区二区三区| 日韩精品一区二区三区四区视频 | 中文字幕日本不卡| 成人免费av网站| 综合网在线视频| 91视视频在线直接观看在线看网页在线看 | 欧美bbbbb| 精品日韩在线观看| 狠狠狠色丁香婷婷综合久久五月| 精品久久久久99| 激情久久五月天| 欧美激情一区二区在线| 成人高清免费在线播放| 国产精品免费aⅴ片在线观看| 不卡的电影网站| 1024成人网| 精品视频在线免费| 青草av.久久免费一区| 日韩午夜激情视频| 激情综合五月天| 国产精品入口麻豆九色| 色综合天天综合网天天看片| 亚洲一区二区三区精品在线| 欧美日韩精品一二三区| 日韩精品亚洲专区| 久久男人中文字幕资源站| 成人黄色一级视频| 一区二区成人在线观看| 欧美丰满嫩嫩电影| 国产精品自在欧美一区| 国产精品久久久久久久久晋中| 在线国产电影不卡| 日本va欧美va精品| 久久久欧美精品sm网站| gogogo免费视频观看亚洲一| 亚洲mv在线观看| 精品久久久久久久久久久久久久久| 国产99久久久国产精品潘金 | 欧美女孩性生活视频| 精品综合久久久久久8888| 中文字幕一区二区5566日韩| 7777精品伊人久久久大香线蕉超级流畅 | 天堂午夜影视日韩欧美一区二区| 欧美电影免费观看高清完整版在线观看| 狠狠色狠狠色综合日日91app| 国产精品萝li| 欧美一区二区福利在线| 不卡一区在线观看| 日韩av电影一区| 中文字幕亚洲不卡| 日韩免费高清电影| www.欧美精品一二区| 日本午夜一本久久久综合| 日本一区二区久久| 欧美精品黑人性xxxx| 国产91高潮流白浆在线麻豆 | 日韩精品午夜视频| 国产精品欧美一区二区三区| 欧美精品三级在线观看| 丁香婷婷综合五月| 日本午夜精品视频在线观看| 亚洲视频在线一区观看| 欧美精品一区二区三区蜜桃 | 久久精品国产澳门| 亚洲精品国产一区二区三区四区在线| 日韩精品一区二区三区视频| 欧美性受极品xxxx喷水| 不卡一卡二卡三乱码免费网站| 理论片日本一区|