我已經使用實體框架使用下面的連接字符串使用代碼優先的方法創建了一個簡單的上下文。一切順利,運行測試方法後,我發現自己的文件爲.mdf
和.ldf
。刪除舊的實體框架生成的數據庫後創建新的數據庫
"data source=.\SQLEXPRESS;Integrated Security=SSPI;database=testdb;AttachDBFilename=Q:\Temp\testdb.mdf;User Instance=true"
由於某種原因,我想刪除這個數據庫。我試圖在SSMS中查找數據庫,但我找不到它。它沒有在我的數據庫下注冊。現在我覺得我有3種選擇:
連接SSMS中的數據庫,然後通過搜索
.MDF
文件,然後從VS刪除數據庫中刪除連接到VS2015服務器資源管理器數據庫。通過服務器資源管理器
按
添加數據庫在SQL Server對象資源管理器
出現在服務器對象資源管理器,我可以按刪除瀏覽
只刪除
.mdf
和.ldf
文件
所有這三種方法去除.mdf
和.ldf
文件。
但是:當我再次啓動上下文時,我期望它從頭開始重新創建文件。但我收到以下錯誤:
An exception occurred while initializing the database. See the InnerException for details.
The underlying provider failed on Open.
Cannot open database "testdb" requested by the login.The login failed.
Login failed for user 'DESKTOP-XXXXXXX\XXXXX'.
我覺得我已經刪除了每個對此數據庫的引用。我找不到任何其他參考。然而不知何故,似乎有一個,因爲它試圖登錄,而不是創建一個新的數據庫。
問題:有誰知道如何解決這個問題?我該如何正確刪除數據庫+參考?
UPDATE:
在VS打開的連接刪除我看到下面的連接字符串的文件在我的測試過程中。
Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=Q:\Temp\testdb.mdf;Integrated Security=True;Connect Timeout=30
但是,當在VS2015中瀏覽我的Localdb時,沒有列出任何數據庫。
現在已列出2個不同的連接字符串。你在使用哪一個? 。\ SQLEXPRESS或localdb? –
我正在使用。\ SQLEXPRESS進行初始化。當使用數據庫的連接時,我注意到連接字符串是localdb。 – XWIKO
當你說連接數據庫並刪除它時,你是連接到。\ SQLEXPRESS並刪除數據庫? –