数据库 "Unable to open physical file" 的 SSMS 删除失败
SSMS drop failed for database "Unable to open physical file"
试图在别处找到它,但没有成功。
我正在尝试删除磁盘上不再存在但仍显示在 SSMS 2014 的对象资源管理器中的数据库
那么我如何 'clean them out' 对象资源管理器?
我需要手动将它们从 sys.master_files 中删除吗?
例外情况是:
Drop failed for Database 'aspnet-Blawblaw-20141027015559'. (Microsoft.SqlServer.Smo)
------------------------------
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=12.0.2000.8+((SQL14_RTM).140220-1752)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Drop+Database&LinkId=20476
------------------------------
Program Location:
at Microsoft.SqlServer.Management.Smo.SqlSmoObject.DropImpl()
at Microsoft.SqlServer.Management.Smo.Database.Drop()
at Microsoft.SqlServer.Management.SqlManagerUI.DropObjects.DoDropObject(Int32 objectRowIndex)
at Microsoft.SqlServer.Management.SqlManagerUI.DropObjects.DropAllObjects(Boolean stopOnError)
===================================
An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
------------------------------
Program Location:
at Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(String sqlCommand, ExecutionTypes executionType)
at Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(StringCollection sqlCommands, ExecutionTypes executionType)
at Microsoft.SqlServer.Management.Smo.ExecutionManager.ExecuteNonQuery(StringCollection queries)
at Microsoft.SqlServer.Management.Smo.SqlSmoObject.ExecuteNonQuery(StringCollection queries, Boolean includeDbContext)
at Microsoft.SqlServer.Management.Smo.SqlSmoObject.DropImplWorker(Urn& urn)
at Microsoft.SqlServer.Management.Smo.SqlSmoObject.DropImpl()
===================================
Unable to open the physical file "C:\Projects\BlawBlaw\BlawBlaw\App_Data\aspnet-BlawBlaw-20141027015559.mdf". Operating system error 3: "3(The system cannot find the path specified.)".
File activation failure. The physical file name "C:\Projects\BlawBlaw\BlawBlaw\App_Data\aspnet-BlawBlaw-20141027015559_log.ldf" may be incorrect. (.Net SqlClient Data Provider)
------------------------------
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&ProdVer=11.00.3000&EvtSrc=MSSQLServer&EvtID=5120&LinkId=20476
------------------------------
Server Name: (LocalDb)\v11.0
Error Number: 5120
Severity: 16
State: 101
Line Number: 2
------------------------------
Program Location:
at Microsoft.SqlServer.Management.Common.ConnectionManager.ExecuteTSql(ExecuteTSqlAction action, Object execObject, DataSet fillDataSet, Boolean catchException)
at Microsoft.Sq
您需要 运行 的步骤如下:
- 打开命令提示符
- 启动 localDb 实例(如果尚未 运行ning):
“C:\Program Files\Microsoft SQL Server0\Tools\Binn\sqllocaldb.exe” start “MSSQLLocalDb″
- 使用以下命令 运行 删除 localDb 数据库:
“C:\Program Files\Microsoft SQL Server0\Tools\Binn\sqlcmd” -S (localdb)\MSSQLLocalDb -E -d master -Q “DROP DATABASE [myDatabase]”
- 您现在可以停止 localDb 服务:
“C:\Program Files\Microsoft SQL Server0\Tools\Binn\sqllocaldb.exe” stop “MSSQLLocalDb″
这对我有帮助。
- 打开新查询
- 复制数据库的名称 (F2)
- 运行 这个命令:
DROP DATABASE [C:TEST.MDF]
-- 当 "test" 是数据库的名称时
- 执行
- 刷新后,数据库字符串未显示在数据库中
sqlcmd -S (LocalDB)\MSSQLLocalDB -E -d master -Q "EXEC sp_detach_db 'Test', 'true'"
- Detach a Database | Microsoft Docs
- sp_detach_db (Transact-SQL) | Microsoft Docs
- sqlcmd Utility | Microsoft Docs
- How to delete (localdb) database if the file is gone | Whosebug
试图在别处找到它,但没有成功。
我正在尝试删除磁盘上不再存在但仍显示在 SSMS 2014 的对象资源管理器中的数据库
那么我如何 'clean them out' 对象资源管理器?
我需要手动将它们从 sys.master_files 中删除吗?
例外情况是:
Drop failed for Database 'aspnet-Blawblaw-20141027015559'. (Microsoft.SqlServer.Smo)
------------------------------
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=12.0.2000.8+((SQL14_RTM).140220-1752)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Drop+Database&LinkId=20476
------------------------------
Program Location:
at Microsoft.SqlServer.Management.Smo.SqlSmoObject.DropImpl()
at Microsoft.SqlServer.Management.Smo.Database.Drop()
at Microsoft.SqlServer.Management.SqlManagerUI.DropObjects.DoDropObject(Int32 objectRowIndex)
at Microsoft.SqlServer.Management.SqlManagerUI.DropObjects.DropAllObjects(Boolean stopOnError)
===================================
An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
------------------------------
Program Location:
at Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(String sqlCommand, ExecutionTypes executionType)
at Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(StringCollection sqlCommands, ExecutionTypes executionType)
at Microsoft.SqlServer.Management.Smo.ExecutionManager.ExecuteNonQuery(StringCollection queries)
at Microsoft.SqlServer.Management.Smo.SqlSmoObject.ExecuteNonQuery(StringCollection queries, Boolean includeDbContext)
at Microsoft.SqlServer.Management.Smo.SqlSmoObject.DropImplWorker(Urn& urn)
at Microsoft.SqlServer.Management.Smo.SqlSmoObject.DropImpl()
===================================
Unable to open the physical file "C:\Projects\BlawBlaw\BlawBlaw\App_Data\aspnet-BlawBlaw-20141027015559.mdf". Operating system error 3: "3(The system cannot find the path specified.)".
File activation failure. The physical file name "C:\Projects\BlawBlaw\BlawBlaw\App_Data\aspnet-BlawBlaw-20141027015559_log.ldf" may be incorrect. (.Net SqlClient Data Provider)
------------------------------
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&ProdVer=11.00.3000&EvtSrc=MSSQLServer&EvtID=5120&LinkId=20476
------------------------------
Server Name: (LocalDb)\v11.0
Error Number: 5120
Severity: 16
State: 101
Line Number: 2
------------------------------
Program Location:
at Microsoft.SqlServer.Management.Common.ConnectionManager.ExecuteTSql(ExecuteTSqlAction action, Object execObject, DataSet fillDataSet, Boolean catchException)
at Microsoft.Sq
您需要 运行 的步骤如下:
- 打开命令提示符
- 启动 localDb 实例(如果尚未 运行ning):
“C:\Program Files\Microsoft SQL Server0\Tools\Binn\sqllocaldb.exe” start “MSSQLLocalDb″
- 使用以下命令 运行 删除 localDb 数据库:
“C:\Program Files\Microsoft SQL Server0\Tools\Binn\sqlcmd” -S (localdb)\MSSQLLocalDb -E -d master -Q “DROP DATABASE [myDatabase]”
- 您现在可以停止 localDb 服务:
“C:\Program Files\Microsoft SQL Server0\Tools\Binn\sqllocaldb.exe” stop “MSSQLLocalDb″
这对我有帮助。
- 打开新查询
- 复制数据库的名称 (F2)
- 运行 这个命令:
DROP DATABASE [C:TEST.MDF]
-- 当 "test" 是数据库的名称时 - 执行
- 刷新后,数据库字符串未显示在数据库中
sqlcmd -S (LocalDB)\MSSQLLocalDB -E -d master -Q "EXEC sp_detach_db 'Test', 'true'"
- Detach a Database | Microsoft Docs
- sp_detach_db (Transact-SQL) | Microsoft Docs
- sqlcmd Utility | Microsoft Docs
- How to delete (localdb) database if the file is gone | Whosebug