文章目录
- 环境配置
- ADO.NET简介
- ADO.NET是什么
- 面向过程和面向对象
- 什么是ORM
- ADO.NET用于解决什么问题
- 优化开发效率
- 对已存在的数据库,设计多个程序
- 对开发中的程序,动态设计数据库,同步更新
- ADO.NET如何使用,以sql server为例
- ADO.NET如何创建
- ADO.NET如何增删改查
- ADO.NET同步数据库更新
- ADO.NET如何扩展到其它数据库
环境配置
- .NET Framework 4.7.2
- Visual Studio 2022
- Sql server 2008
新建项目
ADO.NET简介
ADO.NET是什么
我们看一下visual studio 里面ADO.NET文件
ADO.NET是实体数据模型,是ORM对象文件。ORM,即Object-Relational Mapping(对象关系映射)。
ORM实际上是对业务的简化。就想面向过程到面向对象的转变一样。
面向过程和面向对象
- 面向过程:程序员需要对每一个操作进行描述
- 面向对象:每一个操作都要有一个对象主体,程序员要将业务的操作改成对象发出的操作
举例
面向过程
面向对象:这里有三个对象,鸡蛋,我,冰箱
什么是ORM
ORM也是同样的想法。就是数据库存储的表和我程序的对象完全一致。这样存入和取出也方便
无映射关系
有映射关系
ORM默认映射关系
- 数据表名和程序对象名一致
- 数据表列和程序对象的属性在个数,名称,数据类型一致
ADO.NET用于解决什么问题
优化开发效率
因为数据库是程序对象完全一致,所以我们只需要设置数据库或者程序对象,另外一部分会有程序自动对应。数据库或者对象的先后顺序称之为DB First和 Code First。之后我们不需要了解程序和数据库之间的对应关系了。
而且Entity Fromwork封装了一些数据库操作,利用程序生成sql语句,减少了我们sql语句拼写的错误
对已存在的数据库,设计多个程序
有时候我们需要对已存在的数据库设计一个小程序,例如数据库批量修改,数据导出。里面包含一些逻辑,无法或者很难用sql语句直接写出,而且很容易出错,也不能断点调试。这里我们就可以使用ADO.NET,直接生成对应映射文件。这样就不需要我们从头一个一个写数据库对应实体。
对开发中的程序,动态设计数据库,同步更新
我们在开发程序中,经常会出现数据库需要增加/删除字段的需求。ADO.NET支持动态同步。增加效率和避免出错
ADO.NET如何使用,以sql server为例
ADO.NET默认支持Sql server
ADO.NET如何创建
首先创建一个sql server数据库,如何创建这里不再赘述
右键添加,选择新建项
ADO.NET如何增删改查
ASP.NET Core 3.1系列(20)——EFCore中的删除实体操作
ADO.NET同步数据库更新
但是有bug
个人推荐,删除再重新导入
再重新导入
属性正确
ADO.NET如何扩展到其它数据库
如何扩展那是非常麻烦的,我目前只扩展了sqlite数据库,接下来打算扩展到mysql。
visual studio 2022,ADO.NET 实体数据模型添加 sqlite数据库对象