ADO.NET是微软.NET数据库访问架构,它是数据库应用程序和数据源之间沟通的桥梁,主要提供一个面向对象的数据访问架构,用来开发数据库应用程序
操作数据库
Entity Framework技术,是从ADO.NET衍生出来的
command对象常用方法和说明
1.ExecuteNonQuery,用于执行非select命令,比如INSERT,DELETE或UPDATE
2.ExecuteScalar,用于执行SELECT查询命令,返回数据中的第一行第一列,这个方法通常用来执行那些用到COUNT或SUM函数的SELECT命令
3.ExecuteReader,执行SELECT命令,并返回一个DataReader对象,这个DataReader对象是一个只读向前的数据集
Entity Framework 是微软官方发布的ORM框架,通过EF可以很方便的将表映射到实体对象,或者将实体对象转换为数据库表
Entity Framework实体数据模型(EDM)包括3个模型:概念模型由.csdl来定义 映射由映射规范语言文件。msl定义 存储模型由存储架构定义语言文件.ssdl定义
EDM模式在项目中的表现形式就是扩展名为.edmx的文件,这个文件本质是一个xml文件,可以手动编写CSDL,MSL,SSDL这3个部分
创建项目选择ADO.net实体数据模型,项目名可以与数据库同名
DataSet对象和DataReader对象的区别
DataSet是将用户需要的数据从数据库中复制下来,存储在内存中,用户对内存中的数据直接操作
而DataReader,建立了一个通道,会直接提取用户需要的数据,提取完后,管道会断开,所以在读取数据时需要保证链接的状态是开启的,而DataSet就没有这个必要
EF相对ADO.net的优势区别
1.开发效率高,以面向对象的思维进行开发。
2.可以使用三种设计模式中的ModeIFirst来设计数据库,而且比较直观
3.可以跨数据库,只需要在配置文件中修改字符串
4.与viual studio 开发工具结合的比较好
缺点:性能方面不如ADO.net,因为中间有一个生成sql脚本的过程