SQL Server Everywhere (SSEv) 是 SQL Server Mobile 2005 (SSM) 的下一個版本,版本號碼為 3.1,而 SSM 的版本號碼是 3.0。從版本號碼的變化就可以看出,SSM 升級到 SSEv 功能基本不會有什麼變化。而名字從 Mobile 變成了 Everywhere,可以看出 SSEv 的變化主要是擴充了平台的適用性,當然也不可能超出微軟的範圍。
SSM 支援 Windows CE、Pocket PC、Smartphone 和 Tablet PC,而 SSEv 還增加了對 Desktop PC 的支援,再一次把移動資料庫推向一個新的高潮。
SSEv 支援案頭電腦又將意味著什麼呢?案頭不是已經有了 SQL Server Express (SSE) 和 MS Access 了嗎?
相對於 MSDE 來說,SSE 其實已經很不錯了,它不但功能增強了(例如對 XML 的支援),部署方面也方便了很多。有關 SSE 跟應用程式一起部署的知識請參考 Embedding SQL Server Express into Custom Applications。將 SSE 用來儲存智能用戶端的離線資料是個不錯的選擇。不過 SSE 對於大部分人來說,還是大了點。實現離線資料的緩衝,對資料庫的功能要求是比較低的。通常緩衝的都是一些參考資料,業務資料一般變化太大,不會在用戶端緩衝。而離線資料跟主要資料庫之間的資料同步,恰恰是智能用戶端最需要的。然而,SSEv 就可以很好地解決上述問題。
其實在 SSM 發布時,移動資料庫已經有向案頭電腦延伸的苗頭了。SSM 的上一個版本 SQL Server CE 2.0 (SSCE) 只支援 Pocket PC 和 Windows CE,SSM 增加了對 Smartphone 和 Tablet PC 的支援,另外支援在 SQL Server Management Studio (SSMS) 的環境下操作 SSM 的資料庫。也就是說,從 SSM 開始就支援在案頭電腦上對 SSM 資料庫進行編輯了。
SSEv 的使用跟 SSM 幾乎一摸一樣(反正我還沒有發現有什麼不同),資料庫檔案(*.sdf)的格式也相同。通過使用 System.Data.SqlServerCe 命名空間下面的類,可以實現 Remote Data Access (RDA) 和 Merge Replication,從而簡化了智能用戶端離線資料的同步。
關於 SSEv 用於智能用戶端的資料緩衝,可以參考 Steve.Lasker 在美國 Tech.ED 2006 講的兩節課的 ppt 和 demo。
Slides:
DEV351 Developing Local and Mobile Data Solutions with SQL Server Everywhere Edition
DEV343 Offline Data Synchronization and Caching with SQL Server Everywhere Edition
Demos:
Database Viewer
Synchronizing SQL Server Everywhere with Remote Data Access (RDA)
SqlCeResultSet, an updateable, scrollable cursor
(訊息來源)
另外,Steve.Lasker 還有一堂 Web Cast 跟他在 TechED 上的 DEV343 那節課內容幾乎一樣,大家有興趣的可以去聽聽,不過是英文的,呵呵...
Smart Client: Offline Data Synchronization and Caching for Smart Clients
(訊息來源)
最近在關注 SSEv,以後有時間會陸續報道它的訊息。對 SSEv 感興趣的朋友,可以到 Steve.Lasker 的 blog 逛逛,有很多範例程式碼和視頻下載。另外 SSEv Team Dev的 blog 也關注一下吧。
這裡還有 SSEv 的 FAQ:
Information about SQL Server Everywhere Edition (SSEv)
最後是 CTP 版的,目前只支援案頭電腦,不支援行動裝置。
Microsoft SQL Server 2005 Everywhere Edition CTP
SQL Server 2005 Everywhere Edition Community Technology Preview Books Online