EF CodeFirst学习笔记002--更新数据库表
BlogEntities这个类从DbContext继承,负责数据库的更新.
Database.SetInitializer(new DropCreateDatabaseIfModelChanges<BlogEntities>());
这段代码表示:当具体的类发生变化时将重新删除现有的数据库,重新生成新的数据库.
测试:
- 修改TestUser类中的TestUserName为updateUserName
- 执行程序
- TestUsers表字段为updateUserId(重新创建的新表)
- Blogs表原来的数据不见了,说明是删除了数据库,重新创建的新数据库.
问题: 在测试数据库中做这样的操作是允许的,但在正式的生产环境将十分危险.
namespace EfStudy
{
public class BlogEntities:DbContext
{
static BlogEntities()
{
Database.SetInitializer(new DropCreateDatabaseIfModelChanges<BlogEntities>()); } public DbSet<Blog> Blogs
{
get;
set;
} public DbSet<BlogType> BlogTypes
{
get;
set;
} public DbSet<TestUser> TestUsers
{
get;
set;
}
}
}
EF CodeFirst学习笔记002--更新数据库表的更多相关文章
- EF CodeFirst学习笔记003--如何创建表
参考: http://www.cnblogs.com/Wayou/archive/2012/09/20/EF_CodeFirst.html webconfig中修改: <connectionSt ...
- EF CodeFirst学习笔记001--主键约定
Code First 的核心是约定,这些默认的规则使我们可以用我们自己的类来创建模型.EF框架要求一个类必须有一个键属性.规则约定如果一个属性名为Id或者是类名+Id的形式(如PatientId),这 ...
- EF CodeFirst学习笔记004--足够聪明
将BlogTypes注释掉,但因为Blogs中定义了BlogType 这样类型的属性,所以Ef会聪明的找到BlogType类. public class BlogEntities:DbContext ...
- Django学习笔记(五)—— 表单
疯狂的暑假学习之 Django学习笔记(五)-- 表单 參考:<The Django Book> 第7章 1. HttpRequest对象的信息 request.path ...
- SQLMAP学习笔记2 Mysql数据库注入
SQLMAP学习笔记2 Mysql数据库注入 注入流程 (如果网站需要登录,就要用到cookie信息,通过F12开发者工具获取cookie信息) sqlmap -u "URL" - ...
- 用DataSet方式更新数据库表
/* 用DataSet的方式更新数据库表 * 注意:用DataSet更新数据库表的时候,该表必须指定主键或者是唯一列 */ string connString = "Data Source= ...
- ABP框架源码学习之修改默认数据库表前缀或表名称
ABP框架源码学习之修改默认数据库表前缀或表名称 1,源码 namespace Abp.Zero.EntityFramework { /// <summary> /// Extension ...
- powdesingner 更新数据库表结构
1.连接数据库 2更新数据库表结构
- Flutter学习笔记(13)--表单组件
如需转载,请注明出处:Flutter学习笔记(13)--表单组件 表单组件是个包含表单元素的区域,表单元素允许用户输入内容,比如:文本区域,下拉表单,单选框.复选框等,常见的应用场景有:登陆.注册.输 ...
随机推荐
- gentoo eclipse swt
最近学习使用 eclipse rcp 来做一些插件. 首先下载安装 eclipse-rcp,然后安装 swt emerge -av swt 安装完成以后, 在 /usr/portage/distfil ...
- kvm云主机使用宿主机usb设备
有些时候KVM客户机还是要使用USB设备,比如USB密钥等 KVM命令行参数 -usb 打开usb驱动程序,启动客户机usb支持-usbdevice devname 为客户机增加usb设备,devna ...
- RHEL yum
一.YUM源配置 使用RHEL自带的yum时会显示 #This system is not registered to Red Hat Subscription Management. You can ...
- liunx poi excel下载内容乱码本地tomcat正常
结论:在jsp中加上out.clear即可(前提保证生成的excel在服务器上是正确的,只是浏览器传输才出现乱码). dowload.jsp完整代码 <%@ page language=&quo ...
- 选择、操作web元素
11月1日 什么是web元素 Selenium自动化主要就是:选择界面元素,操作界面元素(输入操作:点击.输入文字.拖拽等,输出操作:获取元素的各种属性),根据界面上获取的数据进行分析和处理 选择元素 ...
- java环境变量配置方法
原创文章,转载请注明出处. 这是本人2011-9-4记录的,现在把它放在博客上. windows xp下配置JDK环境变量: 1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为 ...
- 完美解决ubuntu下sublime中文输入问题
声明 1.本人整理文章,转载请注明出处. 2.参考资料 http://my.oschina.net/tsl0922/blog/113495 问题描述 在ubuntu下想使用sublime,但是不能输入 ...
- django管理后台添加admin账号
直接用命令行添加即可:python manage.py createsuperuser # python manage.py createsuperuser Username (leave blank ...
- golang 的 mysql 操作
goLang的mysql操作,大致可分为三个步骤: 1.下载mysql驱动:go get github.com/go-sql-driver/mysql 2.建立连接:sql.Open("my ...
- Mysql索引,有哪几种索引,什么时候该(不该)建索引;SQL怎么进行优化以及SQL关键字的执行顺序
索引(Index)是帮助MySQL高效获取数据的数据结构.提取句子主干,就可以得到索引的本质:索引是数据结构. 1.按照索引列值的唯一性,索引可分为唯一索引和非唯一索引 非唯一索引:B树索引 crea ...