Visual C#.NET程序设计教程 第2版 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 罗福强 白忠建 杨剑 C# Ch11(人邮)

上传人:E**** 文档编号:89427941 上传时间:2019-05-25 格式:PPT 页数:33 大小:632.50KB
返回 下载 相关 举报
Visual C#.NET程序设计教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者 罗福强 白忠建 杨剑 C# Ch11(人邮)_第1页
第1页 / 共33页
Visual C#.NET程序设计教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者 罗福强 白忠建 杨剑 C# Ch11(人邮)_第2页
第2页 / 共33页
Visual C#.NET程序设计教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者 罗福强 白忠建 杨剑 C# Ch11(人邮)_第3页
第3页 / 共33页
Visual C#.NET程序设计教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者 罗福强 白忠建 杨剑 C# Ch11(人邮)_第4页
第4页 / 共33页
Visual C#.NET程序设计教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者 罗福强 白忠建 杨剑 C# Ch11(人邮)_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《Visual C#.NET程序设计教程 第2版 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 罗福强 白忠建 杨剑 C# Ch11(人邮)》由会员分享,可在线阅读,更多相关《Visual C#.NET程序设计教程 第2版 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 罗福强 白忠建 杨剑 C# Ch11(人邮)(33页珍藏版)》请在金锄头文库上搜索。

1、2019/5/25,第十一章 C#数据库编程技术,1. 总体要求 初步掌握ADO.NET的使用方法,包括Connection 、Command、DataSet、DataAdapter、DataReader对象DataGridView 控件和的使用方法。 了解LINQ的基本语法,熟悉LINQ to SQL的使用方法。 2. 学习重点 使用Connection 和Command 对数据库的操作。 掌握DataSet、DataAdapter、DataReader 对象的作用和使用方法。 使用DataGridView结合ADO.NET对数据库的修改和查询操作。,第十一章 C#数据库编程技术,主要内容,

2、LINQ to SQL编程,11.3,11.2,ADO.NET概述,1 使用ADO.NET访问数据库,11.1 ADO.NET概述,11.1.1 ADO.NET的架构 11.1.2 ADO.NET的一般使用步骤,返回,11.1.1 ADO.NET的架构,1Data Provider,Data Provider提供了DataSet和数据库之间的联系,同时也包含了存取数据库的一系列接口。 .NET Data Provider 包括: System.Data.SqlClient System.Data.OleDb System.Data.Odbc System.Data.OracleClient .

3、NET Data Provider有4个核心对象: Connection:用于与数据源建立连接; Commmand:用于对数据源执行指定命令; DataReader:指向数据源的仅向前的只读数据流; DataAdapter:自动将各种操作变换到相应的SQL语句。,2DataSet,ADO.NET的核心组件是DataSet,可以将DataSet想像成内存中的数据库,它是不依赖于数据库的独立数据集,这里的独立是指即使断开数据连接或关闭数据连接,DataSet依然可用。 在ADO.NET中,DataSet是专门用来处理从数据源获得数据,无论底层的数据是什么,都可以使用相同的方式来操作从不同数据源取得

4、的数据 DataSet内部是用XML来描述数据的。,11.1.2 ADO.NET的一般使用步骤,1. 准备工作 2. ADO.NET访问数据库的编程思路,1. 准备工作,在使用ADO.NET访问数据库之前,先要作好准备工作。如果不存在数据库,应当先创建数据库。创建数据库时,注意选择合适的数据库管理系统。 【实例11-1】使用Visual Studio .NET 2010建立一个学生成绩管理数据库MySchool,用于实现上一章的学生成绩管理系统的相应操作。该数据库有4个表,包括用户表、学生表、课程表和成绩表。 各表结构:见教材 操作演示,2. ADO.NET访问数据库的编程思路,S1:使用us

5、ing添加System.Data及其相关子命名空间的引用(如System.Data.SqlClient)。 S2:使用Connection对象连接数据源; S3:视情况使用Command对象、DataReader对象或DataAdpter对象操作数据库; S4:将操作结果返回到应用程序中,进行进一步处理。,11.2 使用ADO.NET访问数据库,11.2.1 使用Connection连接数据库 11.2.2 使用Command对象访问数据库 11.2.3 使用DataReader对象访问数据库 11.2.4 使用DataAdaper与DataSet对象操作数据库,返回,11.2.1 使用Con

6、nection连接数据库,1. Connection对象的成员 ConnectionString:用来设置将要访问的数据库的连接字符串 Open():用来打开数据库; Close():用来关闭与数据库的连接。 Windows集成验证的连接字符串: Data Source=服务器名; Initial Catalog=xxx; Integrated Security=true SQL Server身份验证的连接字符串: Data Source=服务器名; Initial Catalog=xxx; User ID=用户名; Pwd=密码,2. Connetion对象的连接过程,例如,以下代码连接My

7、School数据库: string s=” Data Source= .sqlexpress; Initial Catalog=MySchool; Integrated Security=true“; / 连接字符串 SqlConnection conn = new SqlConnection(s); conn.Open(); / 打开数据库连接 /执行数据库操作 conn.Close(); / 关闭数据库连接,3. 数据源的连接管理,(1)利用trycatchfinally语句块 在trycatchfinally语句块中,使用try语句打开数据源的连接,使用catch语句捕获异常,使用fin

8、ally语句确保关闭数据源的连接。 (2)使用using语句块 在程序中大量使用trycatchfinally语句块将造成程序的可读性下降,为了更有效地管理数据源的连接,C#提供了using语句块,用来自动管理数据源连接。当数据访问结束之后using语句首先自动关闭数据源连接,然后释放连接对象,因此可大大简化编程。,11.2.2 使用Command对象访问数据库,Command对象用来封装将要发送给数据源的操作命令。 Command对象的常用成员: CommandText属性:用来设置将要执行的SQL语句或将要调用的存储过程名。 CommandType属性:用来设置命令类型,其值=Text时表

9、示执行SQL语句(默认),= StoredProcedure时表示调用存储过程。 Connection属性:用来指定所要使用的数据连接。 ExcuteNonQuery方法:执行操作,返回受影响的行数。该方法一般用来执行SQL中的Update、Insert和Delete等操作 ExcuteReader方法:执行操作,返回DataReader对象。 ExcuteScalar方法:执行操作,返回执行结果。该方法只能执行Select语句,通常用于统计。,案例演示,【实例11-2】实现学生成绩管理系统的用户登录功能。 【实例11-3】完成MySchool添加学生信息功能,向数据库MySchool的Stu

10、dentMsg表添加学生信息。 操作步骤:见教材 详细代码:见教材,11.2.3 使用DataReader对象访问数据库,DataReader提供了仅向前和只读的操作方式,一次只读取一条记录,因此可提高应用程序的性能,大幅度减轻对内存的需求。 主要成员包括: HasRows属性:表示是否包含一行或多行的数据。 Read ()方法:指向下一行记录,如果下一行有记录,则读出该行并返回true;否则返回false。 GetName()方法:返回当前行的某一字段的名称。 GetValue()方法:返回当前行的某一字段的值。相似有GetString、GetDateTime、GetBoolean、GetF

11、loat、GetInt32等。 Close ()方法:关闭 DataReader 对象。,案例演示,【实例11-4】完成MySchool的学生信息管理功能,包括能够逐条浏览学生信息,能够删除和修改当前学生记录。 详细源代码:见教材,11.2.4 使用DataAdaper与DataSet对象操作数据库,1DataAdaper DataAdapter(数据适配器)用于检索和保存数据。,DataAdapter的工作机制,首先DataAdapter使用Connection连接数据库,然后使用Command所封装的命令来获取数据,并把所获得数据填充到DataSet之中。当DataSet的数据被更新时,D

12、ataAdapter反过来负责更新数据库。 DataAdapter的工作机制决定了它与DataReader的根本区别, 它在访问数据库期间,应用程序不要求与数据库保持连接,只要求在填充DataSet或者更新数据源时打开数据库的连接,更新操作一旦结束即自动关闭数据库的连接。这种断开式访问数据库的特点能够保证数据库系统的高效运行,常用方法有: Fill():执行查询并将结果填充到DataSet或DataTable Update():将更新返回数据源。,2. DataSet,3. DataAdapter和DataSet的使用,S1:创建 DataAdapter对象和DataSet 对象 S2:根据需

13、要将已创建的Command对象赋值给SqlDataAdapter的SelectCommand、InsertCommand、UpdateCommand或DeleteCommand属性。 S3:调用DataAdapter对象的Fill方法填充数据集,,4DataGridView,DataGridView控件用于显示数据,在使用时,首先需要指定其数据源(即DataSource 属性),步骤如下: (1)在窗体中添加DataGridView控件; (2)设置 DataGridView 控件和其中各列的属性; (3)设置 DataSource 属性,指定数据源。 重要成员包括如下: Columns属性:

14、包含的列的集合,表11-9列出了DataGridView中各列的主要属性。 DataSource属性:DataGridView 的数据源 ReadOnly属性:指示是否可以编辑单元格 Update()方法:把数据集的更新返回数据源保存。,案例演示,【实例11-5】完成MySchool的课程信息管理功能,提供浏览、编辑和删除课程信息功能。 详细代码:见教材,11.3 LINQ to SQL编程,11.3.1 LINQ概述 11.3.2 LINQ的查询子句与表达式 11.3.3 LINQ to SQL的应用,返回,11.3.1 LINQ概述,LINQ to SQL 是 Framework 3.5

15、的一个组件,提供了用于将关系数据作为对象管理的运行时基础结构。 在 LINQ to SQL 中,关系数据库的数据模型映射到应用程序中的对象模型。 当应用程序运行时,LINQ to SQL 会将对象模型中的LINQ自动转换为 SQL,然后将它们发送到数据库进行执行。当数据库返回结果时,LINQ to SQL 会将它们自动封装到对象之中。 因此,使用 LINQ to SQL时,不需要编写SQL命令,只需将程序中的对象模型映射到关系数据库的数据模型,之后LINQ就会按照对象模型来执行数据的操作。,LINQ to SQL的基础类,LINQ to SQL的基础类封装在System.Data.Linq和S

16、ystem.Data.Linq.Mapping命名空间之中。 其中,前者包含了支持与 LINQ to SQL 应用程序中的关系数据库进行交互的类;后者包含了用于生成表示关系数据库的结构和内容的 LINQ to SQL 对象模型的类。 在System.Data.Linq中,有一个称为DataContext的类,它是 LINQ to SQL 框架的主入口点,代表那些与数据库表连接映射的所有实体的源。它会跟踪对所有检索到的实体所做的更改,并且保留一个“标识缓存”,该缓存确保使用同一对象实例表示多次检索到的实体。,2. LINQ to SQL的应用步骤,(1)创建对象模型 即:定义若干个映射数据库表的类,并使用元数据属性声明它为实体类。 例如:以下代码声明了两个类,一个代表学生成绩管理系统的MySchool数据库,另一个对应其中的学生表StudentMsg。 Table(Name=“StudentMsg“) public class StudentMsg private int _StudentId; private s

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号