SQL Server 2005 引入重大開發平台升級,以下為開發人員最關鍵的十大特性:
- .NET Framework 主機 (CLR 整合)
- 使用 C#/VB.NET 撰寫預存程序、觸發器、使用者定義型別 (UDT)、使用者定義函數 (UDF)、彙總函數。
- 新增使用者定義類別與集合型別,豐富型別系統。
- 原生 XML 技術
xml 資料型別:儲存、索引 (主要/次要/路徑/屬性)、驗證 (XML Schema Collection)。
- XQuery/XPath 查詢、
.nodes()/.value()/.query()/.modify() 方法。
- FOR XML PATH/EXPLICIT 產生複雜 XML。
- ADO.NET 2.0
- MARS (Multiple Active Result Sets):單一連線並行多個作用中結果集。
- SQL 相依性通知 (
SqlDependency) 支援快取失效。
- 大量複製 (
SqlBulkCopy)、非同步執行、連線字串建構器。
- 強化安全性模型
- 使用者與物件分離 (Schema 概念),
CREATE SCHEMA、ALTER AUTHORIZATION。
- 細粒度權限 (GRANT/DENY/REVOKE 至欄位層級)。
- 系統表視圖化 (
sys.objects 等),隱藏實體系統表。
- T-SQL 增強
TRY...CATCH 錯誤處理、THROW (2012+)。
- 遞迴 CTE (
WITH ... AS (SELECT ... UNION ALL ...))。
- 關係運算子:
PIVOT/UNPIVOT、APPLY (CROSS/OUTER)、ROW_NUMBER/RANK/DENSE_RANK/NTILE。
- Service Broker (服務中介)
- 非同步、可靠、交易式訊息傳遞平台,支援分散式應用、排程、事件驅動架構。
- 隊列、對話、合約、訊息類型、路由。
- Notification Services (通知服務)
- 大規模、個人化、即時通知平台 (股票警示、新聞訂閱、物流追蹤)。
- 整合 Analysis Services、Management Studio。
- 原生 Web 服務 (HTTP Endpoints)
CREATE ENDPOINT ... FOR SOAP 直接暴露預存程序/UDF 為 Web Service。
- 支援 WSDL、WS-Security、Batching。
- Reporting Services (報表服務) 整合
- 報表伺服器、報表管理器、Report Builder、Visual Studio 2005 整合開發。
- 訂閱、快照、資料驅動訂閱、多格式匯出 (PDF/Excel/Word)。
- 全文搜尋增強
- 編目靈活性提升 (支援二進位文件、XML 欄位)。
- 查詢效能與擴展性大幅改善、新管理工具 (全文搜尋精靈/報表)。
遷移建議
- 評估現有擴充預存程序 (XP) 遷移至 CLR 預存程序 (更安全、型別安全、除錯容易)。
- 將應用層 XML 處理邏輯下推至資料庫
xml 型別方法。
- 啟用 MARS 減少連線池壓力。
- 採用 Schema 替代 dbo 擁有權鏈,簡化權限管理。
SQL Server 2005 奠定了現代 SQL Server 開發平台基石,後續版本持續在這十大支柱上演進深化。