计算机c#第九章ado
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
sqlConnection
sqlCommand
sqlDataReader SqlDataAdapter
对SQL Server数据源执行命令
从SQL Server数据源中读取只进且只读的数据流
用SQL Server数据源填充 DataSet 并解析更新 建立与OLEDB数据源的连接
System.Data.OleDb
2.2 连接的创建
当我们选择好一个.NET数据提供程序后,我们需要利用数据提供程序 所提供的类的功能来实现数据源的连接。 对于数据源的连接最关键的有两点: 第一点是正确选择所需要的数据提供程序, 第二点便是正确的设置连接字符串.
2.2 连接的创建
2.2.1 连接字符串
连接字符串(Connection String): 是在连接数据源时所提供的必要的连接信息,其中包括连 接的服务器对象,帐号,密码和所访问的数据库对象等信 息。是进行数据连接必不可少的信息,对于连接字符串的 设置我们可以利用工具和手动的方式建立
需要注意的是:在使用SqlConnection类前要注意引用System.Data.SqlClient命 名空间.命令如下: using System.Data.SqlClient;
请记住SqlConnection 类的ConnectionString属性。
2.3 管理连接类的方法和事件
2.3.1 连接类的方法
选择.NET数据提供程序的一般原则
数据提供程序 OLE DB.NET数据提供程序 OLE DB.NET数据提供程序 SQL Server.NET数据提供程序 ORACLE.NET数据提供程序
数据源 Microsoft Access数据库 SQL Server 6.5或更底版本 SQL Server 7.0或SQL Server 2000 Oracle Server
1.1 ADO.NET简介
什么是ADO.NET?
ADO.NET的名称起源于ADO(ActiveX Data Objects),这是 一个广泛的类组,用于在以往的Microsoft技术中访问数据。 之所以使用ADO.NET名称,是因为Microsoft希望表明,这是 在.NET编程环境中优先使用的数据访问接口。 它提供了平台互用性和可伸缩的数据访问。ADO.NET增 强了对非连接编程模式的支持,并支持RICH XML.由于传送 的数据都是XML格式的,因此任何能够读取XML格式的应用 程序都可以进行数据处理。事实上,接受数据的组件不一定 要是ADO .NET组件,它可以是基于一个Microsoft Visual Studio的解决方案,也可以是任何运行在其它平台上的任何 应用程序。
2.2 连接的创建
2.2.1 连接字符串
【例2-2】有一SQL Server 2000数据源,服务器名为Server1,数据库名为 Northwind,用户名为sa,密码为sa,请写出连接字符串格式: 字符串格式为: “Initial Catalog=Northwind;Data Source=server1;UID=sa;PWD=sa;” 说明: 1. Initial Catalog=Northwind;项指明您所要连接的数据库名为 Northwind; 2. Data Source=server1;项指明您想连接的数据库服务器是server1; 3. UID=sa;项指明您登录到SQL Server数据库服务器的用户名是sa; 4. PWD=sa;项指明您登录到SQL Server数据库服务器的密码是sa;
2.2.1 连接字符串
参数
2.2 连接的创建
说明
Data Source Initial Catalog Password 或PWD User ID或UID Connection TimeOut
指明所需访问的数据源,如是访问SQL Server则是指服务 器名称,如是Access则指数据文件名 指明所需访问数据库的名称
Command对象与DataReader对象
3.1 使用连接环境
连接环境是指客户端在处理数据的过程中一直没有与服务器 端断开,一直与服务器保持连接状态,与此环境相反的是非连接环境, 它指的是在数据处理之前与服务器连接,在数据的处理过程中并不 与服务器保持连接状态.本章重点介绍在连接环境下从事数据处理 操作,第4章将向读者介绍非连接环境下数据的处理. 连接环境是早期程序设计中使用较多的一种数据处理方式,其 特点在于处理数据速度快,没有延迟,无需考虑由于数据不一致而导 致的冲突等方面的问题 .
SqlCommand cmd=new SqlCommand();
3.3 数据命令对象的属性和方法
3.3.2 设置数据命令对象的属性
属性 说明
Connection
指定与Command对象相联系的Connection对象
CommandType
指定命令对象Command的类型,有三种选择,分别是Text , StoreProcedure和TableDirect.分别表示是SQL语句,存储过 程和直接的表.
数据提供程序 说明
SQL Server .NET数据提供程序
提供对SQL Server 7.0以上数据库进行访问
OLE DB .NET数据提供程序
提供对早期SQL Server(SQL Server 6.5以下). Sybase, Oracle, DB2 和ACCESS的访问 提供具有ODBC数据源的数据访问 提供对Oracle数据源的数据访问
指明访问对象所需的密码
指明访问对象所需的用户名 指明访问对象所持续的时间,以秒计算,如果在持续的时 间内仍连接不到所访问的对象,则返回失败信息,默认值 为15
Integrated Security或 Trusted Connection
集成连接(信任连接),可选True或False,如果为真表示 集成Windows验证,此时不需要提供用户名和密码即可登录。
2.2 连接的创建
读取连接字符串
System.Configuration中的ConfigurationManager类来获取 web.config配置文件中的连接数据库字符串。 例如: ConfigurationManager.ConnectionStrings[“BookShop”]. ConnectionString。
2.1 选择.NET数据提供程序
什么是数据提供程序? .NET数据提供程序用于连接到数据库,执行命令和查询结果. 它为程序开发者处理不同类型的数据库系统提供了不同的程 序类,它是ADO.NET架构中的核心组件。
2.1 选择.NET数据提供程序
2.1.1 .NET数据提供程序的简介
.NET Framework类库中提供了以下.NET数据提供程序
ODBC .NET数据提供程序 Oracle.NET数据提供程序
2.1.2 .NET数据提供程序类
数据提供程序 命名空间
2.1 选择.NET数据提供程序
类 说明 建立与SQL Server数据源的连接
SQL Server .NE T数据提供 程序
OLE DB .NET数据提 供程序
System.Data. SqlClient
2.2 连接的创建
2.2.3 运行时创建连接
【例2-3】.创建连接到SQL Server 7.0以上的连接,数据库名为Northwind,服务器名为 Zhuos,用户名为sa, 密码为 sa,代码如下: SqlConnection conn=new SqlConnection(); //创建SqlConnection对象 conn.ConnectionString ="Initial Catalog=Northwind;" + “Data Source=zhuos;UID=sa;PWD=sa”; //设置SqlConnection对象的 ConnectionString属性
3.1 使用连接环境
连接环境 优点 只需一次连接,执行速度快,无 需考虑读出的数据与数据 库中数据是否一致的问题
长时间占用连接资源,随着连 接源的增加,Biblioteka Baidu需要的计算 机资源也不断上升
非连接环境 只有在需要连接到数据库的时候才 进行数据源的连接,所以不需占用 太多的计算机资源
一般要进行多次连接,一般执行速度 比连接环境慢,由于读出的数据与 数据库中的数据可能存在不一致 的问题,所以需要考虑冲突问题
2.3.1 连接类的方法
【例2-4】:有一SQL Server 2000数据库,服务器名为zhuos,现要打开此服务器上 的Northwind数据库,用户名和密码都是sa,请写出完成此操作的代码。 System.Data.SqlClient.SqlConnection conn; conn=new System.Data.SqlClient.SqlConnection(); conn.ConnectionString ="Initial Catalog=Northwind;" + "Data Source=zhuos;UID=sa;PWD=sa"; conn.Open(); //此处放置数据处理的代码 conn.Close();
2.2 连接的创建
2.2.1 连接字符串
注意:以上连接字符串中各项需要用分号隔开,每个项的位置没 有关系,可以是任意的.即下面两种字符串格式是完全等价的: “Initial Catalog=Northwind;Data Source=server1;UID=sa;PWD=sa;” “Initial Catalog=Northwind;UID=sa;PWD=sa; Data Source=server1;” 在ASP.NET2.0中,通过配置文件web.config,可以方便地设置 连接数据库字符串,同时也可以容易的读取数据库连接字符串。 连接字符串必须放在<connectionStrings>元素中。
OledbConnection
OledbCommand
OledbDataReader OledblDataAdapter
对OLEDB数据源执行命令
从OLEDB数据源中读取只进且只读的数据流 用OLEDB数据源填充 DataSet 并解析更新
2.1 选择.NET数据提供程序
2.1.3 选择.NET数据提供程序
2.2 连接的创建
2.2.1 连接字符串 【例2-1】有SQL Server 2000数据源,服务器名为Server1,数据库名 为Northwind,采用集成身份证,请写出连接此数据源的连接字符串: 连接字符串为: “Initial Catalog=Northwind;Data Source=server1;Integrated Security=True;” 说明: 1. Initial Catalog=Northwind;项指明您要连接的数据库名称 为Northwind. 2. Data Source=server1;项指明您连接到的数据库服务器的 名称为server1; 3. integrated Security=True;项指明您所登录到数据库的方式 是以集成用户的方式登录。
连接类connection主要有以下三个方法:
1. 2. 3.
Open():表示打开一个已建立好的连接对象 Close( ):表示关闭一个已打开的连接对象,将连接释放到 服务器的连接池中 Dispose():移除连接,从服务器的连接池中删除连接
注意Close( )与 Dispose( )的区别!
2.3 管理连接类的方法和事件
缺点
应用例子
要求及时反映数据库中数据变 数据量访问较大且主要是数据查询 化的系统,对数据库中的数 的系统,如WEB系统中的数据查 据主要进行如插入,修改等 询系统. 需要及时保持一致的系统
3.2 数据命令对象的创建
3.2.1运行时创建数据命令对象 在运行时创建数据命令对象的方法如下: 1.创建基于SQL Server2000的Command对象
如果CommandType指明为Text,则此属性指出SQL语句的内容. 此为默认值. 如果 CommandType指明为StoreProcedure(存储过程),则此属 性指出存储过程的名称