现在总结ADO.NET应该还不晚

原创 2013年12月04日 16:10:44

        ADO.NET的名称起源于ADO(ActiveX Data Objects),这是一个广泛的类组,用于在以往的Microsoft技术中访问数据。之所以使用ADO.NET名称,是因为Microsoft希望表明,这是在NET编程环境中优先使用的数据访问接口。

        既然ADO.NET起源于ADO,那么ado.net必定有它独特的优点,那就比较一下吧:

        

        它提供了对关系数据、XML 和应用程序数据的访问,因此是 .NET Framework 中不可缺少的一部分。下面就介绍下ado.net的类库都有些什么对象吧:

      1、DataSet:

       相当于一个本地的数据库,它包括多个DataTable对象,而DataTable包含列和行,就像一个普通的数据库中

表,它是在特定的场景下使用--帮助管理内存中的数据并支持对数据的断开操作的。它的结构如图所示:

     

      添加DataTable的语法:

    <Dataset name>.Table.Add(<datatable object name>);

      

 2、Connection对象

    和数据库交互,必须连接它。连接帮助指明数据库服务器、数据库名字、用户名、密码,和连接数据库所需要的其

它参数。Connection对象会被Command对象使用,这样就能够知道是在哪个数据源上面执行命令。

    (1)SQL (结构化查询语言)

     

sqlcon=new SqlConnection("server=SQLDB;uid=sa;pwd=password;database=pubs");
   (2) OLE DB(对象链接嵌入数据库)

    

adocon=new OleDbConnection("Provider=SQLOLEDB; DataSource=SQLDB;Initial Catalog=pubs;User Id=sa;pwd=password");

3、Command对象

  成功与数据建立连接后,就可以用Command对象来执行查询、修改、插入、删除等命令;Command对象常用的方

法有ExecuteReader()方法、ExecuteScalar()方法和ExecuteNonQuery()方法;插入数据可用

ExecuteNonQuery()方法来执行插入命令。

    (1)SQL

   

SqlCommand sqlcom=new SqlCommand("select * from student",sqlcon);

    (2)OLE DB

 

OleDbCommand adocom=new OleDbCommand("select * from student",adocon);


4、DataAdapter数据适配器(类似于中介)

(1)数据适配器是ado.net托管提供程序的组成部分;适配器用于在数据源和数据集之间交换数据;数据适配器可以

在任意源和数据集之间移动数据。

(2)DataAdapter的update方法可调用将DatSet中的更改解析回数据源;其中I男色让他Command、

UpdateCommand和DeleteCommand属性也是Command对象,而且可以用其更改;

(3)DataAdapter的SelectCommand属性是一个Command对象,从数据源中检索数据;Fill方法用于使

DataAdapter的SelectCommand的结果来填充DataSet。


5、DataView数据视图

能够创建DataTable中所存储的数据的不同视图,DataView作用:

(1)可以公开表中具有不同排序顺序的数据

(2)可以按行状态或基于筛选器表达式来筛选数据


6、DataReader

(1)可以使用其从数据库检索只读、只进的数据流;

(2)Command.ExecuteReader从数据源中检索行

(3)使用DataReader对象的Read方法可从查询结果中获取行;

(4)返回行的每一列值得方法:通过向DataReader传递列的名称或序号引用;调用GetDateTime、GetDouble

、GetGuid、GetInt32等方法。


除了上面的几个常用的几个对象,还有其他的。除了这些之外,还可以用来处理XML数据:

架构大概是:


//架构
<rootelement xmlns="x-schema:scheduledSchema.xsl">
//打开xml文件

FileStream myfs=new FileStream(Server.MapPath("xmldatagrid.xml")),
FileMode.Open,FileAccess.Read);

//将xml绑定到DataSet
DataView mySource=new DataView(myds,Table[0]);
DataGrid.DataSource=mySource;
dgMyGrid.DataBind();

    不管是在哪一个学习阶段,ado.net的实用频率都很大,了解的还不够深刻,努力学习中。。。


C#二十四 Ado.Net简介

ADO.NET是微软新一代.NET数据库的访问架构,ADO是ActiveX Data Objects的缩写。ADO.NET是数据库应用程序和数据源之间沟通的桥梁,主要提供一个面向对象的数据访问架构,用...
  • zhangchen124
  • zhangchen124
  • 2016年05月07日 18:50
  • 1569

C#之ADO.NET操作数据库总结

ADO.NET 是微软公司在.NET平台下提出的新的数据访问模型。 在ADO.NET中,可以使用多种 .NETFramework 数据提供程序来访问数据源。 (1) SQL Server....
  • crazy1235
  • crazy1235
  • 2013年01月02日 19:33
  • 1241

你应该选择和使用ADO.NET Entity吗?

前前后后,花了大约一个周的时间学习ADO.NET Entity,问题一直都很多。学习的出发点是希望了解和掌握这门技术,提高开发的效率。但学下来感觉非常别扭,以是痛定思痛,决定好好研究下ADO.NET ...
  • blue_morning
  • blue_morning
  • 2011年11月29日 12:55
  • 585

Entity Framework 学习总结之一:ADO.NET 实体框架概述

ADO.NET 实体框架概述新版本中的 ADO.NET 以新实体框架为特色。它使开发人员可以通过对象模型(而不是逻辑/关系数据模型)专注于数据。实体框架有助于将逻辑数据架构抽象为概念模型,并且允许以多...
  • jackeyabc
  • jackeyabc
  • 2011年06月09日 15:06
  • 2798

ado.net复习知识总结

1.SqlCommand的ExecuteScalar方法用于执行查询,并返回查询所返回的结果集的第一行的第一列,因为不能确定返回值的类型,所以返回值是object类型。 2.得到自动增长字段大的主键...
  • qizhichao110
  • qizhichao110
  • 2012年11月28日 21:32
  • 794

ADO.NET基础琐碎总结-----参数化查询

参数化查询(Parameterized Query )是指在设计与数据库链接并访问数据时,在需要填入数值或数据的地方,使用参数 (Parameter) 来给值,这个方法目前已被视为最有效可预防SQL注...
  • zhandeen
  • zhandeen
  • 2012年10月08日 16:37
  • 413

黑马程序员 ADO.NET总结

------- WindowsPhone 7手机开发、.Net培训、期待与您交流! ------- ----WinForm中存在两个MDF的解决办法---- vs2010中,在项目中点击右键“添...
  • song_zheng
  • song_zheng
  • 2013年03月05日 17:58
  • 575

【ADO.NET】基础总结

前言:在学习三层架构的时候,我们接触到了Connection、Command、Parameters这些词。不知道你看到了这些是否有种似曾相识的感觉呢?        ADO使用OLE DB接口,并基于...
  • qq_26545305
  • qq_26545305
  • 2016年02月26日 17:29
  • 861

ADO.NET的一点总结

ADO.NET提供了两个组件,用来访问和处理数据:.NET Framework数据提供程序和DataSet(数据集)。这里叙述ADO.NET对SQL Server数据库的访问。 l .NET F...
  • lcprogram
  • lcprogram
  • 2012年07月12日 14:48
  • 246

黑马程序员_ado.net_连接sql server 总结

---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ---------------------- dotnet 连接sqlserver...
  • one_dream_man
  • one_dream_man
  • 2012年04月26日 10:21
  • 231
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:现在总结ADO.NET应该还不晚
举报原因:
原因补充:

(最多只允许输入30个字)