2013-04-02 115 views
1

我正在開發霍尼韋爾Dolphin 6100應用程序,這是一款使用Windows CE 5.0操作系統的條形碼掃描儀的移動計算機。如何從Excel文件加載數據到sql數據庫?

我想從excel文件導入數據到應用程序的本地數據庫。我下面這個tutoriel

的問題是,System.Data.OleDb無法找到從外部文件中讀取數據是非常重要的。

我需要做什麼?

注意:我使用VS2008和我的工作在Windows 7

+0

你有一個使用它的實踐:'使用System.Data.OleDb;?' – gordatron

+0

你在那個鏈接上發佈了這個人有'使用Excel = Microsoft.Office.Interop.Excel;'但是你只做這個需要'使用System.Data.OleDb;' – gordatron

+0

是的,我知道,但不幸的是相對線用紅線下劃線;他找不到圖書館(system.Data只有兩個孩子「common」和「sqlTypes」)。 –

回答

2

你有困難需要克服的木筏。只有幾個是

  • 在Windows CE下不支持OLEDB。
  • Pocket Excel中沒有自動化對象模型,甚至任何公佈的文件格式規範
  • 桌面庫(類似的Microsoft.Office.Interop.Excel)在Windows CE將無法工作

基本上我覺得你偏離了一條糟糕的選擇之路。

您試圖在此解決的實際業務問題是什麼?您是否有設備上創建的Pocket Excel文件需要合併到本地SQL Compact數據庫中?有沒有不使用Excel的選項?或者,您是否在PC上安裝了桌面Excel文件,並且想要在設備上存儲數據?如果是這樣,文件如何進入設備?你可以將它們轉換爲CSV嗎?你可以在某個服務器上放置一個服務來爲你做轉換嗎?

有可能是一種解決整體問題的方法,只是不在您嘗試的路徑上。不過,我們需要了解實際問題,以幫助您獲得更好的解決方案。

+0

我想使用excel文件來從中加載數據並將返回的數據插入到本地數據庫中以避免用戶從長長的手動輸入列表中(例如添加用戶列表)。是的,計劃中的excel文件將通過正常的轉讓(將機器連接到PC並將文件插入指定的文件夾)存儲在機器中。實際上,如果我可以將excel文件轉換爲.csv,但我不知道應該將此服務添加到服務器還是將其作爲應用程序的功能列表之一? –

+1

像這樣的任何工作都應該在具有庫和處理能力的地方完成,因此在服務器上也是如此。您甚至可以將數據推送到服務器上的SDF,並將SDF文件自己推送到設備,以便所有「導入」工作都已完成。爲什麼有一臺移動處理器在服務器可以更快更好地完成時速度慢且成本高昂的情況下工作。 – ctacke

+0

假設我將爲轉換操作構建一個應用程序,將Excel文件轉換爲.csv文件有一個簡單的方法嗎? –

0

一些選項:

  • 寫一次性的控制檯應用程序做進口。
  • 使用SQLserver管理工作室做一個Excel文件的導入
  • 使用微軟訪問,這將允許您打開Excel文件和數據庫並跨他們查詢兩者。

除非您需要讓CE應用程序始終能夠訪問excel文件,否則它不值得讓它正常工作。

相關問題