第九讲 ADO.NET数据访问技术

来源:互联网 发布:mui 电商源码下载 编辑:程序博客网 时间:2024/05/29 13:51

第九讲 ADO.NET数据访问技术

  1. ADO.NET 简介
  2. ADO.NET结构
  3. ADO.NET组件

l      Connection 对象

l      Command对象

l      DataReader对象

l      DataSet对象

ActiveX 数据对象 (ADO) 为基础

XML(扩展标记语言)为格式传送和接收数据

System.Data 命名空间

对于Insert,Update,Delete等单向操作

l      用于 SQL Server .NET Framework 数据提供程序

System.Data.SqlClient 命名空间

l      用于 ODBC .NETFramework 数据提供程序的命名空间

l      System.Data.Odbc 命名空间

l      用于 Oracle .NET Framework 数据提供程序的命名空间

l      System.Data.OracleClient 命名空间

l      使用的名称空间小结

l      SQL Server    Imports System.Data.SqlClient

l      OLE DB          Imports  System.Data.OleDb

l      Oracle            Imports System.Data.OracleClient

l      ODBC            Imports  System.Data.Odbc

.NET Framework 数据提供程序

Connection

SQL 数据提供程序

SqlConnection

OLE DB 数据提供程序

OleDbConnection

Oracle 数据提供程序

OracleConnection

ODBC 数据提供程序

OdbcConnection

ADO.NET 中,必须显式关闭连接,才能释放实际的数据库连接

Connection属性:ConnectionStringDatabase

Connection方法:Close()Open()

Dim objSqlConnection  As New SqlConnection ("server = SQLDB;uid= sa; pwd = password; database = pubs")

objSqlConnection.Open()

objSqlConnection  à  创建的连接对象名称

SQLDB à 存储“pubs”数据库的服务器名称,也可以写成IP地址,如123.101.220.1

本地服务器可以有以下几种写法:

1、(local

2127.0.0.1

3、本地机子名称

uid, pwd à 用户标识和密码

l      Connection对象的作用

l      Connection对象的两种使用方法

l      拖拉控件

l      写代码

l      四种典型的连接方式的应用名称空间和连接字符串的写法

l      SqlConnection

l      OleDbConnection

l      OracleConnection

l      OdbcConnection

Command 对象

Command 对象指定要对数据库执行的操作

.NET Framework 数据提供程序

Command

SQL 数据提供程序

SqlCommand

OLE DB 数据提供程序

OleDbCommand

Oracle 数据提供程序

OracleCommand

ODBC 数据提供程序

OdbcCommand

与数据库建立连接之后,可以使用 Command 对象执行命令并从数据源返回结果

Command属性:CommandText欲执行的内容,可以是SQL语句或者存储过程名称

CommandType:命令类型

Connection

Command方法:ExecuteNonQuery()       返回受影响的行数

ExecuteReader()返回DataReader类型值

ExecuteScalar() 返回第一行第一列

l      SQL 语句的Command设置

Dim objComm As New SqlCommand()

objComm.CommandText="SQL 语句"

objComm.CommandType=CommandType.Text

objComm. Connection=objConnection

l      用存储过程的Command设置

Dim objComm As New SqlCommand()

objComm.CommandText=“sp_DeleteName"

objComm.CommandType=CommandType.StoredProcedure

objComm. Connection=objConnection

Sp_DeleteName是在SQL Server服务器上创建的存储过程

 

使用代码编辑器

Dim objSqlCommand As NewSqlCommand(strSQL);

objSqlConnection  à  创建的 Command 对象名称

strSQL à 任何有效的 SQL 语句

l      Command的作用

l      Command的使用前提

l      Connection打开

l      Command的使用方法

l      命令文本方式

l      存储过程方式

常用方法

描述

ExecuteNonQuery

针对Connection属性中定义的连接,为不返回任何行的查询(UPDATE,DELETE,INSERT)执行定义在CommandText属性中的命令语句。返回一个Integer型数据,指明受查询影响的行的查询。

ExecuteReader

针对Connection属性中定义的连接,执行定义在CommandText属性中的命令语句。

ExecuteScalar

针对Connection属性中定义的连接,执行定义在CommandText属性中的命令语句。只返回结果行集的第一行,丢弃其余任何返回的行。

DataReader对象

功能:提供一种只读的、向前的数据访问方法。

使用DataReader对象的常用步骤:

1、创建数据库连接:

    dim connectstr as string
   connectstr="server=localhost;uid=sa;pwd=;database=pubs"
    Dim objConnection as new sqlconnection(connectstr)

2、打开连接:

    objConnection.Open()

3、使用Reader对象执行SQL语句:
    Dim objCommand As New SqlCommand("Select * from Authorswhere state='CA'", objConnection)
    Dim objReader As SqlDataReader = objCommand.ExecuteReader()
4
、用read()方法检测查询结果是否有记录

    While objReader.Read()

    ...

    end while

5、关闭reader对象,关闭数据库连接
  objReader.Close()
  objConnection.Close()

DataSet对象

数据集(DateSet):使用以离线的方式来操纵数据,这样可以节省系统资源,从而提高应用程序的伸缩性。

使用DataAdapterDataSet对象

常用步骤:

1)创建数据库连接:

     Dim strConnect As String
     strConnect ="server=localhost;uid=sa;pwd=;database=pubs"
     Dim objConnect as new sqlconnection(strconnect)

2)执行SQL语句(select,insert,update,Delete)

    Dim strSelect As String
    strSelect = “SELECT * FROM authors WHERE zip LIKE ‘94%%%’”
3)
创建DataSet对象

   Dim objDataSet As New DataSet()

4)创建DataAdapter对象
    DimobjDataAdapter As New SqlDataAdapter(strSelect, objConnect)

5)DataAdapterFill方法填充DataSet对象

    objDataAdapter.Fill(objDataSet, "Books")

6) 创建DataSet的默认试图DataView作为数据源

   DimobjDataView As New DataView(objDataSet.Tables("Books"))
dgrResult.DataSource = objDataView

 

l      .NET framework 中的 ADO.NET 是一组类,允许应用程序与数据库交互,以便检索和更新信息

l      DataSet DataReader ADO.NET 的两个重要组件。

l      每种 .NET 数据提供程序都是由以下四个对象组成:

l      Connection

l      Command

l      DataReader

l      DataAdapter

l      DataSet

l      Connection 对象用于在应用程序和数据库之间建立连接

l      Command 对象允许向数据库传递请求、检索和操纵数据库中的数据