版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学习情境7 SQL Server编程访问技术,情境引入,在.NET环境下利用C#语言编写应用程序,则需要特定的数据库访问技术,如ODBC、OLEDB、DAO、ADO.NET,其中, ADO.NET 是目前流行的.NET 平台上的数据库访问技术。,本情境学习目标,掌握ADO.NET的基本体系结构 掌握ADO.NET对常见数据库进行访问的方法 掌握在C#中进行一般的数据库调用方法,本情境工作任务,ADO.NET数据提供程序及使用 ADO.NET数据集及应用 数据绑定,工作任务1 ADO.NET数据提供程序及使用,一、相关资讯,1、ADO.NET概述 ADO.NET(ActiveX Data Obj
2、ects.NET)是微软公司开 发的访问数据库的新接口,其实质是一组向.NET程序员公 开数据访问服务的类,为创建分布式数据共享应用程序提供 了一组丰富的组件。 它具有对关系数据、XML文档和应用程序数据的访问能 力,是迄今为止最有效的数据库访问技术。ADO.NET支持 多种开发需求,包括创建应用程序、工具、语言或Internet 浏览器使用的数据库客户端应用程序和中间层业务对象。 简而言之,ADO.NET是.NET提供的为访问各种数据源提供 统一接口和方法的数据访问技术。ADO.NET包括两大部分: 数据提供程序和数据集(DataSet)。,ADO.NET对象模型: .NET Framewo
3、rk 数据提供程序是专门为数据处理以及快速地只进、只读访问数据而设计的组件,它由Connection、Command、DataReader和DataAdapter对象组成。该组件的主要功能是将数据源中的数据取出,放入DataSet对象中,或将修改后的数据存回数据源。 DataSet专门为独立于任何数据源的数据访问而设计的组件,用于多种不同的数据源和XML数据,它像一个内存数据库,可以包含一个表或多个表,表与表之间可以建立关系。,2、数据提供程序及组成 根据将要访问的数据库类型,.NET框架提供了不同有数据提供程序: (1)SQL Server数据提供程序,用以访问SQL Server数据库 (
4、2)OLE DB数据提供程序,用以访问任何与OLE DB兼容的数据库 (3)ODBC数据提供程序,用访问ODBC建立的数据库 (4)Oracle数据提供程序,用以访问Oracle 8以上版本的数据库,2、数据提供程序及组成 每个数据提供程序都是由以下的核心对象组成: Connection对象,用于连接数据源,即建立对物理数据库的连接; Command对象,用于向数据源发出各种SQL命令,如返回数据、修改数据、运行存储过程以及发送或检索参数信息等。即在数据源上执行的 SQL 语句或者存储过程; DataReader对象,从数据源中提供高性能的数据流。即从数据源中获取只向前的、只读的数据流; Da
5、taAdapter对象,提供连接DataSet对象和数据源的桥梁,它使用Command对象在数据源中执行SQL命令,以便将数据加载到DataSet对象中,使DataSet中数据的更改与数据源保持一致。 注意:以上所有对象都两种类型,SQLXXXX对象和OleXXXX对象。其中以Sql开头的对象用来连接SQL Server数据库,它们存储于System.Data.SqlClient命名空间中;以OleDB开头的对象用于连接其他OLE DB数据库(Access、Oracle等),它们存储于System.Data.OleDB命名空间中。,3、Connection的创建及连接设置 要对数据库进行操作,
6、首先要建立起对该数据库的连接。在.NET环境下,通过SQL Server数据提供程序的SqlConnection对象建立对SQL Server数据库的连接;通过OLE DB数据提供程序的OleDbConnection对象建立对Access和Oracle提供有OLE DB访问接口的数据库的连接;OracleConnection类的对象连接Oracle数据库;而OdbcConnection类的对象连接任何支持ODBC数据库。 Connection对象,其实质上就是连接字符串(ConnectionString),通过设置该字符串的属性来管理数据源的连接。它的属性如下表。其语法格式: string C
7、onnectionString=“server=;database=;trusted_connection=true|false;uid=;pwd=” SqlConnection conn = new SqlConnection(ConnectionString);,3、Connection的创建及连接设置 Connection对象的属性,3、Connection的创建及连接设置 SQL SERVER数据库的两种连接模式。 1、Windows模式连接,以windows连接模式必须 将trusted_connection=true 。 例如: string myconnection = serv
8、er=(local);database=news;trusted_connection=true; SqlConnection conn = new SqlConnection(myconnection);,3、Connection的创建及连接设置 SQL SERVER数据库的两种连接模式。 2、混合模式连接,使用此种连接模式必须输入登录名和登陆口令。 例如: string myconnection = server=(local);database=news;uid=sa;pwd=sa; SqlConnection conn = new SqlConnection(myconnection)
9、;,3、Connection的创建及连接设置 Connection的方法。 1、Open方法,用于打开由ConnectionString属性指定的数据源连接。格式如下: 连接对象名. Open() 2、Close方法,用于断开由ConnectionString属性指定的数据源连接。格式如下: 连接对象名. Close(),4、Command命令 Command对象主要是运行SELECT、INSERT、UPDATE或DELETE之类的SQL语句命令,同时还可以调用存储过程或从特定表中取得记录。 这使用Command对象的命令,这些命令都是一次性命令,即执行一个SQL命令或一个存储过程,并返回一个
10、操作结果。,4、Command命令 Command对象的创建方法有: 使用无参数的构造函数来创建Connection对象的新实例,然后设置适当的属性值 。其格式: SqlCommand com=new SqlCommand( ); com.Connection=cn; 使用带参数的构造函数, 并指定查询字符串和Connection对象。其格式: SqlCommand com=new SqlCommand(命令文本,cn); 调用Connection对象的CreateCommand()方法 。其格式: SqlCommand com=cn.CreateCommand( );,4、Command命令
11、 Command对象属性。,4、Command命令 Command对象方法,5、DataReader对象 DataReader对象,用于从数据源中读取只进且只读的数据流。 我们只需要按顺序读取数据而不需要其他操作时,可以使用DataReader对象。 DataReader类是抽象类,因此不能直接实例化,而是通过执行Command对象的ExecuteReader方法返回DataReader实例。,5、DataReader对象 DataReader对象属性,5、DataReader对象命令 DataReader对象方法,6、DataAdapter对象 DataAdapter对象,称为“数据适配器”
12、,是一种通用类,可以执行针对数据源的各种操作,包括更新变动的数据,填充数据集以及其他操作。 DataAdapter对象在DataSet与数据之间起桥梁作用。数据库中的数据需要通过数据适配器的运输才存放到数据集中,而在数据集中的任何修改也要通过数据适配器提交到数据库中,数据适配器就象仓库和车间临时仓库之间运输材料的运货车,而数据连接则是运货车行走的路线。,6、 DataAdapter对象 DataAdapter对象属性 DataAdapter对象的常用属性形式为XXXCommand,用于描述 和设置操作数据库。使用DataAdapter对象,可以读取、添加、更新 和删除数据源中的记录。对于每种操
13、作的执行方式,适配器支持以 下4个属性,类型都是Command,分别用来管理数据操作的“增”、 “删”、“改”、“查”动作。,6、 DataAdapter对象 DataAdapter对象方法,7、使用ADO.NET开发数据库应用程序的一般步骤 (1)根据使用的数据源,确定使用的.NET Framework 数据提供程序; (2)建立与数据源的连接,需使用Connection对象; (3)执行对数据源的操作命令,通常是SQL命令,需 使用Command对象; (4)使用数据集对获得的数据进行操作,需使用 DataReader、DataSet等对象; (5)向用户显示数据,需使用数据控件。,【任务1】编写一个用来测试连接的应用程序,用来建立与当前目录下的 SQL Server2008 “student”数据库的连接。程序的设置界面如图1所示,程序的运行界面如图2所示。,三、任务实施,图1 程序设计界面,图2 程序运行界面,代码如下,【任务2】已知在应用程序当前目录下,有一个名为“Student”的数据库,该数据库中有一个名为student的表,表中的数据如图3所示。请使用Command对象执行SQL命令向表中插入一个学生的信息,学生数据如下: 4 赵六 18 插入后,student表中的内容如图4所示。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026年食品质量安全管理与认证习题
- 2025-2026年经济学考研区域经济学模拟试题
- 2025-2026年建筑工程资料员资料管理模拟试题
- 2025-2026年四川省北师大版小学六年级英语第10课Holidays单元检测卷
- 某纺织公司财务管理细则
- 软件测试检测合同
- 医院预防保健科2026年工作总结及下一步计划
- 计算基础教程 11
- 凤凰烟酒茶行业分析报告
- 《服务礼仪规范》课件
- 2026秋新教材湘科版小学科学六年级上册第一单元《延续和进化》分层作业(附答案)
- 《鉴定人与鉴定结论》课件
- 2026年沈阳职业技术学院高职单招笔试职业技能测验试题库含答案解析3套试卷
- 危化品经营许可证考试题库
- 2026年秋季七年级生物上册教学计划(人教版)
- HDU高依赖病房院内感染防控制度
- 2、3、4的乘法口诀 教学设计(小学数学·人教版二年级上册)
- 2025中国银行中银理财有限责任公司招聘16人笔试历年典型考题及考点剖析附带答案详解2套
- 珠玉混声合唱谱
- 青年工作委员会工作制度
- 2026校招:陕西汽车控股集团面试题及答案
评论
0/150
提交评论