2010年1月2日

SQL Server 2008 SSMS / SSMSE 可以連線到哪些版本的 SQL Server 執行個體?

先從底層架構說起吧!

SQL Server 2008 的 SSMS(SQL Server Management Studio)/SSMSE(SQL Server Management Studio Express) 是使用 .NET Framework Data Provider for SQL Server(簡稱 .NET Framework SqlClient)實作出來的產品,它會使用自己的通訊協定來與 SQL Server 進行通訊。由於它是輕量型的提供者,且效能很好,可以最佳化的方式直接存取 SQL Server,而不需再透過 OLE DB 或「開放式資料庫連接」(Open Database Connectivity,ODBC) 層。

圖片來源:.NET Framework 開發人員手冊

上圖是將 .NET Framework Data Provider for SQL Server 和 .NET Framework Data Provider for OLE DB 進行比較。由上圖可以看出左側的 .NET Framework Data Provider for SQL Server 則可對 Microsoft SQL Server 7.0(含)以後版本的資料進行存取。.NET Framework Data Provider for SQL Server  類別位於 System.Data.SqlClient 命名空間中。

至於圖中右邊的  .NET Framework Data Provider for OLE DB 需要透過下列兩個元件與 OLE DB 資料來源進行通訊:一為 OLE DB Service 元件(提供連接共用和交易服務),二為 OLE DB 提供者(提供資料來源)。如果要存取 SQL Server 6.5 及更早的版本,則必須使用 OLE DB provider for SQL Server 搭配 .NET Framework Data Provider for OLE DB。

所以現在大家應該知道 SQL Server 2008 SSMS/SSMSE  可以連線到哪些版本的 SQL Server 進行管理了吧!如果還是不知道?那就請看仔細嘍!

SQL Server 2008 SSMS/SSMSE  可以連線到 2008/2005/2000/7.0 版的 SQL Server。俗話說,有圖有真相,就請看下圖吧。

要提醒大家的是,使用 SQL Server 2008 SSMS/SSMSE 連線到非 2008 版的 SQL Server 就無法享用 IntelliSense 的功能。至於其他可能無法使用 IntelliSense 功能的情況,請參考官方文件:「當 IntelliSense 無法使用時 」。

沒有留言:

張貼留言