2011-11-22 32 views
5

我有一個訪問數據庫,位於服務器x iis正在服務器y上運行。我的一個網頁從訪問數據庫訪問數據。如果某人有訪問數據庫,請在我們的網絡上說出最終用戶,則網頁將失敗,並且......已由另一個用戶錯誤消息專門打開。訪問數據庫已由其他用戶獨佔打開

我創建了一個本地訪問數據庫,並使用鏈接表來訪問這些表。即使如此,我仍然得到已經由另一個用戶錯誤完全打開。如果我瀏覽Windows資源管理器並瀏覽到服務器x並打開數據庫,我可以沒有問題。所以我的問題是,如何在不引發錯誤的情況下模擬與數據庫相同類型的連接,這是訪問數據庫的權限或連接字符串中允許我訪問數據庫的內容的問題。

因爲它會在我的connection.open命令期間拋出錯誤,我認爲它是與權限相關的或者需要添加到我的連接字符串中的其他東西。我已授予對本地目錄中IIS AppPool \的完全控制權,本地實例的訪問數據庫駐留在該目錄中,但似乎沒有任何區別。

我的連接字符串的樣子:

Private Shared connSheriff As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\serverx\directory\Access\MyDatabase.mdb;Jet OLEDB:Database Password=property;") 
+0

你以管理員身份打開數據庫?如果你懷疑連接字符串,那麼它可能值得張貼它。 – Simon

+0

Private Shared connSheriff As New OleDbConnection(「Provider = Microsoft.Jet.OLEDB.4.0; Data Source = \\ serverx \ directory \ Access \ MyDatabase.mdb; Jet OLEDB:Database Password = property;」) –

+1

您可能會考慮標記您的問題與您使用的網絡編程語言,以達到更廣泛的受衆。此外,我建議您在問題中加入一些換行符,標點符號和其他格式,以使其更具可讀性。 – HK1

回答

1

有一些options within the mdb是怎麼改的數據庫默認情況下打開,這應該是你的第一個停靠港特別設置了「默認打開模式」爲「共享」。

您已經拆分了數據庫(共享後端數據表,前端鏈接表和其他數據表)。確保每個用戶都使用單獨的前端mdb副本,否則會在此問題上出現鎖定問題。

有一個命令行開關(/ excl)設置獨佔模式,但你只是省略了這個打開數據庫共享,所以我懷疑這是一個問題。

你可能已經知道這一點,但「Shared」修改無關與應用程序或用戶,但股價的類的實例之間的連接變量之間共享(C#中相當於是「靜態」)

相關問題