2014-04-23 280 views
3

我在我的PC上爲我的公司使用的SQL數據庫創建了Access前端。我正在使用文件ODBC連接並將ODBC文件和Access文件放在共享網絡驅動器上。訪問ODBC問題:ODBC - 呼叫失敗

當我加載訪問文件時,出於某種原因,它似乎默認使用我的Windows登錄憑據並完美地提取數據。當用戶試圖打開文件時,他們會收到一條錯誤消息,說「ODBC - 呼叫失敗。」。我可以爲他們打開鏈接表管理器,並檢查「請求新的位置」,然後指定ODBC文件,它一切正常......但它似乎並沒有保存任何東西。每次有其他人打開此文件時,我都會收到錯誤信息。

任何想法可能是錯誤的?我不是交易中的Access人,它似乎是我們目前需要的工具。

- 編輯:澄清我使用的是文件ODBC連接

- 編輯2--

謎語我這個。所以我一直在解決這個問題,我遇到了一些有趣的事情。我以我的一位用戶身份登錄,並執行了以下操作:

  1. 創建一個新的訪問文件,該文件引用桌面上的文件ODBC連接。
  2. 使用桌面上的ODBC文件在訪問文件中創建3-4個鏈接表。
  3. 保存並關閉訪問文件。
  4. 重新打開所說的文件....我得到一個ODBC連接錯誤!一切都很好後,在一個新的文件!

有沒有人遇到過這種情況?

回答

0

嗯,我能夠縮小這個問題的範圍。由於某種原因,Access一直試圖在我的ODBC文件中使用Windows Credentials而不是用戶名。我無法找到解決方法,但我能夠通過在SQL Server上爲需要訪問的Windows用戶創建登錄來解決問題。

我對於需要管理更多登錄並不是非常滿意,但這就是我所做的解決此問題的方法。

1

我假設你沒有在每臺用戶PC上正確安裝ODBC。 您應該創建ODBC定義。你可以直接在註冊表中創建相關的語句,看看這個分支
HKEY_LOCAL_MACHINE \ SOFTWARE \ ODBC \ ODBC.INI

如果你在開發者機器上給出了相同的名字,那麼它就起作用了。這就是我如何使用我在我的機器上開發的客戶端應用程序,然後將其安裝在客戶端網站

+0

我認爲,因爲ODBC文件在共享驅動器上就足夠了。所以我需要分別在每臺機器上安裝一個ODBC文件? – user2061929

+0

aha,您使用ODBC連接的文件 - 用戶是否有權訪問該共享,並且映射了相同的驅動器號/路徑? (將不得不測試一次,但今天我離開整天...) –

+0

他們都有權訪問驅動器是的。我相信它映射到相同的驅動器號,但它可能不是。如果他們是不同的驅動器號,我該如何解決這個問題? – user2061929