2011-06-02 133 views
6

我有一個MS Access mdb文件。我需要將其轉換爲CSV文件。我該怎麼做?請不要將我指向任何免費軟件。將MDB轉換爲CSV

在此先感謝

+7

沒有免費的!那麼,你想要購物推薦? – pavium 2011-06-02 07:42:03

+0

@ pavium ..我需要一段代碼來自己轉換它。 – Rajdeep 2011-06-02 07:51:39

+0

你可以在這裏找到另一個版本的VBA代碼將錶轉儲爲CSV文件:http://stackoverflow.com/questions/6470469/how-fast-is-sqlite-compared-to-microsoft-access-mdb/6471310#6471310 – HansUp 2011-09-30 16:41:31

回答

4

暫時無免費的,因爲你的要求,我可以給你推薦光譜核心的Full Convert Enterprise

我過去也成功地使用過它。

更新:

既然你澄清,你需要一個編程解決方案,我不建議你做手工:

  1. 打開的MDB通過ADO.NET文件的連接。
  2. 迭代所有表。
  3. 爲每個表格創建一個文本文件(CSV)。
  4. 對於每個表,迭代所有行。
  5. 對於每一行,在文本文件中寫入一個新行。
  6. 對於每一行,迭代所有列。
  7. 對於每列,將值寫入當前行中的文本文件。
+0

@Keim ...我的意思是說,我想要代碼將做轉換。我不需要任何工具來做到這一點。任何人都可以幫助我嗎? – Rajdeep 2011-06-02 07:48:39

+0

Thankx Keim ...我做到了。但現在我陷入了一種全新的狀況。現在我必須從該CSV文件讀取並將其轉換爲MDB文件。有關於此的任何幫助? – Rajdeep 2011-06-03 06:19:25

+0

@Rajdeep嘗試發佈新問題和/或在互聯網上搜索解決方案。 – 2011-06-03 06:20:19

3

用VBA

Dim db As DAO.Database 
Dim tdf As TableDef 

Set db = CurrentDb 

For Each tdf In db.TableDefs 
    If Left(tdf.Name, 4) <> "MSys" Then 
     DoCmd.TransferText acExportDelim, , tdf.Name, tdf.Name & ".csv" 
    End If 
Next 

- http://msdn.microsoft.com/en-us/library/aa220768%28v=office.11%29.aspx

+0

+1其實我更喜歡我的版本,但承認我有偏見。 :-)但是,我仍然認爲跳過將「〜」表格轉儲爲CSV並將字段名稱包含在CSV文件中會很有用。 – HansUp 2011-09-30 16:47:31

+0

@HansUp這是一個古怪的問題,扔掉答案:)我沒有任何「〜」表,我從來沒有。你的意思是疑問? – Fionnuala 2011-09-30 17:48:53

+0

不,我的意思是桌子。刪除表格時,它將保留在TableDefs集合中,其原始名稱由「〜」開頭。我不確定他們以這種方式持續了多久;緊湊似乎刪除它們。但我估計,如果TableDefs中仍存在一個已刪除的表,那麼將其另存爲CSV就沒有價值。 – HansUp 2011-09-30 18:44:11

4

使用這個工具的開源和免費的MDB到CSV轉換器: MDBtoCSV

4

Plotly(https://plot.ly)將您的MDB文件轉換爲CSV免費。
編輯:免費Plotly用戶不能使用此功能;訂閱是必需的。