日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

在SQL Server 2008中SQL-DMO被SMO代替

系統(tǒng) 3281 0
最近想研究通過編程控制操作SQL Server。下載了一個(gè)工具叫 Sql Buddy 。但在使用的時(shí)候發(fā)生異常,經(jīng)查,是因?yàn)槲业臋C(jī)器上安裝的SQL Server Express 2008并沒有提供SQL-DMO組件庫。Google了一番,找到原因:
MSDN 上搜到 SQL-DMO 參考

后續(xù)版本的 Microsoft SQL Server 將刪除該功能。請避免在新的開發(fā)工作中使用該功能,并著手修改當(dāng)前還在使用該功能的應(yīng)用程序。
SQL Server 分布式管理對象 (SQL-DMO) 是封裝了 Microsoft SQL Server 數(shù)據(jù)庫管理和復(fù)制管理的對象所組成的集合。SQL-DMO 允許您對管理 SQL Server 的應(yīng)用程序進(jìn)行計(jì)劃。SQL-DMO 參考包含有關(guān)對象、集合、屬性、方法、事件、常量和示例程序的詳細(xì)信息。

SQL-DMO 已被 SQL Server 管理對象 (SMO) 取代。

于是又查閱了下 SMO的概述

SQL Server 管理對象 (SMO) 是針對 Microsoft SQL Server 的編程管理設(shè)計(jì)的對象。可以使用 SMO 生成自定義 SQL Server 管理應(yīng)用程序。盡管 SQL Server Management Studio 是用于管理 SQL Server 的使用廣泛的強(qiáng)大應(yīng)用程序,但有時(shí) SMO 應(yīng)用程序可能對您更為適用。

例如,可能需要簡化控制 SQL Server 管理任務(wù)的用戶應(yīng)用程序,以滿足新用戶的需要并且降低培訓(xùn)成本。您可能需要?jiǎng)?chuàng)建自定義 SQL Server 數(shù)據(jù)庫,或創(chuàng)建用于創(chuàng)建和監(jiān)控索引效率的應(yīng)用程序。還可以使用 SMO 應(yīng)用程序?qū)⒌谌接布蜍浖o縫納入數(shù)據(jù)庫管理應(yīng)用程序。

SMO 對象模型擴(kuò)展并取代了分布式管理對象 (SQL-DMO) 對象模型。與 SQL-DMO 相比,SMO 提高了性能、加強(qiáng)了控制,并且更易于使用。SMO 中包括大部分 SQL-DMO 功能,并且還有很多新類用于支持 SQL Server 中的新增功能。該對象模型直觀明了,并且盡量使用 SQL-DMO 術(shù)語,以幫助您進(jìn)行技能過渡。

由于 SMO 與 SQL Server 2000、SQL Server 2005 和 SQL Server 2008 兼容,您可以輕松管理多版本環(huán)境。

....

SMO 命名空間為 Microsoft.SqlServer.Management.Smo 。SMO 作為 Microsoft .NET Framework 程序集實(shí)現(xiàn)。這意味著使用 SMO 對象之前必須先安裝 Microsoft .NET Framework 版本 2.0 中的公共語言運(yùn)行時(shí)。SMO 程序集隨 SQL Server SDK 選件默認(rèn)安裝到全局程序集緩存 (GAC) 中。這些程序集位于 C:\Program Files\Microsoft SQL Server\100\SDK\Assemblies\ 中。有關(guān)詳細(xì)信息,請參閱 Visual Studio .NET Framework 文檔。

SMO 類包括兩個(gè)類別:實(shí)例類和實(shí)用工具類。

實(shí)例類

實(shí)例類表示 SQL Server 對象,如服務(wù)器、數(shù)據(jù)庫、表、觸發(fā)器和存儲過程。 ServerConnection 類用于與 SQL Server 實(shí)例建立連接,并且控制發(fā)送到它的命令的捕獲模式。

SMO 實(shí)例對象所構(gòu)成的層次結(jié)構(gòu)代表了數(shù)據(jù)庫服務(wù)器的層次結(jié)構(gòu)。頂部為 SQL Server 實(shí)例,其下為數(shù)據(jù)庫,再下面是表、列、觸發(fā)器等。如果存在一個(gè)父級對多個(gè)子級的關(guān)系(如某個(gè)表具有一個(gè)或多個(gè)列)是符合邏輯的,那么子級將由對象集合來表示。否則子級僅由對象來表示。

實(shí)用工具類

實(shí)用工具類是為執(zhí)行特定任務(wù)而顯式創(chuàng)建的一組對象。根據(jù)功能將它們劃分為不同的對象層次結(jié)構(gòu):

  • 傳輸類。用于向其他數(shù)據(jù)庫傳輸架構(gòu)和數(shù)據(jù)。
  • 備份和還原類。用于備份和還原數(shù)據(jù)庫。
  • 腳本程序類。用于創(chuàng)建腳本文件,以重新生成對象及其依賴關(guān)系。

...

SMO 對象模型取代了 SQL-DMO。SMO 支持 SQL Server 2000、SQL Server 2005 和 SQL Server 2008。它支持更多 SQL Server 管理任務(wù)并包含 SQL Server 中的許多新功能。SMO 設(shè)計(jì)用于提高效率和加強(qiáng)控制。

DMO 庫是一個(gè) COM 對象模型,而 SMO 作為 .NET Framework 程序集實(shí)現(xiàn)。COM 組件是一些庫,這些庫向應(yīng)用程序提供可重用的功能并且采用非托管應(yīng)用程序編程方式。.NET Framework 程序集提供可重用功能,供 .NET Framework 編寫托管代碼應(yīng)用程序。

向 .NET Framework 技術(shù)過渡的過程中,編寫應(yīng)用程序可采用部分托管代碼和部分非托管代碼。.NET Framework 支持與 COM 組件建立接口連接,這需要一個(gè)主互操作程序集。SQL-DMO 需要運(yùn)行時(shí)包裝,以便從基于 .NET Framework 的應(yīng)用程序進(jìn)行調(diào)用。

看樣,學(xué)習(xí)SQL Server的管理與控制,以后就全面研究SMO這個(gè)命名空間了。但是如果你想在SQL Server 2008中使用SQL-DMO,你可以下載 Microsoft SQL Server 2008 功能包 中的 Microsoft SQL Server 2005 向后兼容組件

另注: Sql Buddy 這個(gè)工具是開源的,用C#代碼編寫的。我決定使用SMO重寫 Sql Buddy 這個(gè)工具以符合潮流。由于我對SQL-DMO和SMO都不熟悉。這可能要花費(fèi)一段時(shí)間。

在SQL Server 2008中SQL-DMO被SMO代替


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 五常市| 芒康县| 新巴尔虎左旗| 吴川市| 隆尧县| 洛浦县| 应城市| 鄢陵县| 封开县| 五寨县| 龙胜| 静海县| 东兴市| 呼玛县| 米易县| 扬州市| 阿瓦提县| 醴陵市| 青海省| 平顶山市| 循化| 金平| 建昌县| 安陆市| 天长市| 海兴县| 克东县| 藁城市| 宁强县| 绥阳县| 会宁县| 莎车县| 玉溪市| 桂平市| 松原市| 灵武市| 遵义县| 徐水县| 仁布县| 当阳市| 松原市|