2011-11-20 85 views
3

這是我在.NET連接到Access數據庫:「未找到數據源名稱並沒有指定默認驅動程序」,用於創建訪問連接

OdbcConnection conn = new OdbcConnection("Driver={Microsoft Access Driver (*.mdb)};Dbq=" + path + "\\Access.mdb;Uid=;Pwd=;"); 

而且我得到了這個問題:

base {System.Data.Common.DbException} = {"ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified"} 

我試過幾個數據庫連接字符串:http://www.connectionstrings.com/access,但沒有一個能夠工作。

對此有何建議?

在此先感謝。

+0

您使用的Windows 7? – BlackICE

回答

3

有一個簡單的方法來連接字符串,嘗試如下:

  • 創建一個文本文件,並改變它的擴展.udl
  • 通過雙擊打開新文件,並選擇使用任何文本編輯器打開它,例如記事本。
  • 在打開的窗口中,選擇您的提供者和數據庫,然後單擊確定。
  • 用記事本打開這個文件作爲文本,你會在裏面找到connectoin字符串。

有關更多詳細信息,請參閱This

+0

不,我可以找不到記事本 – olidev

+0

內部的連接字符串請參閱:http://msdn.microsoft.com/en-us/library/aa140076%28v=office.10%29.aspx –

+0

如果沒有列表中的訪問提供者? –

1

,你可以在你上面鏈接同一網站上看到,默認的方式連接到訪問數據庫指定Microsoft.Jet.OLEDB.4.0提供者:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=; 

做這項工作,如果沒有什麼樣的錯誤你得到?

+0

[System.Data.Odbc。OdbcException] = {「錯誤[IM002] [微軟] [ODBC驅動程序管理器]數據源名稱未找到,沒有指定默認驅動程序」} – olidev

+0

與nefpre相同的錯誤 – olidev

0

一,是path有效字段?

其次,嘗試輸出用於連接數據庫文件的字符串,作爲完整性檢查。確保輸出字符串與您所期望的相符,並且指定的文件存在。

+0

是的,我相信路徑是有效的 – olidev

0

試試這個

http://www.connectionstrings.com/

更具體地說這個

http://www.connectionstrings.com/access

我想你的代碼更改爲以下:

OdbcConnectionStringBuilder sb = new OdbcConnectionStringBuilder(); 
sb.Driver = "Microsoft Access Driver (*.mdb)"; 
sb.Add("Dbq", "C:\\info.mdb"); 
sb.Add("Uid", "Admin"); 
sb.Add("Pwd", "pass!word1"); 
OdbcConnection con = new OdbcConnection(sb.ConnectionString); 
0

web.config中添加

add name="odbcConnectionString" 
    connectionString="Driver={Microsoft Access Driver (*.mdb)};DBQ=|DataDirectory|info.mdb; " 
    providerName="System.Data.OleDb" 
相關問題