2009-08-27 45 views
2

我沒有微軟訪問,但想打開一個mdb文件,有沒有辦法做到這一點?打開沒有訪問的mdb訪問文件

該mdb文件包含我需要的SQL代碼。它只是一個連接到遠程數據庫的文件。我需要查看sql代碼

我確實嘗試過openoffice的基礎,但它只給我看了一些表格。我沒有看到在哪裏的SQL代碼是?

+0

你說的SQL代碼是什麼意思?訪問查詢? – 2009-08-27 20:07:04

回答

5

該VBScript將打印出您的MDB數據庫中已保存查詢的SQL語句。

Option Explicit 
Dim dbe 
Dim db 
Dim qdf 

Set dbe = CreateObject("DAO.DBEngine.36") 
'change the next line to include the full path to your database 
Set db = dbe.OpenDatabase("C:\SomeFolder\YourDatabase.mdb") 
For Each qdf In db.QueryDefs 
    If Left(qdf.Name,1) <> "~" Then 
     Wscript.StdOut.WriteLine qdf.Name 
     Wscript.StdOut.WriteLine qdf.SQL 
     Wscript.StdOut.WriteLine String(20, "-") 
    End If 
Next 
Set db = Nothing 
Set dbe = Nothing 

我救它作爲DumpQuerySQL.vbs,那麼從這樣的命令提示符下運行它:

cscript DumpQuerySQL.vbs > querySQL.txt 
+1

MDAC與它無關。 Jet 4.0是OS的一部分,默認包含DAO。不過,取決於你的開發平臺,OLEDB可能是更好的選擇。不過,你的代碼很好。 +1 – 2009-08-28 01:45:58

+0

我誤解了我讀到的有關MDAC 2.8的內容。從您的評論,這聽起來像我仍然可以依賴DAO的Vista和Win7機器沒有訪問。我喜歡。 – HansUp 2009-08-28 02:11:06

+1

HansUp。 Jet 4.0/DAO仍然作爲Vista和Win 7操作系統的一部分存在。 – 2009-08-28 02:34:23

2

「通過ADO.NET訪問」它幾乎任何其他應該做的伎倆。

善良,

+0

VBScript,C#,JavaScript等 – 2009-08-27 19:27:12

1

包括在大多數版本的Windows可以做到這一點的噴氣驅動程序。您可以通過您的首選供應商或API(ODBC,ADO,ADO.NET)使用Jet驅動程序。即使Excel支持它(打開文件,並選擇MDB)。

+0

這是在MDAC中。 MDAC可以單獨安裝 – 2009-08-27 20:05:44

+0

多年以來Jet一直沒有被包含在MDAC中 - 它不需要,因爲它自Win2000發佈以來一直是Windows的一部分。 – 2009-08-28 01:46:42

1

visual studio能夠通過其數據源功能查看和修改訪問數據庫。

您可能也想看看FlySpeed SQL查詢,它可以查詢各種數據庫「對飛」

+0

該mdb文件包含我需要的SQL代碼。它只是一個連接到遠程數據庫的文件。我需要查看sql代碼 – 2009-08-27 19:35:51

0

你試過OpenOffice的基礎?我對轉換MDB文件的運氣很好。

+0

更新,謝謝 – 2009-08-27 19:41:54