tnblog
首页
视频
资源
登录

CodeFirsrt数据库迁移

3345人阅读 2021/3/28 12:52 总访问:4388 评论:0 收藏:0 手机
分类: asp框架

数据库迁移

我们如果已经使用了使用CodeFirst创建数据库,但是突然又想增加或者删除一个字段的时候,如果直接去数据库里把数据库删了在重新建立数据库也是可以的,只不过非常麻烦,我们使用数据库迁移就不用这么麻烦,数据库迁移就相当于更新数据库。

数据库迁移命令:

PluralizingTableNameConvention

Enable-Migrations启用数据库迁移
Enable-Migrations –EnableAutomaticMigrations 启动自动迁移

Update-Database 更新到数据库

Add-Migration needname 手动迁移(防止一些数据库丢失的情况,类似做一个日志,方便自己查看)

数据库迁移步骤:

比如:我们现在的用户表里有如下字段:

第一步

我们在它的实体映射里添加一个Hobby字段:

第二步:

我们去找到扩展包

第三步:

打开之后在控制台里输入:

  1. Enable-Migrations EnableAutomaticMigrations

如下图:还要切换上下文对象

输入后回车

启用数据迁移后,会自动给你建一个文件夹和类:类里就是存你的迁移对象

因为方法里面是true,所以可以使用自动迁移来启用迁移

第四步:

输入Update-Database执行更新

第五步:

可以看到数据库里已经有了

我们如果要改变数据库里已经有的字段的长度的话,还要多一步操作。

比如:我们对已有自动Hobby设置长度:

  1. [StringLength(64)]
  2. public string Hobby { get; set; }

设置完后直接更新数据库迁移
发现无法执行

因为,它怕数据丢失,因为,如果你有个字段长度是128,你改为64,里面的内容就很有而可能丢失,所以你要自己确认一遍,才会给你更新。

第一步:执行手动迁移命令:

Add-Migration needname,

第二步输入命令后回车:


可以看到它会给你生成一个更改时间为名字的日志,就是用来当证据,你自己改的。造成数据丢失不关它的事。

第三步输入更改命令Update-Database 修改即可

这时候查看数据库发现字段长度也更改了

评价

abp数据库迁移

让我们来了解数据库迁移吧!还坑了我好久哇!一、首先二、出现程序包后按以下步骤做如果没按照以上步骤做的话你输入的是add...

.NET CORE EF数据库迁移,以及迁移命令详解。code first。在不删除表的情况下保持同步

.NET CORE EF 数据库迁移需要的依赖Install-Package Microsoft.EntityFrameworkCore.SqlServer -version 3.1.1 Install-Pa...

core ef中执行数据库迁移无效

是因为差一个依赖项Microsoft.EntityFrameworkCore.Tools下载即可:nuget命令:Install-PackageMicrosoft.EntityFrameworkC...

ef数据库迁移命令的依赖项

ef数据库迁移的依赖项是: Microsoft.EntityFrameworkCore.Tools下载即可:nuget命令:Install-PackageMicrosoft.EntityFra...

ef数据库迁移命令

.net core 数据库迁移可以参考:https://www.tnblog.net/aojiancc2/article/details/5370可以使用get-help命令查看命令的详...

EF数据库迁移

点击工具(打开库程序包管理器,再打开库程序包管理器控制台)迁移数据库的命令Enable-Migrations启用数据库迁移Enable-Mig...

oracle数据库中没有scott用户

使用SYS用户登录conn sys/密码 as sysdba(默认密码123456)然后找到oracle安装目录下scott.sql的这个文件然后执行命令:@+...

没有为 SQL 缓存通知启用数据库

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql -S 数据库IP -U 登录名 -P 密码 -d 数据库名称 -t 表名 -et

ado.net访问数据库的基本用法

放回datatable//1:开打数据库的连接 using(SqlConnectionconn=newSqlConnection("server=.;uid=sa;pwd=123456;databa...

多线程、Lock锁、数据库实现队列

队列其元素以先进先出(Firstin,Firstout,FIFO)的方式来处理的集合。先放入队列中的元素会先读取。队列使用System.Collect...

思宇上课笔记—SQL数据库分页查询的方式

jQuery课堂实例分页在实际开发中经常被用到,今天就来介绍下SQL数据库分页的几种常见方式。 下面的例子都以每分5条数据为一...

遍历数据库中表的T4模板

简单的案例创建文本模板ctrl+s出奇迹<#@templatedebug="false"hostspecific="false"language=&quot...

日志是写数据库好还是文件好,以及日志策略

先来看看大佬的一句话:离开需求谈技术都是扯淡主要是看你的日志是为了只做一个存储归档,还是要把数据对统计与分析如果只...

数据库的varchar和nvarchar的区别

搞了一个上午,自己测试看懂的一点点小东西,现在记录下来....数据库的varchar和nvarchar的区别首先内存上:1--8000 1--400...
没有个性,不需要签名
排名
114
文章
164
粉丝
5
评论
0
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术