EF操作数据库的步骤和一些简单操作语句
这里是写给我自己做记录的,不会写成一篇很好的博客,也不会置顶,如果有朋友看到了,而且觉得里面的内容不咋的,希望见谅哈!
关于这部分内容,这里推荐一篇总结的非常好的博客,如果你点击进来了,那么请略过下面的内容,直接点击这个链接,因为写的真的不错:https://www.cnblogs.com/gosky/p/5751815.html。
我个人还没有对EF相关的内容进行详细的整理,所以这篇随笔的参考意义不大,只是贴一些代码上去,以后有机会有时间,会对相关内容做一个总结。
使用EF操作数据库的详细步骤主要分为一下几步:
1.创建EF实体数据库模型:
在某个项目上点击右键 添加 ==》数据 ==》ADO.Net实体数据库模型 ==》然后按照提示去走;
2.实例化上下文
首先找到需要实例化的上下文的名字,在ef实体里的这个文件里:
打开该文件后,代码如下:
红框处的名字就是该实体的上下文。
实例化上下文的具体做法如下:
FirstDBEntities1 db = new FirstDBEntities1();
3.使用上下文操作数据库 之 查询操作
(1)根据主键id获取某个表的数据
操作方法为:
UserInfo userInfo = new UserInfo(); userInfo = db.UserInfo.Find(id);
其中UserInfo是该数据表对应的实体类的类名,执行该操作后,即可获取主键id为某个数的那一行的数据,然后通过 userInfo.XXX 即可获去相应字段的值;
(2)获取某个数据表全部数据
操作方法为:
List<UserInfo> list = new List<UserInfo>
list = db.UserInfo.ToList();
执行该操作后久会把该数据表中的所有数据都取出来,存放在一个List集合中;
(3)根据其他条件进行查询
var user = db.UserInfo.Where(u => u.userName == "AAA" );
这是使用lambda表达式进行查询,查询的结果是一个list集合,通过下面的方法可以遍历取出这些数据:
foreach(var item in user)
{
xxx = item.yyyy;
}
4.使用上下文操作数据库 之 增
创建一个实体数据对象,并对其各个字段赋值,然后使用上下文执行增加操作,
UserInfo user = new UserInfo();
user.userName = "BBB";
user.passWord = "";
db.UserInfo.Add(user); db.SaveChanges();
需要注意的是,在执行完添加操作之后,需要执行 db.SaveChanges() 操作, 这句话的意思是,把我们修改的内容更新到数据库中。
5.使用长下文操作数据库 之 改
首先要指定你修改的某一行的id:
UserInfo user = new UserInfo();
user.UserId = ;
接下来对要修改的字段进行重新赋值:
user.userName = "CCC";
user.passWord = "";
然后执行修改操作:
db.Entry(user).State = EntityState.Modified;
最后将修改保存到数据库中
db.SaveChanges();
如果只修改单个属性,比如只修改userName,则写为:
UserInfo user = new UserInfo();
user.userId = ;
user.userName = "DDD";
db.Entry(user ).Property(u => u.userName).IsModified = true;
db.SaveChanges();
6. 使用长下文操作数据库 之 删
UserInfo user = new UserInfo();
user.userId = ; db.Entry<UserInfo>(user).State = System.Data.Entity.EntityState.Deleted; db.SaveChanges();
好了,先简单写一下,只是草草记录,后续有时间会进行系统的归纳总结。
EF操作数据库的步骤和一些简单操作语句的更多相关文章
- DDL_操作数据库_创建&查询和DDL_操作数据库_修改&删除&使用
DDL操作数据库.表 1.操作数据库:CRUD C(Create):创建 创建数据库: create database 数据库名称: 创建数据库判断不存在再创建 create database if ...
- jdbc操作数据库的步骤
package com.jckb; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepare ...
- mysql数据库和数据表的简单操作
一.数据库的增删改查 1.新建数据库 CREATE DATABASE 数据库名 charset utf8; 数据库名规则:可以由字母.数字.下划线.@.#.$ 区分大小写, 不能使用关键字如 crea ...
- Ruby操作数据库基本步骤
1.rails g model university name:string 2.model has_many :colleges belongs_to :university has_one :us ...
- SQL server 从创建数据库到查询数据的简单操作
目录. 创建数据库 创建表 插入数据 查询 1.创建数据库 --创建数据库 create database db_Product go --使用数据库use db_Productgo 2.创建表 -- ...
- JDBC操作数据库的步骤 ?
注册数据库驱动. 建立数据库连接. 创建一个Statement. 执行SQL语句. 处理结果集. 关闭数据库连接.
- 阐述JDBC操作数据库的步骤
1. 加载驱动. Class.forName("oracle.jdbc.driver.OracleDriver"); (注意:加载驱动在JDBC 4.0中是可以省略的,自动从类路径 ...
- ui自动化之selenium操作(二)定位元素-简单操作
1. 将浏览器最大化 这里拿chrome举例,但是我在执行的时候一直报错,被坑了好久; 解决办法: 这是因为chromedriver是和chrome一一对应的,不兼容的版本就会报错: 所有chrome ...
- django操作数据库之查询F,Q操作 和 seach搜索功能
# F 使用查询条件的值 # # from django.db.models import F # models.Tb1.objects.update(num=F('num')+1) # Q 构建搜索 ...
随机推荐
- Apache Maven入门篇(转)
[上篇] 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 maven 来构建运行 ...
- node07
---恢复内容开始--- 1.SQL基本查询语句 2.子句 1)WHERE 子句 WHERE key=val WHERE key>val WHERE key1>val1 AND key2& ...
- OpenCV常用头文件介绍
转载:https://www.cnblogs.com/wangguchao/p/7244483.html 1.OpenCV包含的模块 cv – 核心函数库 cvaux – 辅助函数库 cxcore – ...
- Hadoop集群搭建过程中ssh免密码登录(二)
一.为什么设置ssh免密码登录 在集群中,Hadoop控制脚本依赖SSH来执行针对整个集群的操作.例如,某个脚本能够终止并重启集群中的所有守护进程.所以,需要安装SSH,但是,SSH远程登陆的时候,需 ...
- Springboot中关于跨域问题的一种解决方法
前后端分离开发中,跨域问题是很常见的一种问题.本文主要是解决 springboot 项目跨域访问的一种方法,其他 javaweb 项目也可参考. 1.首先要了解什么是跨域 由于前后端分离开发中前端页面 ...
- HBuilder git合作-代码同步
1. 以下场景的操作都是同样的,包括:新建了文件.删除了文件.独占式修改文件(即不存在多人同时修改一个文件的情况) 提交 项目修改完成后,选中项目,右键Team->Commit 一般是选择Com ...
- Shadow Copying导致ASP.NET应用启动很慢的解决办法
What's Shadow Copying? 我们安装一个应用程序并启动后,我们是无法更新应用程序安装目录中程序集文件的.如果强制替换会提示文件正在使用,如下图所示. 那你可能会问,为什么会无法更新呢 ...
- C++或C#调用外部exe的分析
假如有个外部程序名为A.exe,放在目录E:\temp\下,然后我们用C++或者C#写一个程序调用这个A.exe的话(假设这个调用者所在的路径在D:\invoke),通常会采用下面的代码: // C# ...
- #Java学习之路——面试题
(一)[基础知识梳理——JAVAse部分]Java中的变量和常量 在程序中存在大量的数据来代表程序的状态,其中有些数据在程序的运行过程中值会发生改变,有些数据在程序运行过程中值不能发生改 ...
- [Swift]LeetCode294. 翻转游戏之 II $ Flip Game II
You are playing the following Flip Game with your friend: Given a string that contains only these tw ...