ADO.NET 访问 Sql Server2008(一)

           ADO.NET 是微软的 .NET  FrameWork中所包含的一组类 ,可以提供应用程序与数据库进行 通信  。      

  在以前的 数据库访问技术中,对于数据库的操作必须是在有连接的环境中,应用程序需要和数据源保持持续的链接  ,伸缩性和可扩展性比较差,占用资源也是比较多的 、

但是在ADO.NET中解决了这个问题  ,保证我们在  无连接的环境下也可以进行数据库的操作 。

      原理是这样:用户可以将数据源的子集下载到本地中,然后对本地的数据子集进行 操作,操作完之后 在连接到 网络 .并且更新子集到数据库 ,这样就完成了 所谓的无连接数据库访问 。 

      ADO.NET 的2个核心的组件是    DataSet 和 .NET 数据提供程序 ,  .

      DataSet  稍后介绍 

      .NET 数据提供程序不尽相同     有 SQL Server .NET数据提供程序    ODBC .NET 数据提供程序    OLE DB .NET 数据提供程序     Oracle .NET数据提供程序等等 、、 

     

    ADO.NET 访问数据流流程  

   

    1、与数据库的链接通过  SqlConnection类      在进行数据库的操作的时候  ,我们必须建立起和数据库的链接

     

Public NotInheritable Class SqlConnection _
	Inherits DbConnection _
	Implements ICloneable

         SqlConnection类的实例表示了一个应用程序 和数据库只见的链接  ,很多语言访问数据库第一步都是这样  ,比如JDBC访问数据库中 获取一个 Connection对象一个 样 . 

         Dim  str  as  new String="Data Source=.\SQLEXPRESS;Initial Catalog=MyDB;Persist Security Info=True;User ID=sa;Password=1243"

          Dim  cn as  new SqlConnection    

         cn.ConnectionString=str //对 连接字符串进行赋值  我们也可以在构造 SqlConnection的时候进行初始化     

          cn.open()    //打开一个数据库     在建立了和数据库的连接之后 那么我们就要可以打开一个数据库       

2.  通过 SqlCommand对象来执行 SQL语句     

       这个类有三个  执行SQL语句的方法 每个方法含义不同 

        ExecuteReader   返回结果是一个 行的集合 ,返回SqlDataReader对象  我们可以对这个结果集进行数据的检索操作 下面的例子就是这个方法的实现

        ExecuteScalar    执行返回但一结果的命令  比如说我们条件查询  selete  count(* )  from  usertable  where id=111     那么返回的结果是一个值  我们使用这个  

        ExecuteNonQuery  执行 Update   Insert   Delete 改变数据库  但是 无记录集返回的 SQL命令       返回的是受影响的行数      

        接着上面的代码 下来: 

        dim  s  as new  SqlCommand () //构造SqlCommand对象

        s.Connection=  cn //对Connection属性赋值

        s.sqlString="select *  from  table" //sql  语句

        SqlDataReader  r=s.ExecuteReader() //执行sql语句   

 

3.  对返回的 SqlDataReader对象进行 检索   获得 结果记录集           、、 

      SqlDataReader类中包含着对结果记录集进行操作的方法  

       GetXXX(int  Column)  //根据列索引返回值 索引是基于  0开始的 这与  JDBC中访问数据库时候的 1开始不一样  

      GetXX(ByVal  ColumnName as  String)  //根据列的名字返回值  

      GetValues()  返回所有列的值结果是一个对象数组          

 

        接着上面的代码来    

        while(r.read())   //r.read()将数据指针向前移动一行 如果存在记录 那么 返回True  否则 返回 false   

 { 

      r.GetString(0)  ;//获得第一行的数据 

     r.GetString(1)  ;//获得第二行的数据

 

 

 4、在 执行SQL语句的时候 顺便带上 参数  在 一般情况下 我们用不到  ,具体用法如下

        //m为SqlCommand对象

       Dim sql As New SqlParameter
        sql.DbType = DbType.Int32
        sql.ParameterName = "@id"
        sql.Value = 100
        Dim sql2 As New SqlParameter
        sql.DbType = DbType.Int32
        sql.ParameterName = "@id1"
        sql.Value = 100
        m.Parameters.Add(sql)
        m.Parameters.Add(sql2)

 

 

 

 

 

 

 

 

时间: 2024-10-27 07:33:54

ADO.NET 访问 Sql Server2008(一)的相关文章

如何用ADO.NET访问SQL SERVER函数

问题描述 如何用ADO.NET访问SQLSEVER函数.代码是这样cm.CommandText="SELECT*FROMLogin(@name,@pwd)";cm.CommandType=CommandType.Text;cm.Parameters.AddWithValue("@name",criteria.Username);cm.Parameters.AddWithValue("@pwd",criteria.Password); 调用时提示对

利用JDBC-ODBC驱动访问SQL SERVER2008

      JDBC-ODBC   的过程是     JSP->JDBC->ODBC-DataBase  所以我们要配置ODBC数据源 跟我们指定的数据库相连接        首先我们需要下载一个  JDBC DRIVER  FOR  SQL SERVER 2008    然后解压后将.jar文件放在Tomact的lib 目录下 或者自己工程的lib目录下      那么我们就可以使用     JDBC-访问  SQL SERVER 了  ..               1.使用 JDBC-

访问数据库-C#VS2010访问SQL数据库

问题描述 C#VS2010访问SQL数据库 private void button1_Click(object sender, EventArgs e) { string ConnectionString = "Server=(local);Integrated Security=SSPI;Database=student"; SqlConnection myconn = new SqlConnection(ConnectionString); myconn.Open(); Messa

使用JDBC技术访问SQL数据库,数据库怎么在myeclis中打开呢?表如何显示数据

问题描述 使用JDBC技术访问SQL数据库,数据库怎么在myeclis中打开呢?表如何显示数据 使用JDBC技术访问SQL数据库,数据库怎么在myeclis中打开呢?表如何显示数据 解决方案 http://www.cnblogs.com/fnng/archive/2011/07/18/2110023.html 解决方案二: 使用ADO技术访问SQL 数据库 解决方案三: 首先你要先导一个jdbc-mysql的jar包

ado 链接sql server-c++利用ADO如何通过Internet网访问SQL Server数据库?

问题描述 c++利用ADO如何通过Internet网访问SQL Server数据库? c++利用ADO如何通过Internet网访问SQL Server数据库?需要对电脑设置哪些关键的项. 我的代码:bstr_t strConnect = "Driver={SQL Server};Server=10.0.0.44;Database=test;UID=sa;PWD=111111" //_bstr_t strConnect = "Provider=SQLOLEDB.1;Passw

使用ADO.NET访问Oracle 9i存储过程(上)

本文讨论了如何使用 ADO.NET 访问 Oracle 存储过程(称为 SQL 编程块)和函数(返回单个值的编程块). 您可以使用以下托管数据提供程序连接到 Oracle 数据库:Microsoft .NET Oracle 提供程序.OLE DB .NET 提供程序.ODBC .NET 数据提供程序以及 Oracle 的 ODP.NET 提供程序.本文使用用于 Oracle 的 Microsoft?.NET 框架数据提供程序.使用 Oracle ODP.NET 数据提供程序或用于 OLE DB

ADO数据访问模型初学者入门

ado|初学|访问|数据 ADO(ActiveXDataObjects)是Microsoft提供和建议使用的新型的数据访问接口,具体实现为Automation.这样,程序员可以在各种支持Automation的开发环境下方便地访问ADO对象,如VisualBasic.VisualC++.VisualJ++及Delphi等.ADO被实现为OLEDB之上的一个薄层,这使得ADO可以有更快的访问速度,更易使用,同时更节省资源.值得注意的是,对于VisualStudio6.0的用户而言,现在提供的ADO2

ADO.NET访问数据库的步骤

ado|访问|数据|数据库 不论从语法来看,还是从风格和设计目标来看,ADO.NET都和ADO有显著的不同.在ASP中通过ADO访问数据库,一般要通过以下四个步骤: 1.创建一个到数据库的链路,即ADO.Connection: 2.查询一个数据集合,即执行SQL,产生一个Recordset: 3.对数据集合进行需要的操作: 4.关闭数据链路. 在ADO.NET里,这些步骤有很大的变化.ADO.NET的最重要概念之一是DataSet.DataSet是不依赖于数据库的独立数据集合.所谓独立,就是:即

使用 ADO.NET 访问 Oracle 9i 存储过程

ado|oracle|存储过程|访问 摘要:使用 Microsoft .NET 框架 1.1 中的 Microsoft .NET Oracle 提供程序访问 Oracle 存储过程和函数. 本文讨论了如何使用 ADO.NET 访问 Oracle 存储过程(称为 SQL 编程块)和函数(返回单个值的编程块). 您可以使用以下托管数据提供程序连接到 Oracle 数据库:Microsoft .NET Oracle 提供程序.OLE DB .NET 提供程序.ODBC .NET 数据提供程序以及 Or