第十天 - ADO.NET 笔记

本文主要探讨ADO.NET数据提供程序,包括SqlConnection等核心对象,以及System.Data命名空间中的关键接口如IDbConnection、IDbCommand等。此外,还详细介绍了ADO.NET连接层的工作流程,如创建和配置连接、命令对象,以及使用IDataReader处理数据。

ADO.NET数据提供程序

核心对象
对象基类实现的接口作用
ConnectionDbConnectionIDbConnection连接和断开数据源,提供相关事务对象的访问
CommandDbCommandIDbCommand代表SQL查询语句或者存储过程名,同样提供了相关数据读取器对象的访问
DataReaderDbDataReaderIDataReader和IDataRecord提供只读只向前形式的数据访问
DataAdapterDbDataAdapterIDataAdapter和IDbDataAdpter在数据库和调用者之间传递DataSet,内置4个命令对象来实现数据的查询、插入、修改和删除操作
ParameterDbParameterIDataParameter和IDbDataParameter在参数化查询中表示参数
TransactionDbTransactionIDbTransaction实现数据库事务

说明:对应不同种类的数据库,就有SqlConnection和OracleConnection等。

System.Data命名空间

核心成员
类型作用
Constraint表示某个DataColumn对象的约束
DataColumn表示某个DataTable对象中的一列
DataRelation表示两个DataTable对象之间的父子关系
DataRow表示某个DataTable对象中的一行
DataSet由多个相关DataTable对象组成的内存中的数据缓存
DataTable表示内存数据的一个表
DataTableReader使你能像fire-hose游标(只读向前)那样获取DataTable
DataView表示用于排序、筛选、搜索、编辑和导航的DataTable的自定义视图
IDataAdapter定义了数据适配器对象的主要行为
IDataParameter定义了参数对象的主要行为
IDataReader定义了数据读取器对象的主要行为
IDbCommand定义了命令对象的主要行为
IDbDataAdapter对IDataAdapter的一个扩展,增加了数据适配器对象的一些功能
IDbTransaction定义了事务对象的主要行为

接口的作用

  • IDbConnection:定义了一系列用于配置某个人数据库连接的一些成员。
  • IDbTransaction:可以以编程方式在事务会话和基层的数据存储之间进行交互。
  • IDbCommand:能通过编程方式处理SQL语句、存储过程和参数化查询。
  • IDbDataParameter和IDataParameter:让我们能通过ADO.NET的参数对象来表示SQL命令和存储过程中的参数。
  • IDbDataAdapter和IDataAdapter:从特定的数据库获取和返回DataSet。
  • IDataReader和IDataRecord:定义了数据读取器对象的一些常用行为。

ADO.NET连接层

步骤:

  1. 创建、配置、打开连接对象。
  2. 创建、配置一个命令对象,通过构造参数或Connection属性指定连接对象。
  3. 执行配置后的命令对象的ExectueReader()方法。
  4. 使用数据读取器的Read()方法一条一条处理记录。

示例:

//建立并打开一个连接
using( SqlConnection cn = new SqlConnection() ){
    cn.ConnectionString = @"Data Source=(local)\SQLEXPRESS;Intergrated Security=SSPI;"+
                          "Initial Catalog=AutoLot";
    cn.Open();
     
    //建立一个SQL命令对象
    string strSQL= "Select * From Inventory";
    SqlCommand myCommand = new SqlCommand(strSQL,cn);
    
    //通过ExecuteReader()获取一个数据读取器
    using(SqlDataReader myDataReader = myCommand.ExecuteReader() ){
           //循环所有的记录
           while(myDataReader.Read() )
                Console.WriteLine(.....);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值