用戶定義類型和聚合
SQL Server 2005中的用戶定義類型并非對象的關系型擴展機制。它們是一種擴展數(shù)據(jù)庫標量類型系統(tǒng)的方法。標量類型系統(tǒng)包括列類型是SQL Server自帶的(像int, nvarchar, uniqueidentifier等)。使用用戶定義類型,你可以定義可用在列定義上的自己的類型,如,Create a user-defined type if your type really is an atomic value that is appropriate to be modeled as a column.
如果你需要定義自己的標量類型,你可用使用用戶定義類型。這些類型的例子包括在不同日歷中定制的日期/時間數(shù)據(jù)類型,貨幣類型。使用用戶定義類型,你可以創(chuàng)建一個單一的對象,把該類型的所有可用的行為開放出來,并且封裝或隱藏存在類型中的基礎數(shù)據(jù),需要訪問數(shù)據(jù)的每個人必須使用用戶定義類型編程接口。如果你能利用.NET Framework 中的函數(shù)(如國際化或日歷函數(shù)),這倒是另一個使用用戶定義類型的好理由。
這還有很多關于聚合的例子,包括執(zhí)行統(tǒng)計計算,如平均,方差等。如果需要的聚合函數(shù)不能直接由內(nèi)建的聚合函數(shù)而得,在SQL Server 2005中,有三種方法來執(zhí)行定制的聚合:
- 編寫用戶定義聚合
- 用CLR存儲過程來寫聚合
- 使用服務器端游標
SQL 管理對象(SMO)
SQL管理對象 (SMO)模型是SQL Server 2005的管理對象模型。SMO 在SQL Server管理對象模型上有顯著的設計和結構上的提升。它是一個簡單易用的,有著豐富的基于.NET Framework托管代碼的對象模型。SMO 是開發(fā)數(shù)據(jù)庫管理應用程序的主要的工具。SQL Server 管理工具集的每一個功能都可以用SMO來實現(xiàn)。
新的SMO對象模型和Microsoft Windows Management Instrumentation (WMI) APIs 替代了SQL-DMO,SMO比SQL-DMO更易使用。你依然可以使用SQL Server 2005 Beta 2中的SQL-DMO,但SQL-DMO 并不包含SQL Server 2005的特有的管理特性。
分析管理對象
分析管理對象 (AMO) 允許客戶端應用程序使用一個對象庫來訪問分析服務的管理命令和管理功能。該對象庫提供了對象級的校驗功能,而不是手工的生成分析服務命令的DDL腳本。應用程序通過AMO能夠連接到分析服務實例,且能直接操作其上的對象,或者在沒有連接的情況下創(chuàng)建對象,保持元數(shù)據(jù)供以后的部署。
4、改進的數(shù)據(jù)訪問和Web Services
在SQL Server 2005中,你可以開發(fā)數(shù)據(jù)庫層的XML Web services,把SQL Server 作為一個HTTP listener。這對那些以Web services為中心的應用程序提供了新型的數(shù)據(jù)訪問功能。在SQL Server 2005中,你可以使用HTTP直接訪問SQL Server,無需使用IIS這樣的中間層listener。SQL Server 開放了一個 Web service 接口, 可以執(zhí)行SQL語句和調(diào)用函數(shù)和過程,查詢結果可用XML格式返回,并且可以利用Visual Studio 的Web services 架構。
ADO.NET 2.0/ADOMD.NET
很多新的功能出現(xiàn)在下一個版本的ADO.NET中。從查詢改變通知到多活動結果集(MARS),ADO.NET使數(shù)據(jù)訪問和操作更加可伸縮和靈活。