如何将ASP.NET MVC数据库从LocalDb传输到SQL Server?

don*_*ona 33 database sql-server asp.net-mvc localdb

我在Visual Studio 2013(Express for Web)中创建了一个新的ASP.NET MVC 5项目,默认情况下,该项目使用LocalDb作为其数据库,但是如何将数据库传输或迁移到SQL Server?

我想将SQL Server用于数据库而不是LocalDb.但是怎么样?

Ove*_*ord 40

虽然这个问题很老,但答案对我没有帮助,所以我想分享一下我是如何为自己解决的.

在Server Explorer上,找到您的ASPNet DB.然后使用SQL Server对象资源管理器打开它.

在此输入图像描述

然后去点击Schema Compare选项

比较架构

然后在Target数据库的Schema Compare窗口中,选择您希望ASPNet DB集成到的SQL Server数据库.然后点击比较按钮

设置选项

取消选择目标数据库的所有删除操作,并为ASPNet DB保留所选的所有添加操作,然后单击"更新"按钮.

更新

最后,更新您的连接字符串,使其指向您的SQL Server数据库


don*_*ona 22

得到它了!

基于@ warheat1990的答案,您只需更改连接字符串即可.但@ warheat1990的回答有点太多变化.所以这是我的原始(LocalDb)连接字符串:

<add name="DefaultConnection"
     connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-my_project-20150318100658.mdf;Initial Catalog=my_project-20150318100658;Integrated Security=True"
     providerName="System.Data.SqlClient"/>
Run Code Online (Sandbox Code Playgroud)

为了将它连接到SQL Server而不是LocalDB,我将连接字符串修改为:

<add name="DefaultConnection"
     connectionString="Data Source=SERVERNAME\SQLEXPRESS;Initial Catalog=my_project;Integrated Security=True"
     providerName="System.Data.SqlClient"/>
Run Code Online (Sandbox Code Playgroud)

感谢@ warheat1990,只需更改Web.config即可.我的第一个想法是识别和使用VS提供的功能,如果有的话.因为Microsoft没有关于如何执行此操作的简明文档.


war*_*990 6

更改web.config中的connectionString

  <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-KlikRX-20141203034323.mdf;Initial Catalog=aspnet-Test-20141203034323;Integrated Security=True" providerName="System.Data.SqlClient" />
  </connectionStrings>
Run Code Online (Sandbox Code Playgroud)

到您自己的数据库connectionString,例如:

  <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=7.7.7.7\sql;Initial Catalog=TestDB;User ID=sa;Password=sa" />
  </connectionStrings>
Run Code Online (Sandbox Code Playgroud)