C#访问数据库

一、ADO.NET数据访问技术

1.1ADO.NET简介(不用看仔细,有机会慢慢体会)

ADO.NET是一种由Microsoft开发的在.NET框架中用于访问数据和数据服务的应用程序编程接口(API)。"ADO"代表ActiveX数据对象(ActiveX Data Objects),是.NET之前Windows平台上用于数据访问的技术。而ADO.NET是为.NET环境专门设计的,它支持与数据库及其他数据源(如XML文件)的连接、检索、操作和更新数据。

ADO.NET设计之初就考虑到了互联网环境的需要,因此它支持断开式设计模式,这意味着应用程序可以在与数据源断开连接的情况下,对数据进行操作,并在必要时重新连接数据源来更新数据。这种设计非常适合Web应用程序,因为它减少了数据库连接的开销并提高了性能。

ADO.NET主要包含以下几个核心组件:

  1. Connection:提供与数据源的连接功能。
  2. Command:允许访问数据库来执行SQL命令、存储过程等。
  3. DataReader:提供一种读取数据库数据的快速流式方式,是前向只读的数据访问方式。
  4. DataAdapter:作为DataSet和数据源之间的桥梁,用于检索数据并将数据变更提交回数据源。
  5. DataSet:是一个内存中的数据表示,可以包含多个表格及其关系,允许数据断开式和独立于数据源的操作。
    下面是他们的关系图,注意看单双箭头:
    在这里插入图片描述
    ADO.NET架构提供了数据的灵活访问,在性能、可伸缩性以及与XML集成方面表现出色,使得它成为.NET应用程序中处理数据的首选方式。

1.2 .NET Framework为不同数据源类型提供的的数据程序

.NET Framework为不同的数据源类型提供了专用的数据提供程序(Data Providers)。每种数据提供程序都是一组专门用于与特定数据库或数据源交互的类。下面是一些常见的.NET数据提供程序及其用途:

  1. System.Data.SqlClient - 专为Microsoft SQL Server数据库设计。这是用于连接到SQL Server数据库并执行操作的最直接和最高效的方式。

  2. System.Data.OleDb - 为那些支持OLE DB的数据源提供了一种统一的访问接口,这些数据源包括Access以及Excel等。

  3. System.Data.Odbc - 使用ODBC驱动程序访问支持ODBC的数据库,如MySQL和PostgreSQL。

  4. System.Data.OracleClient - (已弃用)专门用于访问Oracle数据库的.NET数据提供程序。自.NET Framework 4起,Microsoft建议使用第三方提供程序如Oracle的ODP.NET。

  5. System.Data.SQLite - 第三方提供程序,用于SQLite数据库的访问。

  6. MySql.Data.MySqlClient - 第三方提供程序,用于MySQL数据库的访问。

  7. Npgsql - 第三方提供程序,用于PostgreSQL数据库的访问。

  8. System.Data.EntityClient - 用于Entity Framework的数据提供程序,它抽象出更高级别的数据模型,并使用其他数据提供程序与数

相关推荐

  1. C#系列-访问SqlServer+Mysql+Oracle数据库(6)

    2024-01-26 12:12:02       40 阅读
  2. 22、Lua 数据库访问

    2024-01-26 12:12:02       38 阅读
  3. C++ 类访问修饰符

    2024-01-26 12:12:02       43 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-26 12:12:02       75 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-26 12:12:02       80 阅读
  3. 在Django里面运行非项目文件

    2024-01-26 12:12:02       64 阅读
  4. Python语言-面向对象

    2024-01-26 12:12:02       75 阅读

热门阅读

  1. 极简pandas库Series

    2024-01-26 12:12:02       55 阅读
  2. 2401llvm,clang转换器

    2024-01-26 12:12:02       47 阅读
  3. 2401llvm,clang插件

    2024-01-26 12:12:02       52 阅读
  4. conda常用命令总结

    2024-01-26 12:12:02       58 阅读
  5. ·策略模式

    2024-01-26 12:12:02       50 阅读
  6. conda使用,pip使用

    2024-01-26 12:12:02       54 阅读
  7. 解决linux下wps缺失字体的问题

    2024-01-26 12:12:02       56 阅读
  8. 低代码开发助力业务效能高速提升

    2024-01-26 12:12:02       57 阅读
  9. C++(2) 结构体和动态数组的实现

    2024-01-26 12:12:02       42 阅读
  10. ubuntu运行指定的py环境

    2024-01-26 12:12:02       52 阅读
  11. 04 约数

    04 约数

    2024-01-26 12:12:02      45 阅读