因?yàn)锳ccess并不真正為高性能應(yīng)用程序服務(wù),所以一個(gè)希望有多個(gè)同時(shí)連接用戶的站點(diǎn)必須部署一個(gè)比Access更適合的數(shù)據(jù)源。本文將講述如何從Microsoft SQL Server(一種企業(yè)級(jí)RDMS)中獲取數(shù)據(jù)。
SQL Server完全版包括了三個(gè)部分。第一個(gè)是引擎,用于實(shí)際組織數(shù)據(jù)以及針對(duì)命令響應(yīng)進(jìn)行讀取和寫入操作。第二個(gè)是開發(fā)人員的工具軟件包,用于對(duì)數(shù)據(jù)庫進(jìn)行操作,例如Query Analyzer和Data Transformation Services。最后一個(gè)是用于管理數(shù)據(jù)的工具,包括備份程序和復(fù)制模式。
雖然完全版對(duì)大型企業(yè)來說有著不可估量的好處,但是很多開發(fā)人員并不需要整套工具。幸運(yùn)的是,Microsoft提供了一個(gè)SQL Server引擎的免費(fèi)版,叫做SQL Server Express(SSE)。盡管它具有一個(gè)使用T-SQL命令來導(dǎo)入模式和數(shù)據(jù)的命令行工具(osql.exe),但是它還不包含在SQL Server完全版中具有的豐富圖形化的工具。不過,可以方便地使用Visual Studio或者Visual Web Developer來使用SSE開發(fā)數(shù)據(jù)庫。SSE有一個(gè)限制,即只處理本地的連接(不可能在Web服務(wù)器之外的不同機(jī)器上運(yùn)行SSE)。對(duì)于具有某些嗜好的人以及學(xué)生的Web站點(diǎn)來說,SSE是一個(gè)非常適合的選擇??赡軙?huì)使用基于SQL Server 2000的MSDE,而SSE則基于SQL Server的Yukon版。
除非有另外特別的說明,這里所介紹的所有技術(shù)均可應(yīng)用于SQL Server的三種形式(完全版產(chǎn)品、SSE和MSDE),因此,通用術(shù)語SQL Server包含了這三種形式。
因?yàn)镾SE只是一個(gè)引擎而并沒有內(nèi)置的開發(fā)工具(到2004年),所以必須使用其他的工具來創(chuàng)建、修改或者填充數(shù)據(jù)庫。為此我們將要使用的主要工具是Visual Studio或者Visual Web Developer,其中提供了Database Explorer作為其界面的一部分。請(qǐng)注意Database Exporer可以更改本地?cái)?shù)據(jù)庫中的數(shù)據(jù)和模式,但是它只能更改遠(yuǎn)程數(shù)據(jù)庫中的數(shù)據(jù)(而不是結(jié)構(gòu))。在Visual Studio中,Database Explorer被稱為Server Explorer,因?yàn)樗艘恍┨幚矸菙?shù)據(jù)庫服務(wù)器的附加功能。我們還將在本書的開端簡單地使用osql.exe命令行工具來導(dǎo)入將在本書通篇使用的初始數(shù)據(jù)庫。修改數(shù)據(jù)庫結(jié)構(gòu)的第三種方式是打開Access,然后在SSE數(shù)據(jù)庫中鏈接一個(gè)外部表。
使用SQL Server需要熟悉一些詞匯。SQL Server安裝在一臺(tái)稱為服務(wù)器(server)的機(jī)器上,并且可以通過其機(jī)器名來引用。如果SQL Server與請(qǐng)求軟件位于同一臺(tái)機(jī)器上,那么這臺(tái)機(jī)器可以用(local)來引用。引擎可以在一臺(tái)機(jī)器上安裝多次,每一次安裝稱為一個(gè)實(shí)例(instance)。SSE安裝一個(gè)名為(local)/SQLExpress的實(shí)例。在一個(gè)實(shí)例內(nèi),可以創(chuàng)建數(shù)據(jù)庫(database)。數(shù)據(jù)庫有一些具有字段(field)和記錄(record)的表(table)。數(shù)據(jù)庫還有供數(shù)據(jù)使用者使用的一組表、字段和約束,稱為視圖(view)。存儲(chǔ)過程(stored procedures,SPROC)可以對(duì)數(shù)據(jù)執(zhí)行任務(wù)。一個(gè)SQL Server實(shí)例自動(dòng)安裝了一個(gè)用戶名為sa的賬戶,當(dāng)對(duì)用戶使用SQL Server認(rèn)證時(shí),這個(gè)賬戶具有對(duì)所有對(duì)象進(jìn)行所有動(dòng)作的權(quán)限。在使用Windows認(rèn)證(也稱為混合認(rèn)證)的時(shí)候,登錄進(jìn)Windows的用戶也同時(shí)登錄進(jìn)了SSE。
新聞熱點(diǎn)
疑難解答
圖片精選