C#使用ADO进行数据库编程.ppt
《C#使用ADO进行数据库编程.ppt》由会员分享,可在线阅读,更多相关《C#使用ADO进行数据库编程.ppt(103页珍藏版)》请在三一办公上搜索。
1、C#程序设计,第9章 使用ADO.NET进行数据库编程,目 录,第9章 使用ADO.NET进行数据库编程,本章以一个简单的访问数据库的Windows应用程序为例,向读者介绍ADO.NET框架的结构,C#数据库访问的常用方法,以及相关数据库访问对象和控件的常用属性和方法。,9.1 概述,微软公司推出的ADO.NET是Microsoft.NET Framework的核心组件,其目的是为了从数据操作中分解出数据访问。ADO.NET的两个核心组件会完成此任务:DataSet(数据集)和.NET Framework数据提供程序,后者是一组包括Connection,Command,DataReader和D
2、ataAdapter对象在内的组件。.NET Framework数据提供程序负责与物理数据源的连接,DataSet代表实际的数据。ADO.NET的结构如图9-1所示。,9.1 概述,9.1 概述,.NET数据提供程序用于连接到数据库,执行命令和查询结果。它为程序开发者处理不同类型的数据库系统提供了不同的程序类。如表9-1所示。,9.1 概述,针对SQL Server的数据提供程序,包含的各种类,见表9-2。,9.1 概述,9.1.1 项目概述9.1.2 数据库设计,9.1.1 项目概述,本章我们要完成一个简单的多窗体的数据库应用程序“电影荐评系统”。该系统要求向登录的用户提供如下功能:1.搜索
3、电影,用户可以输入电影名称关键字,查看系统中包含相应关键字的电影的介绍;2.评价电影,用户可以对感兴趣的或者看过的电影,给出自己的评分和评论;3.推荐电影,向当前登录用户推荐他没看过(没评价过),其他用户评分高的电影。,9.1.1 项目概述,“电影荐评系统”的流程图如图9-2所示。,9.1.2 数据库设计,要完成对电影和电影评价的保存,还要记录登录的用户信息,这个简单的系统需要三张数据表来完成数据的保存。系统的表结构如下:1.filmintro(电影介绍表)表filmintro用于保存系统所有的电影信息,9.1.2 数据库设计,2.users(用户表)表users用于保存系统所有的用户信息,9
4、.1.2 数据库设计,3.scores(电影评价表)表scores用于保存系统所有的评价信息,9.2 窗体设计部分,整个FSS项目,划分成主要的6个任务来完成,首先是窗体的设计,然后是各个窗体代码的完成。C#Winform应用程序的编制步骤,一般是先构建窗体,然后补充窗体上相应控件的事件过程代码,因此我们的讲解也分成两步来进行完成。本节完成对“电影荐评系统”的窗体绘制。该系统包含了5个基本窗体,分别是系统登录窗体、“导航”窗体、“搜索电影”窗体、“评价电影”窗体以及“推荐电影”窗体。,9.2 窗体设计部分,任务9.1 各窗体的设计C#Winform应用程序的编制步骤,一般是先构建窗体,然后补充
5、窗体上相应控件的事件过程代码,因此我们的讲解也分成两步来进行完成。本任务完成对“电影荐评系统”的窗体绘制。该系统包含了5个基本窗体,分别是系统登录窗体、“导航”窗体、“搜索电影”窗体、“评价电影”窗体以及“推荐电影”窗体。,9.2 窗体设计部分,任务9.1 任务实施(一)在Visual Studio中建立Winform项目(1)设置Visual Studio的开发语言环境初次打开Visual Studio 2008如果开发语言不是C#,可以在如果打开的Visual Studio当前针对的开发语言不是C#,那么选择菜单栏里的【工具】|【导入与导出设置(I).】如图9-3,即打开“导入与导出设置向
6、导”对话框,选择【重置所有设置】单选项,单击【下一步】按钮,如图9-4所示。,9.2 窗体设计部分,任务9.1 任务实施(一)在Visual Studio中建立Winform项目(1)设置Visual Studio的开发语言环境,9.2 窗体设计部分,任务9.1 任务实施(一)在Visual Studio中建立Winform项目(2)新建FSS项目选择【文件】|【新建】|【项目】命令,打开“新建项目”对话框,在“模板”区域选择“Windows应用程序”,在“名称”框里输入本项目的名称“FSS”,在“位置”框里设置项目保存的路径,单击“确定”完成项目创建。操作如图9-8所示。,9.2 窗体设计部
7、分,任务9.1 任务实施(一)在Visual Studio中建立Winform项目(2)新建FSS项目,9.2 窗体设计部分,任务9.1 任务实施(一)在Visual Studio中建立Winform项目(2)新建FSS项目建立起项目后的Visual Studio界面,如图9-9所示。,9.2 窗体设计部分,任务9.1 任务实施(二)系统登录窗体模块(1)系统登录模块概述系统登录模块主要用于对进入“电影荐评系统”的用户进行安全性检查,以防止非法用户登录系统。验证用户名和密码,如果是合法用户,则允许登录。系统登录模块窗体布局如图9-10所示。,9.2 窗体设计部分,任务9.1 任务实施(二)系统
8、登录窗体模块(2)图片的插入单击“工具箱”调板中的“PictureBox”控件,再在“Form1.cs设计”窗口中单击,会出现图片框控件pictureBox1。拖动周围的控制点将其缩放到合适大小。选中pictureBox1对象,调出“属性”窗格(【视图】|【属性窗口(W)】命令,快捷键Ctrl+W),修改图片框控件“Image”属性,单击“Image”属性右侧的图标,打开“选择资源”对话框,选择【本地资源】单选按钮,单击【导入】,在打开的对话框中,找到要插入图片框的图片文件,单击【确定】完成图片插入。如图9-11所示。,9.2 窗体设计部分,任务9.1 任务实施(二)系统登录窗体模块(2)图片
9、的插入,9.2 窗体设计部分,任务9.1 任务实施(二)系统登录窗体模块(3)添加其他控件该窗体用到的主要控件如表9-6所示。,9.2 窗体设计部分,任务9.1 任务实施(三)“导航”窗体模块(1)“导航”模块概述“导航”窗体,也就是相当于系统的主窗体,通过主窗体可以快速地了解和使用系统支持的所有功能,使用户能够在最短的时间内掌握软件的使用。当用户通过登录模块成功地登录系统后,会进入系统的“导航”窗体,其界面布局如图9-13所示。,9.2 窗体设计部分,任务9.1 任务实施(三)“导航”窗体模块(1)“导航”模块概述,9.2 窗体设计部分,任务9.1 任务实施(三)“导航”窗体模块(2)添加新
10、的窗体新建的项目中,默认只有一个窗体文件,如果要多个窗体在一个项目中,就需要用户自己添加窗体。打开“解决方案资源管理器”窗格,选中项目名称后,单击右键,在快捷菜单中选择【添加】|【Windows窗体】,在弹出的“添加选项”对话框的“名称”框内输入要添加的窗体名称,默认是Form2,Form3.如图9-14示。,9.2 窗体设计部分,任务9.1 任务实施(三)“导航”窗体模块(2)添加新的窗体,9.2 窗体设计部分,任务9.1 任务实施(三)“导航”窗体模块(3)添加控件该窗体用到的主要控件如表9-7示。,9.2 窗体设计部分,任务9.1 任务实施(四)“搜索电影”窗体模块(1)“搜索电影”模块
11、概述“搜索电影”窗体,能够根据用户在“导航”窗体“搜电影”一栏的文本框中输入的关键字,在数据库的“电影介绍表”中搜索,电影名称含有该关键字的电影,并显示在窗体对应的控件中,“搜索电影”窗体界面布局如图9-15所示。,9.2 窗体设计部分,任务9.1 任务实施(四)“搜索电影”窗体模块(2)窗体的分区从前面两个窗体可以看出,我们系统的窗体中都有明显的“分区”。这里用到了Panel控件,来对窗体分区。从“工具箱”中拖入Panel控件,如图9-16所示。,9.2 窗体设计部分,任务9.1 任务实施(四)“搜索电影”窗体模块(3)添加控件该窗体用到的主要控件如表9-8示。,9.2 窗体设计部分,任务9
12、.1 任务实施(四)“搜索电影”窗体模块(3)添加控件,9.2 窗体设计部分,任务9.1 任务实施(五)“评价电影”窗体模块(1)“评价电影”模块概述“评价电影”窗体,能够根据用户在“导航”窗体“评电影”一栏的文本框中输入的关键字,在数据库的“电影介绍表”中搜索,找到与关键字匹配的电影,如果存在,就把与该电影相关的所有评论显示在“评价电影”窗体的“网格视图”控件中。并允许用户插入、修改、删除相应的评论记录。“评价电影”窗体也允许用户由“搜索电影”窗体或“推荐电影”窗体跳转过来。其界面布局如图9-17所示。,9.2 窗体设计部分,任务9.1 任务实施(五)“评价电影”窗体模块(1)“评价电影”模
13、块概述,9.2 窗体设计部分,任务9.1 任务实施(五)“评价电影”窗体模块(2)添加DataGridView控件在工具箱中的“数据”选项列找到DataGridView控件,添加到窗体的Panel1里,添加方法和其他控件一样,需要自行拖出合适的大小。,9.2 窗体设计部分,任务9.1 任务实施(五)“评价电影”窗体模块(3)添加控件该窗体用到的主要控件如表9-9所示。,9.2 窗体设计部分,任务9.1 任务实施(五)“评价电影”窗体模块(3)添加控件,9.2 窗体设计部分,任务9.1 任务实施(六)“推荐电影”窗体模块(1)“推荐电影”模块概述“推荐电影”窗体,能够在“电影评论表”中找出当前登
14、录用户没有评价过的电影,然后根据其他人对电影评分的平均值,按照由高分到低分的原则,向用户列出这些电影的详细介绍信息。窗体结构和“搜索电影”几乎一样,而代码实现逻辑完全不同,其窗体布局如图9-19所示。,9.2 窗体设计部分,任务9.1 任务实施(六)“推荐电影”窗体模块(1)“推荐电影”模块概述,9.2 窗体设计部分,任务9.1 任务实施(六)“推荐电影”窗体模块(2)添加控件该窗体用到的主要控件如表9-10所示。“推荐电影”模块概述,9.2 窗体设计部分,任务9.1 任务实施(六)“推荐电影”窗体模块(2)添加控件,9.2 窗体设计部分,任务9.1 支撑知识(一)DataGridView控件
15、DataGridView 控件是在.NET Framework 2.0 版中新增的,提供一种强大而灵活的以表格形式显示数据的方式。可以使用 DataGridView 控件来显示少量数据的只读视图,也可以对其进行缩放以显示特大数据集的可编辑视图使用 DataGridView 控件,可以显示和编辑来自多种不同类型的数据源的表格数据。将数据绑定到 DataGridView 控件非常简单和直观,在大多数情况下,只需设置 DataSource 属性即可。在绑定到包含多个列表或表的数据源时,只需将 DataMember 属性设置为指定要绑定的列表或表的字符串即可。,9.2 窗体设计部分,任务9.1 支撑知
16、识(一)DataGridView控件,9.2 窗体设计部分,任务9.1 支撑知识(一)DataGridView控件,9.2 窗体设计部分,任务9.1 支撑知识(一)DataGridView控件,9.2 窗体设计部分,任务9.1 支撑知识(二)Panel控件panel是一个服务器端控件,也是一个容器控件。用于包含其它服务器控件或其它内容并控制这些内容的显示时机。在某些场合,这个控件是很有用的。比如在制作一个注册项很多的注册页面时,通常的做法是将所有注册项放在一个页面上,利用panel就可以实现将一个页面的内容分段显示,这样用户在注册时,感觉就好像是在访问多个页面。,9.3 代码设计部分,完成了对
17、五个窗体绘制的工作之后,需要为每个窗体的相关控件,添加事件过程代码,才能让用户通过窗体上的控件,来访问或修改数据库。,9.3 代码设计部分,任务9.2“登录”窗体代码实现完成了对五个窗体绘制的工作之后,需要为每个窗体的相关控件,添加事件过程代码,才能让用户通过窗体上的控件,来访问或修改数据库。,9.3 代码设计部分,任务9.2 任务实施“登录”窗体的代码添加(1)命名空间的引用由于我们访问的数据库是SQL Server,访问数据库相关的数据提供程序对象都包含在命名空间中,在程序的开头要加上对这个命名空间的引用,即:using;否则,每写一个类,都需要把它处在的命名空间情况完整地写出来。,9.3
18、 代码设计部分,任务9.2 任务实施“登录”窗体的代码添加(2)窗体间数据的共享该实验系统采用了最简单的方式来实现不同窗体间的数据共享,即用公共静态变量来办到。公共属性决定了窗体里的该变量能够被其他窗体或模块里的过程调用,静态属性决定了当前窗体关闭后,仍能够保持该变量的值存在。在“登录”窗体Form1的类体中,定义全局静态变量userid,用以标示登录的用户:/定义全局静态变量userid,标示登录的用户 public static string userid;,9.3 代码设计部分,任务9.2 任务实施“登录”窗体的代码添加(3)【登录】按钮事件代码在设计视图中,双击【登录】按钮,为其添加单
19、击事件代码(4)【退出】按钮事件代码如下:private void btnEnd_Click(object sender,EventArgs e)Application.Exit();,9.3 代码设计部分,任务9.2 支撑知识(一)连接(SqlConnection对象)的创建1.连接字符串要实现数据源的连接,首先要引出连接字符串的概念。连接字符串(Connection String)是在连接数据源时所提供的必要的连接信息,其中包括连接的服务器对象、账号、密码和所访问的数据库对象等信息,是进行数据必不可少的信息。一般,一个连接字符串中所包含的信息,9.3 代码设计部分,任务9.2 支撑知识(一
20、)连接(SqlConnection对象)的创建1.连接字符串一个连接字符串中所包含的信息,如表9-14所示。,9.3 代码设计部分,任务9.2 支撑知识(一)连接(SqlConnection对象)的创建2.运行时创建连接要建立连接,就需要新建Connection类的实例,如果数据库是SQL Server,那么就要创建SqlConnection类的实例,当连接对象创立后,紧接着就要对对象的连接字符串属性进行设置。,9.3 代码设计部分,任务9.2 支撑知识(一)连接(SqlConnection对象)的创建3.Connection(连接类)的方法当建立好一个连接对象后,就可以使用已经创建好的这个对
21、象,进行诸如打开、关闭等操作,同时可以针对对象状态的变化而变化对象的操作。连接类SqlConnection主要有以下3个方法:Open()表示打开一个已建立好的连接对象。Close()表示关闭一个已打开的连接对象,将连接释放到服务器的连接池中,以便下次启动相似的连接时能快速地建立连接。Disposed()移出连接,从服务器的连接池中删除连接,以保存服务器资源。,9.3 代码设计部分,任务9.2 支撑知识(二)命令(SqlCommand对象)的创建在连接好数据源后,就可以对数据源执行一些命令操作。命令操作包括从数据存储区(数据库、数据文件等)检索或对数据存储区进行插入、更新、删除操作。在ADO.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 使用 ADO 进行 数据库 编程
链接地址:https://www.31ppt.com/p-6502338.html