59

设置:实体框架代码首先到新数据库。

场景:我在玩 EF,我在我的数据库中添加了一堆元素。然后我更改实体模型,虽然我知道我可以进行迁移,但我只想从头开始,基本上从地球上清除数据库。

默认使用的数据库是 (localdb)\v11.0。

我的问题是:

我可以去某个地方只删除一个文件,或者启动某种管理器来删除该数据库并从头开始吗?

4

10 回答 10

62

只需使用管理员权限进入命令提示符并键入:

//list the instancies
sqllocaldb i

//stop selected instance
sqllocaldb p "selected instance"

//delete
sqllocaldb d "selected instance"

//recreate or create new one 
sqllocaldb c "new instance"
于 2014-01-12T10:45:50.793 回答
24

从 Visual Studio => 单击查看 => SQL Server 对象资源管理器 => 右键单击​​所需的数据库并选择删除,它将被删除或做任何你想做的事情

于 2014-02-03T23:26:12.247 回答
15

如果您使用的是 Entity Framework Core,则可以在包管理器控制台中输入:

PM> Drop-Database

它将删除当前数据库。这个命令会告诉你是哪一个:

PM> Get-DbContext

这也很方便:

PM> Get-Help about_EntityFrameworkCore

除了包管理器控制台,您还可以通过 PowerShell 或命令提示符使用 dotnet CLI:

PS> dotnet ef database drop

确保首先通过运行以下命令安装 EF 扩展:

dotnet tool install --global dotnet-ef
于 2017-11-07T02:10:18.410 回答
7

我认为您想删除单个数据库,而不是 LocalDB 实例。如果是这样,只需发出 drop database 命令:

DROP DATABASE databasename;

您可以从sqlcmdManagement Studio、您的应用程序代码甚至 Visual Studio 中执行此操作...

于 2013-03-10T04:18:37.440 回答
3

是的你可以。在 VS 2015/2017 中按 Ctrl+Q,键入“对象资源管理器”。“SQL Server 对象资源管理器”应打开,您将在其中看到本地数据库实例。展开数据库实例,您将看到不同的数据库。选择一个数据库执行右键单击并选择“删除”。

有关更多信息,请查看此链接

希望有帮助。

于 2017-04-18T07:57:55.230 回答
2

使用 Entity Framework Core,这也可以通过命令行来完成:

dotnet ef database drop --project [path to project]

或者,如果您有多个数据库上下文:

dotnet ef database drop --project [path to project] --context [ContextName]

确保首先通过运行以下命令安装 EF 扩展:

dotnet tool install --global dotnet-ef
于 2020-05-21T11:17:23.020 回答
2

有一个名为 SqlLocalDB.exe 的 exe,可以在 C:\Program Files\Microsoft SQL Server\{version}\Tools\Binn 中找到

对于完全删除:

>sqllocaldb stop InstanceName
>sqllocaldb delete InstanceName

完成后,您还可以选择从磁盘中删除 .mdf 文件。我的在

C:\Users\{username}

您还可以重新创建一个新实例,甚至附加您之后仍需要的 .mdf 文件。

>sqllocaldb create InstanceName
>sqllocaldb start InstanceName
>sqllocaldb info InstanceName

您可以在以下位置查看您的实例:

C:\Users\{username}\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances
于 2020-07-22T06:04:52.387 回答
1

LocalDB 是它自己的独立服务器(它的名字暗示它只是其他服务器实例中的一个数据库,但事实并非如此)。在 SQL Server 2014 Express 中,您使用服务器名称“(localdb)\MSSQLLocalDB”连接到它,就像连接到任何普通数据库服务器一样。如果您使用 SQL Server Management Studio 进行连接,那么您可以使用 SSMS 的所有功能。

于 2016-03-16T23:58:23.020 回答
0

我写了一个批处理文件来删除一个 SQL 本地数据库。它使用受信任的连接。如果需要,您可以添加带有-U Username -P Password参数的凭据。

查看sqlcmd 文档

在此处输入图像描述

@echo off
set /p DbName=Enter local db name:
echo.
sqlcmd -e -S "(LocalDb)\MSSQLLocalDB" -d "master" -Q "EXEC msdb.dbo.sp_delete_database_backuphistory @database_name = N'%DbName%'; USE [master]; DROP DATABASE [%DbName%];"
echo Finished!
pause > nul
于 2021-05-26T13:57:12.663 回答
0

实体框架 3.1:

删除数据库

dotnet ef database drop

不想删除数据库,愿意删除数据库中的表

dotnet ef database update 0
于 2020-05-22T03:44:20.923 回答