现在的位置: 首页 > 综合 > 正文

.NET 数据库操作

2014年02月16日 ⁄ 综合 ⁄ 共 2667字 ⁄ 字号 评论关闭
文章目录

       最近看一个视频当中提到了很多关于数据库访问,连接,操作的对象,都不知道什么意思,于是就上网查了查。看了几集关于数据库访问方面的视频。下边跟大家分享一下。

       现在大家用的连接数据库的方式不外乎一下几种。

       1. DB-LibrarySQL SERVER提供的一系列的操作数据库的函数库,C访问数据库的接口。

       2. DAO是指ActiveX Data ObjectsADOVB6推荐操作数据库的方式。

       3. ODBC最先出来,是用来连接oraclesqlserveraccess等数据库的一种接口标准(后来随着各厂商的扩充,也就都不标准了),各数据库提供实现ODBC驱动程序

     4.OLE DB是微软发明的,用来淘汰ODBC的,OLE
DB
不光可以连接各种数据库,还可以连接exchange、活动目录、甚至操作系统文件目录等各种数据库源(也需要分别使用不同的驱动程序)。

     5.ADO也是微软的,是用来淘汰早起微软的RDODAO的(ADO可以做RDODAO能做的所有事),ADO在上层,通过下面的ODBC或者OLE
DB
来访问数据源(注意不是数据库,因为可访问范围包括活动目录等各种数据)。不过微软目前的ODBC实际是通过OLE DB访问数据源的。

      层次关系:

              应用程序 -> ADO -> ODBC -> OLE DB ->数据源

      或者

              用程序 -> ADO -> OLE DB ->数据源

           

             ADO是一个对象模型,他将OLE DB
提空的API函数进行封装,然后形成一个个的类,以便开发者使用。ADO对象的核心模型如下。基本上所有的操作都要与这三个类有关。

       ADO .NET 是基于.NET
框架结构,面向分布式和以XML数据格式为核心的数据访问技术。ADO.NET对象模型包含了两种最基本的组件:DataSet  .NET data Provider;

数据提供程序直接与数据库打交道,而datasetxml打交道。

        在数据提供程序中有connection commanddatareader
,和dataadapter这四个对象。每个对象具有不同的作用。下边分别介绍一下每个对象的作用。

connection对象

         Connection对象,用于数据库连接,任何对数据源的操作都需要首先建立一个连接对象。针对不同的数据源,可以使用 SqlConnection , OleDbConnection, OdbcConnection, OracleConnection  ,他们都实现了IDbConnection
接口

以创建sql server
数据库的连接为例:(下边的举例,全部用sql server数据库,用c#代码)
在程序当中用代码创建:有两种方式

Command 对象

         Command对象用于完成对数据源的各种操作,包括查询,插入,删除,更新等,可以使用sql语句,也可以使用存储过程。

         .NET同样提空了四种command对象分别是SqlCommand, OleDbCommand, OdbcCommand,OracleCommand对象,根据访问的数据源或者Connection对象的不同,选择相应的Command对象。

         Command的对象的使用方法:

         实例化一个command对象,然后为command对象的connection属性关联一个connect对象,设置Commant的属性,最后执行命令。

         线面分别对command对象的每个属性进行讲解,首先是如何实例化command对象

        然后为commandconnection属性赋值,

 

       设置Command对象的commandtype属性,即为要执行的语句,或者存储过程

 

       最后为执行命令语句,有三种,分别为

       有时还要对command的parameter 属性设置,用来添加参数,

  

        当然是用parameter还有一个很好的作用那就是防止sql注入,详情请参见http://zhidao.baidu.com/link?url=ewuneV4Ni0ToWYDg7YA9xuWSPFx5x2RQdICYft8qCwSadI_bkK4GytuaisvXu_QdkSFnSZfoMC6l5pKDlX_dBq

Datareader对象

       Datareader对象不能关使用new关键字创建。但可以使用ExecuteReader()方法创建。

 

       DataReader是一行一行的读取记录的。当记录中有数据时Read()返回TRUE,当到记录集底部时返回FALSE

 

     重要属性:

            FieldCount:获取当前行中的列数。

            HasRows:获取一个值,该值指示SqlDataReader是否包含一行或多行。

             NextResul:当执行的是sql存储程序,或是可返回多个结果集的批处理sql语句时,该方法将当前行指针移到下一个结果集该操作将当前行指针从第一行的一个行集移到下一个行集)。

      重要方法:

             GetInt16(),GetString(),GetDataTime()使用这些方法可以读取行中某列的值,并以相应的.Net类型返回。 

            GetValue():可以读取行中某列的值,不过返回的是object类型的值。

            GetName():返回行中某列的列名。

            GetInt16(),GetString(),GetDataTime()使用这些方法可以读取行中某列的值,并以相应的.Net类型返回。

            GetValue():可以读取行中某列的值,不过返回的是object类型的值。

            GetName():返回行中某列的列名。

        想要对数据库进行操作,首先要建立数据库连接,然后设置查询条件,或操作语句来对command对象的commandtext属性进行赋值,然后执行sql语句,或者存储过程。最后获取查询结果。

        .NET 的数据库操作,才刚刚学,有什么不对的地方还请不吝赐教。

 

抱歉!评论已关闭.