Sql Server Compact Edition No1.(環境安裝/升級)

posted @ 2009/7/1 10:36 | 閱讀數 : 1792 | 1 人收藏 我要推薦 | Add Comment | 訂閱

 

 

什麼是Sql Server Compact Edition(Sqlce)?其實Sqlce已經出現有一段時間了,在之前是Sql Server 2005 Mobile edition,後來改為Sql Server compact edition.
 
到目前最新的版本是Sqlce V3.5 SP1,以Visual Studio開發工具來說VS2005是直接支援了Sqlce V3.1,而VS2008則是直接支援Sqlce V3.5(請注意是沒有SP1的版本)。
 
 
有些離題了,今天要談的是compact edition在行動裝置上的使用。首先在VS2008一安裝好之後就有支援Sqlce 3.5,如果要升級到Sqlce 3.5 SP1,這時候要注意一下在VS2008 SP1中並沒有包含這個部分,可以參考之前整理的這篇文章[使用VS2008搭配sql compact 3.5 SP1要留意版本;在使用Sqlce 3.5 SP1時必須要另外下載、安裝,下載的位置可以到這邊Microsoft SQL Server Compact 3.5 Service Pack 1 for Windows Mobile,安裝好了之後,以我的電腦來說,會在C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\Devices的位置找到Sqlce 3.5 SP1要用的參考,組件版本是3.5.5692.0,如下圖]
在開發相關的應用程式時,要記得確認/更新一下Sqlce組件的參考。
 
        那麼等到程式開發完成之後,在行動裝置上也必須要安裝Sqlce的Runtime,而相關的cab位置就在C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\Devices資料夾中,在資料夾中會看到wce400、wce500、Client的資料夾,其中wce400跟wce500就是放Sqlce runtime的相關檔案,而Client資料夾裡面放的是如果你需要直接從裝置連線到MS Sql Server的話,那麼必須在安裝Client資料夾中的檔案。
 
        進到wce500(這邊以這個版本為例),你會看到很多資料夾,這邊就要依照你平台類型去選擇,以模擬器來說的話是ArmV4i這個資料夾,進到裡面之後也是會看到好多個檔案,一下子還真搞不懂到底是要幹啥用的。這邊做個簡單的說明,檔案部分大致可以歸類為三種
1.      sqlce.ppc.xxx / sqlce.phone.xxx
這個就是sqlce core,主要的runtime,一定要安裝才能順利運作
2.      sqlce.dev.xxx
這個是sql的工具,類似Management Studio工具的東西,不過跑在裝置上是簡單型的
3.      sqlce.repl.xxx
這是要用到覆寫相關的功能的話就必須要安裝
       
        Sqlce.dev工具安裝好之後就會在Mobile裝置上有像下圖的工具可以使用,直接點sdf檔案之後就可以叫出來了。
      
 
        這邊要特別提一下,Sqlce 3.5的資料庫檔案,如果你要打開來編輯內容或是操作等等,必須要使用VS2008或是Sql server 2008的工具,VS2005跟Sql server 2005的工具是沒有支援編輯sqlce 3.5的資料庫檔案的。
 
那麼如果有舊版本的資料庫檔案(例如3.1版本的),在sqlce 3.5的環境上,他會告訴你資料庫檔案的版本不符合,那麼要如何升級資料庫檔案呢?我們可以利用程式來升級,例如下面的方式(記得要加入相關的參考)
         Try
            Dim en AsNew SqlServerCe.SqlCeEngine("Data Source =" & GetAppPath() & "\Northwind.sdf")
            en.Upgrade()
        Catch ex As Exception
            ''錯誤處理
        EndTry
 
        接下來就是對資料庫的實際操作了,在裝置上對於sqlce的操作跟在桌上型的操作是相當類似的,所以大致上都能夠通用。要特別注意的部分就是資料庫的連線字串設定以及一些T-SQL的語法。

 

bauann@dotblog


回覆
目前沒有回應.
發表回覆






登入後使用進階評論

Please add 3 and 4 and type the answer here: