0

在我web.config我已經定義了以下爲不SQLEXPRESS現有的數據庫連接字符串(代碼第一個實體框架的方法)允許自動在Windows身份驗證生成的SQL Server DB的

<connectionStrings> 
    <add name="cityconnectionstring" connectionString="Data Source=.\sqlexpress;Initial Catalog=CityPolulation;Integrated Security=True;MultipleActiveResultSets=true" providerName="System.Data.SqlClient"/> 
    </connectionStrings> 

所以一旦我定義這在web.config文件我可以看到cityconnectionstringServer Explorer窗口Data Conncetion在Visual Studio中列出。

但是當我試圖右鍵點擊上面的連接字符串並點擊Refresh我在Visual Studio中出現以下錯誤。

服務器資源管理器錯誤

服務器資源管理器無法執行此操作請參閱下面的詳細 。

無法打開登錄請求的數據庫「CityPolulation」。 登錄失敗。用戶'PC-name \ username'登錄失敗。

所有與上述錯誤有關的答案都是針對現有的數據庫。

如何在Windows身份驗證下爲不存在的數據庫設置連接到sqlserver的權限。

什麼設置我應該看看IISSQL server Management Studio

+0

您無法連接到不存在的數據庫!如果你正在創建數據庫,那麼連接到「主」數據庫,而不是 – Mike

回答

0

當連接驗證它會檢查您可以訪問數據庫。如果數據庫不存在,則無法驗證連接。

如果您的問題標題暗示,您想要創建數據庫,那麼您仍然需要先連接到數據庫。如果您有權創建數據庫,那麼您一定可以訪問「主數據庫」。

但是,我希望您不希望所有用戶都能夠創建數據庫,因爲這意味着您的所有用戶對服務器的權限過多!

編輯將連接的數據庫更改爲「主」。這將證明你可以連接。

然後手動(在SSMS或您使用的任何工具中)在服務器上創建新的數據庫。

現在修改您的連接以使用新的數據庫連接。你現在應該能夠連接。

實體框架無法創建數據庫。但是,一旦創建了數據庫,它就可以創建表和數據。

+0

我唯一關心的是在windows身份驗證用戶下,這個定義的連接字符串沒有連接到sql server – kez

+0

你不能連接到sql server,你總是連接到一個實際的數據庫。在SSMS中,當「連接到服務器」時,您將連接到「主」數據庫(和「msdb」)。 – Mike

+0

好吧你的那些評論會幫助我,一旦我選擇主數據庫,連接字符串連接,但新的數據庫不會產生 – kez

相關問題