SQL Server Compact 3.5 的概觀
-----------------------------------------------------------------------------------------------
SQL Server Compact 3.5 是裝置應用程式的理想資料庫,因為其中提供:
- 輕量型作業 (是在處理序中執行的,且在裝置上只需要 2MB 安裝空間)。
- SQL Server 查詢程式設計功能的豐富子集。
- SQL Server 資料型別豐富而一致的子集。
- ADO.NET 和 OLE DB 的支援。
- 使用 .sdf 資料庫檔案的本機資料存放。
會特別介紹到這一篇主要由於最近同事有需要將SQL Server Compact的檔案轉到SQL Server中進行資料的匯整,所以與我討論是否有較合適的方式,本來想說可以透過SSIS(SQL Server Integration Services) 來進行匯入匯出(Import/Output),但可惜的是,SQL Server Compact只能當成目的端,無法變成來源端,也就是只能將資料匯入SQL Server Compact,但是無法匯出,如下圖。
後來我找到了一個好方法,在此分享給大家,我將個人的方法整理如下,再請參考。
1、透過SQL Server Management Studio連線到 SQL Server Compact。
1-1 請先安裝 SQL Server Compact 套件
Microsoft SQL Server Compact 4.0
http://www.microsoft.com/en-us/download/details.aspx?id=17876
Microsoft SQL Server Compact 3.5 Service Pack 2 for Windows Desktop
http://www.microsoft.com/en-us/download/details.aspx?id=5783
1-2 開啟 SQL Server Management Studio,在Server type的地方請選擇 [SQL Server Compact] ,然後Database file請輸入你存放 SDF (SQL Server Compact檔案的附檔名) 的檔案位置。
1-3 連線完成後,你就可以透過 SQL 語法存取此檔案。
由於內建的功能無法將SDF的檔案匯入到SQL Server中,所以我們要再安裝下列的套件,然後你就可以透過SQL Server Management Studio進行。
2、安裝整合套件
2-1 請下載並安裝下列的檔案。
SQL Compact data and schema script utility
http://exportsqlce.codeplex.com/releases/view/80551
2-2 安裝完成後,您再次啟動SQL Server Management Studio,你就可以看到可以透過此工具將檔案與資料轉成SQL的語法進行匯出了。
最後由於資料都是採取全部匯出的方式,所以有必須進行差異比對時,就必須在匯入後再進行處理即可,或許有其他更好的軟體或處理方式,希望大家也不吝分享了,謝謝。
參考連結:
使用 SQL Server Compact 3.5 資料庫 (裝置)
http://msdn.microsoft.com/zh-tw/library/aa983313(v=vs.90).aspx
SQL Compact data and schema script utility
http://exportsqlce.codeplex.com/
關鍵字:SQL Server、SQL Server Compact、SDF
大師,請教一下,手邊有別人的.NET程式讀取local 的.sdf 資料庫檔案,如果把.sdf資料檔轉入SQL Server,原本的.NET程式可以透過什麼方式設定後,直接改抓SQL Server上的資料嗎?
回覆刪除在.net程式的部份,你可以嘗試確認目前.net中的的連線字串,基本上會放在配置檔中,再將Data Source的位置改指回你的SQL Server即可。
刪除SQL Compact ConnectionString
https://www.connectionstrings.com/sql-server-compact/
SQL Server ConnectionString
https://www.connectionstrings.com/sql-server/