對于許多專(zhuān)業(yè)開(kāi)發(fā)人員而言,Visual Studio 2003 和 SQL Server 2000 無(wú)疑是為企業(yè)創(chuàng )建解決方案的極佳組合。然而,對于小規模應用程序,許多開(kāi)發(fā)人員更看重腳本語(yǔ)言的簡(jiǎn)單易用,而不是面向對象語(yǔ)言的健壯性和代碼重用優(yōu)勢。這些開(kāi)發(fā)人員通常使用 Visual Basic 6、傳統的 ASP 和 Microsoft Access 創(chuàng )建數據庫解決方案。這阻礙了 .NET 技術(shù)的推廣。即使提供免費版本的 SQL Server 和 MSDE,也不足以有效地替代 Microsoft Access。為了加快小規模應用程序接受 .NET SQL Server 技術(shù)的進(jìn)程,Microsoft 即將發(fā)布一個(gè)新的產(chǎn)品線(xiàn),稱(chēng)為 Express 套件。Express 套件被設計為具有可快速下載、相對便宜,而且容易學(xué)習的特性。如果 Express 套件能夠成功吸引目前采用腳本語(yǔ)言的廣大非企業(yè)開(kāi)發(fā)人員,它就可以顯著(zhù)地擴大整個(gè) .NET 市場(chǎng),并簡(jiǎn)化非企業(yè)開(kāi)發(fā)人員創(chuàng )建的解決方案向專(zhuān)業(yè)開(kāi)發(fā)人員管理的企業(yè)解決方案轉換的過(guò)程。本文首先介紹 Express 套件所包含的三個(gè)主要產(chǎn)品的社區技術(shù)預覽版:Visual Basic Express、Visual Web Developer Express 和 SQL Server Express。Express 套件的最終版本預期在下半年發(fā)布。 Express 套件介紹 Express 套件提供簡(jiǎn)化和低價(jià)版本的 Visual Basic .NET、C#、C++ 和 J#,它們可以為 .NET Framework 2.0 創(chuàng )建解決方案??梢詫?Express 套件看作是入門(mén)級的 Visual Studio 2005 版本。 Express 套件還有一個(gè)稱(chēng)為 Visual Web Developer Express 的 Web 開(kāi)發(fā)工具,通過(guò)這一工具,可以使用 Visual Basic .NET 或 C# 語(yǔ)言來(lái)創(chuàng )建 ASP.NET .0 解決方案。它與該套件的另一個(gè)成員 SQL Server Express 配合使用。SQL Server Express 與 SQL Server 有一定的關(guān)系,類(lèi)似于 MSDE 與 SQL Server 2000 之間的關(guān)系。SQL Server Express 是免費的,它提供 SQL Server 所提供的絕大部分技術(shù),但對您用它構建的解決方案的大小有些限制。您可以從網(wǎng)址是 http://lab.msdn.Microsoft.com/express 的 Express 套件站點(diǎn)開(kāi)始了解關(guān)于任何組件的詳細信息。 Express 套件滿(mǎn)足許多典型開(kāi)發(fā)環(huán)境的核心需要。開(kāi)發(fā)人員可以使用 Visual Basic Express 和其他 Express 套件來(lái)為他們的自身教育、小型商務(wù),甚至大型商務(wù)中的一個(gè)部門(mén)構建應用程序。因為這些解決方案是在 .NET Framework 的 2.0 版本上構建的,并且可能融入了 SQL Server 2005 技術(shù),所以如果有這樣的需求,它們很容易被企業(yè)開(kāi)發(fā)人員所采納。這種便于升級的能力為組織中的部門(mén)解決方案或個(gè)體小型商務(wù)解決方案增加了價(jià)值,促使其成為整個(gè)行業(yè)的縱向應用程序。 創(chuàng )建數據庫 SQL Server Express 自帶創(chuàng )建新數據庫的向導,但如果您使用的是 Visual Basic Express 或 Visual Web Developer Express,您可能更傾向于使用在這些環(huán)境中直接可用的數據庫創(chuàng )建向導。這兩個(gè)向導的操作不同,但默認操作都是在方便的位置存儲一個(gè)數據庫文件,以便應用程序創(chuàng )建該數據庫。 使用 Visual Basic Express 要在 Visual Basic Express 中新建一個(gè)數據庫,首先啟動(dòng)一個(gè)新項目或者打開(kāi)現有項目。右鍵單擊 Solution Explorer 中的項目名稱(chēng),選擇“Add | New Item”。在“Add New Item”對話(huà)框中選擇 Blank Database 模板??梢越邮苣J的數據庫名稱(chēng),也可以指定一個(gè)新名稱(chēng),然后單擊“Add”。該向導將通過(guò)提示信息提醒您,計算機需要安裝 SQL Server 版本 9 才能使數據庫文件正常工作。這個(gè)過(guò)程會(huì )在項目的根文件夾中添加一個(gè)擴展名為 .mdf 的新數據庫文件。 只有當您準備關(guān)閉項目時(shí),Visual Basic Express 項目文件夾才會(huì )提交。當您選擇關(guān)閉項目時(shí),Visual Basic Express 會(huì )詢(xún)問(wèn)您保存或放棄更改。對于新項目,選擇放棄更改會(huì )放棄整個(gè)項目,包括它的數據庫。對于現有項目,放棄更改就會(huì )放棄自上次保存項目文件以來(lái)的任何更改。對于每種情況,當這些更改中包含您希望保存的、由 Visual Basic Express 數據庫創(chuàng )建向導生成的數據庫文件時(shí),請確保保存所有更改。 ![]() 圖 1顯示 vsdvbe1 項目的 Save Project 對話(huà)框。后臺的 Solution Explorer 包含一個(gè)文件名為 vsdvbe1sse.mdf 的數據庫圖標。請注意,Save Project 對話(huà)框設置為將項目文件夾存儲在 C:\Articles 文件夾中。單擊該對話(huà)框中的“Save”將會(huì )在 C:\Articles 文件夾中添加一個(gè) vsdvbe1 文件夾。在 vsdvbe1 文件夾中有另外一個(gè)名稱(chēng)與之相同的文件夾,它將作為項目的根文件夾。vsdvbe1sse.mdf 文件就保存在這個(gè)二級嵌套的文件夾中。 采用Visual Web Developer Express 打開(kāi) Visual Web Developer Express 之后,通常為新項目啟動(dòng)一個(gè)新的 Web 站點(diǎn)。默認情況下,Visual Web Developer Express 將新 Web 站點(diǎn)文件夾建在 C:\WebSites 文件夾中。以這種方式打開(kāi)的新 Web 站點(diǎn)會(huì )包含一個(gè) Data 文件夾,項目的 Solution Explorer 將顯示該文件夾。要在 Data 文件夾中為當前項目新建一個(gè)數據庫,請右鍵單擊 Solution Explorer 中的該 Data 文件夾,選擇“Add | New Item”。在“Add New Item”對話(huà)框中,選擇 Database 模板,可以接受默認的數據庫名稱(chēng),也可以定義一個(gè)新名稱(chēng)。與 Visual Basic Express 不同,Visual Web Developer Express 會(huì )在您處理項目時(shí)保存項目文件夾及其內容。不需要單擊“Save Project”對話(huà)框中的“Save”來(lái)保存項目文件。 本文的示例 Visual Web Developer Express 項目名為 vsdvwde1,它在 C:\WebSites 中創(chuàng )建一個(gè)具有相同名稱(chēng)的文件夾。vsdvwde1 項目的示例數據庫文件名稱(chēng)為 vsdvwde1sse.mdf,保存在 vsdvwde1 Web 站點(diǎn)文件夾的 Data 文件夾中。實(shí)際上,Visual Web Developer Express 在 Data 文件夾中還創(chuàng )建了第二個(gè)文件,名為 vsdvwde1sse _log.ldf。這第二個(gè)文件保存數據庫文件的日志。Visual Basic Express 也為它新建的每個(gè)數據庫文件創(chuàng )建一個(gè)日志文件。 ![]() 圖 2 顯示 vsdvwde1 項目的 Solution Explorer。請注意 Data 文件夾中的數據庫文件,以及與該數據庫文件相關(guān)的日志文件。 創(chuàng )建和填充表 Visual Basic Express 和 Visual Web Developer Express 共享創(chuàng )建和填充表的通用圖形用戶(hù)界面。您可以從 Database Explorer 手動(dòng)創(chuàng )建、填充和編輯表的設計和值。在本文介紹的社區技術(shù)預覽版中,可以通過(guò)選擇 Visual Web Developer Express 中的 View | Database Explorer 或 Visual Basic Express 中的 View | Server Explorer 來(lái)打開(kāi) Database Explorer。 向 Database Explorer 添加一個(gè)連接 如果 Database Explorer 不包含您要向其添加表的數據庫連接,則必須添加一個(gè)到該數據庫的連接,以便 Database Explorer 有該數據庫的 Tables 圖標。右鍵單擊 Database Explorer 中的 Data Connections 來(lái)添加新的數據庫連接,并選擇“Add Connection”,打開(kāi)“Connection Properties”對話(huà)框。這個(gè)對話(huà)框與 Microsoft 在早期產(chǎn)品中為許多類(lèi)似任務(wù)提供的 Data Link Properties 對話(huà)框非常相似。 通過(guò)以下步驟指定到 vsdvwde1sse.mdf 數據庫文件的連接: 1. 在“Connection Properties”對話(huà)框的“Provider”視圖中,確認選擇了 .NET Framework Data Provider for SQL Server。 2. 切換回“Connection”視圖,以完成連接規范。 3. 在標記為 Select 的組合框中,選擇或鍵入一個(gè)服務(wù)器名稱(chēng)。如果您使用默認指定的實(shí)例,則可以指定 \SQLEXPRESS。如果計算機中的 SQL Server Express 是默認實(shí)例,而不是指定實(shí)例,則可以輸入 XPRESS。您也可以打開(kāi)組合框,選擇任意廣播其名稱(chēng)的 SQL Server 實(shí)例。 4. 除非您在安裝時(shí)更改 SQL Server Express 的默認身份驗證設置,否則選擇標題為“UseWindowsNT Integrated Security”的單選按鈕。當然,您需要以具有一定權限的用戶(hù)身份登錄到 Windows,從而在 SQL Server Express 數據庫中創(chuàng )建表。安裝 SQL Server Express 的計算機管理員自然具有這種權限。 5. 將數據庫指定為數據庫的 .mdf 文件的路徑和文件名。對于在 vsdvwde1 項目中創(chuàng )建的數據庫文件,路徑和文件定為 C:\WebSites\vsdvwde1\Data\vsdvwde1sse.mdf。您可以從標題為“Select or enter a database name”的單選按鈕下面的下拉框選擇此文件和路徑。另外,也可以使用對話(huà)框中的 Browse 按鈕導航至要連接的數據庫文件。單擊標題為“Attach a database file as a file name”的單選按鈕可以啟用該 Browse 按鈕。 當您按照這些步驟操作時(shí),會(huì )彈出 Connection Properties 對話(huà)框來(lái)設置到 vsdvwde1sse.mdf 文件的連接,如圖 3 所示。 ![]() 單擊“OK”將連接添加到 Database Explorer 中的 Data Connections 集合。請注意,您指定的是一個(gè)數據庫文件,而不是將數據庫文件附加到服務(wù)器實(shí)例的數據庫名稱(chēng)。SQL Server Express 數據庫文件類(lèi)似于 Jet .mdb 文件,因為您可以在運行時(shí)動(dòng)態(tài)連接它們,而文件不會(huì )始終由服務(wù)器實(shí)例管理。 創(chuàng )建表 要在數據庫中創(chuàng )建表,請首先展開(kāi) Database Explorer 中的 Data Connections,顯示出要在其中創(chuàng )建表的數據庫的連接。然后,右鍵單擊目標數據庫中的“Tables”,選擇“Add New Table”。這些操作會(huì )打開(kāi)一個(gè)選項卡式窗口,讓您以圖形方式指定表。該選項卡式窗口有兩個(gè)窗格。上面的窗格用于指定主要的列屬性,即列名稱(chēng)、數據類(lèi)型以及列是否允許空值。右鍵單擊上面窗格中任意表列的行,可以指定其他列功能,包括列是否作為主鍵或者列是否檢查約束。下面的窗格讓您細化和添加在上面窗格中為當前選定列指定的列屬性。例如,如果您在上面的窗格中為一列選擇 int 數據類(lèi)型或其他任何整數數據類(lèi)型,則可以在下面的窗格中為該列指定 Identity 屬性。 ![]() 圖 4 顯示用于設計聯(lián)系人數據表的選項卡式窗口。所有的基本列屬性都已指定。例如,所有列都有一個(gè)數據類(lèi)型,而且 ContactID 列還有一個(gè) Identity 屬性顯示在下面的窗格中。在頂部的窗格中,ContactID 列的右鍵單擊菜單有 Set Primary Key 選項。單擊此選項將該列作為表的主鍵。單擊“Standard”工具欄上的“Save”工具,將打開(kāi)一個(gè)對話(huà)框,在其中您可以接受默認的表名稱(chēng),也可以為該表指定一個(gè)自定義表名稱(chēng),例如 Contacts。上述步驟也適用于在 vsdvbe1sse.mdf 文件中創(chuàng )建 Contacts 表。 填充表 在向數據庫添加新表之后,您可以手動(dòng)在表中填充數據。對于要在其中添加表的數據庫,表名稱(chēng)會(huì )出現在 Tables 集合的 Database Explorer 中。右鍵單擊該表的名稱(chēng)(例如 Contacts),并選擇 Show Table Data。此選擇將打開(kāi)以該表的名稱(chēng)命名的選項卡式窗口。窗口中是列標頭,它含有空白行上方表中的列名稱(chēng)。這個(gè)最初的空白行在第一列左邊的邊界處含有一個(gè)星號。在鍵入一行列值后,星號會(huì )標記出新的最后一行,在其中可以鍵入其他行的列值。 ![]() 圖 5 顯示 vsdvwde1sse.mdf 數據庫中的 Contacts 表,它有兩行聯(lián)系人數據。vsdvbe1sse.mdf 數據庫中的 Contacts 表也有這兩行數據。 連接和使用數據庫 在本地計算機上創(chuàng )建數據庫,并在數據庫中填充對象和值之后,通常是要允許其他計算機的用戶(hù)連接到該數據庫。有兩種操作可以實(shí)現這個(gè)目標。首先,需要配置 SQL Server Express 實(shí)例以偵聽(tīng)對它的連接??梢允褂?Computer Manager(一個(gè)隨 SQL Server Express 安裝的圖形化工具)來(lái)配置 SQL Server Express 實(shí)例,以及使用命令行指令來(lái)管理 SQL Server Express。在配置 SQL Server Express 實(shí)例的連接性之后,通常以編程方式或圖形化方式連接到 SQL Server Express 數據庫以顯示數據或管理該數據庫。我將在下面兩小節中討論這兩個(gè)步驟。 配置網(wǎng)絡(luò )連接性 默認情況下,SQL Server Express 安裝在一臺計算機上,所以其他計算機無(wú)法連接上它。具體而言,SQL Server Express 不會(huì )自動(dòng)偵聽(tīng)來(lái)自其他計算機的連接。這是一個(gè)安全措施:如果不需要與另一臺計算機相連接,那么您的數據庫自身就不公開(kāi)以避免黑客的潛在攻擊。這種安全優(yōu)勢的負面影響是,如果您確實(shí)需要它,就不得不啟用連接性。對于 SQL Server Express 實(shí)例,在默認安裝下甚至連舊式客戶(hù)端(例如,本地 計算機中的 Visual Studio 2003)都不能連接。您可以通過(guò)啟用協(xié)議和啟動(dòng) SQLBrowser 服務(wù)來(lái)啟用到 SQL Server Express 實(shí)例的連接性。 首先,必須通過(guò) Computer Manager 啟用命名管道和 TCP/IP 協(xié)議。從 Windows Start 按鈕啟動(dòng) Computer Manager,方法是從“All Programs | Microsoft SQL Server”組選擇 SQL Computer Manager。連續展開(kāi)用于 SQLEXPRES 的 SServer Network Configuration 和協(xié)議。通過(guò)右鍵單擊用于 SQLEXPRESS 的協(xié)議中的 Np 和 TCP 項,選擇 Enable 項。必須重啟 SQL Server Express 實(shí)例才能使菜單選擇生效。您可以通過(guò) Computer Manager 中的 Services 實(shí)現這一點(diǎn),步驟如下: 1. 展開(kāi) Services。 2. 雙擊 SQL Server。 3. 在右側窗格中,右鍵單擊 SQLEXPRESS 條目。 4. 在右鍵單擊菜單中選擇“Restart”。 在啟用協(xié)議之后,需要啟動(dòng) SQLBrowser 服務(wù)??梢杂靡韵聝蓚€(gè)命令行指令來(lái)啟動(dòng)和停止此服務(wù)。每當重啟運行 SQL Server Express 實(shí)例的計算機時(shí),都需要重啟 SQLBrowser 服務(wù),但命名管道和 TCP/IP 協(xié)議的啟用狀態(tài)可以保持到您禁用它們?yōu)橹埂? net start sqlbrowser 在 Visual Basic Express 和 Visual Web Developer Express 中編程實(shí)現到數據庫的連接與采用 Visual Studio 2003 實(shí)現相同任務(wù)非常類(lèi)似。首先,實(shí)例化一個(gè) SqlConnection 實(shí)例,并對 ConnectionString 屬性賦值,指向要打開(kāi)的數據庫。然后調用 SqlConnection 實(shí)例的 Open 方法。當您不再需要該數據庫連接時(shí),應該調用 SqlConnection 實(shí)例的 Close 方法。 SQL Server Express 有一個(gè)特色是 XCopy 數據庫部署,它意味著(zhù)客戶(hù)端應用程序(例如 Visual Basic Express 項目)可以在運行時(shí)動(dòng)態(tài)附加數據庫文件,然后在應用程序關(guān)閉時(shí)釋放該數據庫文件。這與 SQL Server 的早期版本,甚至與 SQL Server 都有著(zhù)顯著(zhù)的不同,后兩者不斷管理它們的數據庫文件,不管客戶(hù)端應用程序是否需要它們。由于有了 XCopy 部署,您可以為 SQL Server Express 數據庫使用與其他 SQL Server 版本不同的連接字符串,甚至為其他版本的 SQL Server 使用這樣的連接字符串。 在 Express 套件客戶(hù)端應用程序中,通常用 AttachDBFileName 參數來(lái)為連接字符串指定數據庫文件名和路徑。Database 或 Initial Catalog 參數的使用是可選的。如果您在連接字符串中將 Database 和 Initial Catalog 參數與 AttachDBFileName 參數一起使用,則不必為該 Database 或 Initial Catalog 參數賦值。對于指向 vsdvbe1sse.mdf 數據庫文件的連接字符串,正確的 AttachDBFileName 參數值是 C:\Articles\vsdvbe1\vsdvbe1\ vsdvbe1sse.mdf。 SQL Server Express 也支持不斷附加數據庫,這對 SQL Server 來(lái)說(shuō)更典型。SQL Server Express 安裝過(guò)程將 master.mdf 數據庫文件附加到它安裝的實(shí)例上。您也可以使用 T-SQL 技術(shù)(例如 sp_attach_db 系統存儲過(guò)程)來(lái)附加任何數據庫文件,以不斷受 SQL Server Express 實(shí)例管理。當使用一個(gè)已附加的數據庫文件時(shí),請在連接字符串中使用 Database 或 Initial Catalog 參數來(lái)表示數據庫,而不使用 AttachDBFileName 參數。 下面的代碼摘錄演示了一種連接到 SQL Server Express 數據庫的方法。這段代碼適用于 Visual Basic Express,但同樣的方法也適用于 Visual Web Developer Express。該示例對 vsdvbe2 項目中的 Form1 上的 Button1 使用 Click 事件過(guò)程,以此連接到 vsdvbe1sse.mdf 數據庫文件。由于 Button2 的 Click 事件過(guò)程對 vsdvwde1sse.mdf 文件執行相同的任務(wù),所以應用程序使用 CNN 類(lèi)來(lái)允許重用兩個(gè) Click 事件過(guò)程需要的公共代碼。通過(guò)這種方式,我在項目中添加了對 System.Data 命名空間的引用,因為 Visual Basic Express 不會(huì )自動(dòng)添加該引用。另外,Form1 模塊包含一條 Imports 語(yǔ)句,以便 System.Data.SqlClient 命名空間簡(jiǎn)化引用 SqlClient 類(lèi)型(例如 System.Data.SqlClient 命名空間中的 SqlConnection 類(lèi))的語(yǔ)法。 對于表示 SqlConnection 實(shí)例的變量 (cnn1),CNN 類(lèi)包含兩個(gè)方法和一個(gè)公共聲明。用于變量聲明的 Public 關(guān)鍵字使得 cnn1 在 CNN 類(lèi)實(shí)例外可用。MakeCNN 方法為 cnn1 指定連接字符串,并返回 SqlConnection 類(lèi)實(shí)例。該方法帶有兩個(gè)參數:一個(gè)指定到數據庫文件的路徑,另一個(gè)是數據庫文件的名稱(chēng),包括其擴展名。 Public cnn1 As New SqlConnection Public Function OpenCnn( _ strPath= "C:\Articles\" & _ 以編程方式從遠程計算機打開(kāi)數據庫 以編程方式從另一臺計算機打開(kāi)和使用 SQL Server Express 數據庫基于并結合了本文前面介紹的技術(shù)。另外,此任務(wù)需要新元素 — 即,登錄到 SQL Server 實(shí)例(SQL Server Express 數據庫中的一個(gè)用戶(hù)帳戶(hù)),并且授予該用戶(hù)帳戶(hù)一個(gè)或多個(gè)數據庫訪(fǎng)問(wèn)權限。本文前面的所有演示和示例都隱式使用 Windows 管理員帳戶(hù)。本節顯式使用非 Windows 管理員帳戶(hù)的 Windows 帳戶(hù)。雖然您在 SQL Server Express 中既可以使用 Windows 帳戶(hù)也可以使用 SQL Server 帳戶(hù),但 Microsoft 明顯希望我們使用 Windows 帳戶(hù)。實(shí)際上,SQL Server Express 默認安裝時(shí)只有 Windows 身份驗證,它拒絕任何非 Windows 用戶(hù)的訪(fǎng)問(wèn)。 由于 SQL Server Express 的默認身份驗證,您至少需要創(chuàng )建一個(gè)域 Windows 帳戶(hù),以便來(lái)自遠程計算機的用戶(hù)可以使用該帳戶(hù)連接到運行 SQL Server Express 的計算機。您還需要為 SQL Server Express 實(shí)例授予 Windows 用戶(hù)登錄權限。接下來(lái),需要在數據庫中為您創(chuàng )建的登錄創(chuàng )建一個(gè)用戶(hù)。最后一步是分配權限,例如為與您的 Windows 用戶(hù)登錄相關(guān)的用戶(hù)帳戶(hù)分配對一張表的 SELECT 權限。在進(jìn)行完最后這步設置后,您就可以用您的 Windows 用戶(hù)帳戶(hù)登錄到遠程計算機。接下來(lái)就能夠以正常方式從遠程計算機的客戶(hù)端應用程序連接到運行 SQL Server Express 的計算機。 vsdvbe2 項目中的 Form1 包含帶有 Click 事件過(guò)程的 Button3、Button4 和 Button5,從而幫助您測試這些從遠程計算機連接到 SQL Server Express 數據庫的指南。Click 事件過(guò)程假設有一個(gè)名為 vsd1 的 Windows 帳戶(hù)。 Button3 的 Click 事件過(guò)程設置為允許 vsd1 Windows 用戶(hù)打開(kāi) vsdvbe1sse.mdf 數據庫中的 Contacts 表。 Button4 的 Click 事件過(guò)程刪除 vsd1 在 vsdvbe1sse.mdf 數據庫中的數據庫用戶(hù)帳戶(hù),但該過(guò)程保留 vsd1 登錄到 SQL Server Express 實(shí)例的權限。Button5的 Click 事件過(guò)程禁用 vsd1 Windows 帳戶(hù)登錄到 SQL Server Express 實(shí)例的權限。 Button3 的 Click 事件過(guò)程有兩個(gè)部分。第一部分授予 vsd1 登錄到本地 SQL Server Express 實(shí)例的權限。第一部分通過(guò) master.mdf 數據庫上下文執行。請注意,連接字符串語(yǔ)法與前面使用的連接字符串略有不同。master.mdf 數據庫是不斷附加的,因此可以由 Database 參數引用,該參數在引用數據庫時(shí)不需要數據庫文件擴展名(使用 master 而不是 master.mdf)。 另外,在連接字符串中不需要使用 AttachDBFileName 參數。您可以通過(guò)調用 sp_grantlogin 系統存儲過(guò)程來(lái)為 SQL Server Express 實(shí)例分配 Windows 用戶(hù)帳戶(hù)登錄權限。該系統存儲過(guò)程需要一個(gè) Windows 帳戶(hù)名作為它的參數。該 Windows 帳戶(hù)名有兩個(gè)部分,它們之間以反斜杠 (\) 分隔。第一部分是域服務(wù)器名,第二部分是 Windows 帳戶(hù)名。 在下面的代碼中,cab233a 作為域名,vsd1 作為 Windows 帳戶(hù)名。這段代碼摘錄使用 SqlCommand 類(lèi)實(shí)例 (cmd1) 來(lái)包含該系統存儲過(guò)程。SqlCommand 對象的 ExecuteNonQuery 方法運行該系統存儲過(guò)程。 strPath= "Data Source = .\sqlexpress;" & _ strPath= "C:\Articles\" & _ 我從兩臺遠程計算機,用三個(gè)不同的客戶(hù)端應用程序(即 Visual Studio、Visual Studio 2003 和 Access)測試了這些過(guò)程。在運行 Button3 的 Click 事件過(guò)程之后,就可以從遠程計算機上運行的這三個(gè)應用程序看到 vsdvbe1sse.mdf 數據庫的 Contacts 表中的數據。 ![]() 圖 6 顯示 Visual Studio 客戶(hù)端應用程序中的 Contacts 數據。您可以在 Visual Studio 中用在 Visual Basic Express 中顯示表中數據的相同步驟來(lái)顯示表中的數據。這些步驟包括右鍵單擊 Database Explorer 中的表名稱(chēng),然后選擇 Show Table Data 項。 ![]() 圖 7 顯示來(lái)自 Access 項目的相同數據。這類(lèi)項目使用 OLE DB(而不是 .NET 數據訪(fǎng)問(wèn)技術(shù))來(lái)連接到 SQL Server Express 數據庫。從 Access 連接到 SQL Server Express 數據庫的方式與從早期 SQL Server 版本連接到任何數據庫的方式相同。在連接到數據庫之后,Contacts 表作為一個(gè)表出現在 Access Database 窗口中。雙擊 Database 窗口中的表名稱(chēng)將打開(kāi)表中的數據,如圖 7 所示。 小結 Express 套件以 Visual Studio 開(kāi)發(fā)人員所熟悉的格式提供大量數據庫功能。它提供一種學(xué)習 Visual Studio/SQL Server 技術(shù)的低成本且便利的方式。即使 Express 套件官方發(fā)布之后,其組件也將提供一種成本相對較低的方式來(lái)在整個(gè)組織中推廣 .NET 和 SQL Server 技術(shù)。此策略的一個(gè)優(yōu)點(diǎn)是可以輕松地將部門(mén)解決方案遷移到企業(yè)解決方案。另外,您將發(fā)現 Express 套件應用程序很適合執行您組織以前采用 Visual Studio 執行的一些應用程序,從而節省一些成本。 |
聯(lián)系客服