收藏 分销(赏)

Visual C# NET程序设计教程 第12章 数据库编程技术 课件.pdf

上传人:曲**** 文档编号:459627 上传时间:2023-10-11 格式:PDF 页数:59 大小:4.59MB 下载积分:13 金币
下载 相关 举报
Visual C# NET程序设计教程 第12章 数据库编程技术 课件.pdf_第1页
第1页 / 共59页
Visual C# NET程序设计教程 第12章 数据库编程技术 课件.pdf_第2页
第2页 / 共59页


点击查看更多>>
资源描述
Visual C#.Net 程序设计电子科大成都学院计算机系 第12章数据库编程技术 但1数据库与ADO.NET概述 伍2使用AD0.NET访问数据库 12宜数据库应用程序实例2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计212.1数据库与ADO.NET概述 一、数据库概述 二、常用的SQL语句 三、AD0.Net概述2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计3一、数据库概述 1.表、记录和字段 2.数据库 3.索引 4.关系2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计41,表、记录和字段 关系数据库系统采用关系模型作为数据的组 织方式。表是按某一公共结构存储的一组相似数据,类似于日常生活中的表格。表按行列方式将相关的信息排列成逻辑组。表中的每一行称为记录。列称为字段2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计52.数据库 数据库将数据表表示为多个表的集合,通过 建立表之间的关系来定义数据库的结构 所谓主键是指用来惟一标识表中记录的一个 或一组字段。主键不允许有重复值。外键是指用来连接另一个表、并在另一表中 为主键的字段。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计63.索引 使用索引来提高数据的检索速度 每个索引都有一个索引表达式来确定索引的 顺序,索引表达式既可是一个字段,也可是 多个字段的组合。可以为一个表生成多个索引,每个索引均代 表一种处理数据的顺序。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计74.关系 可以将包含重复数据的表拆分成若干个没有 重复数迈的简单表,并通过建立表与表之间 的关系莱检索相关表中的记录。表与表之间可能会有4种关系 一对一关系:指父表中的记录最多只与子表中的 一条记录相匹配,反之亦然;一对多关系:指父表中的记录与子表中的多条记 录有关。例如,对于客户表和订单表来讲,每个 订要只与一个客户有关二胆每个客户可以直多个 订单,因此当户表和订单表是一对多的关系;多对一关系:与一对多是互补的,即父表中的多 条记录与子表中的一条记录相关;多对多关系:指父表中的多条记录与子表中的多 2010-9-7 条,己录有玦省成都学院精品课程Visual C#.Net程序设计 8:、常用的SQL语句 1.SQL简介 2.SQL的构成 3.select语句 4.delete语句 5.insert 语句 6.update 语句2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计91.SQL简介 SQL(Structured Query Language)语言 是一个综合的、通用的关系数据库语言,其 功能包括查询、操纵、定义和控制。目前,SQL标准有3个版本。一 SQL-89 SQL-92 SQL32010-9-7电子科大成都学院精品课程Visual C#.Net程序设计102.SQL的构成 SQL由命令、子句和运算符等元素所构成的,这些元素结合起来组成用于创建、更新新和 操作数据的语句。SQL命令分两大类DDL(数据定义语言)命 令和DML(数据操纵语言)命令。DDL命令 用于创建和定义新的数据库、字段和索引。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计113.select语句 select语句的功能是从现有的数据库中检索 数据。from子句指定数据的来源,即指出记录来自 哪些表。where子句指定选择记录时要丫的条件。.group by 子句对记录分组。having子句确定在带group by子句的查询中 具体显示哪些记某,而以用having子句来显 示满足指定条件的分组。order by子句对记录排序。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计124.delete语句 delete语句的功能是删除from子句列出的、满足where子句条件的一个或塞个表中的记 录。如:delete from Orders Where Orderld=162010-9-7电子科大成都学院精品课程Visual C#.Net程序设计135.insert语句 insert语句用于添加记录到表中。如:insert into Orders(CustlD,ProductlD,OrderDate,SendDate,Qty)values(t2,57 2008-8-12,2008-8-13,1)2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计146.update语句 update语句按某个条件来更新特定表中的字 段值。如:update Products set Price=8900 whereProducts.Productld=32010-9-7电子科大成都学院精品课程Visual C#.Net程序设计15 ADO.Net 概述.NET FrameworkADO.NET2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计16I ADO.Net 概述 1.Data Provider 2.DataSet2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计171.Data Provider Data Provider提供了 DataSet和数据库之间的联系,同时也包含了查取数据库的一系列接口。通过数据 提供者所提供将葭用程序编程接口(API),可以 轻松地访问各种数据源的数据。SQL Server.NET数据提供程序,用于Microsoft SQL Server数据源,来自于 System.Data.SqlClient 命刍空间;OLE DB.NET数据提供程序,用于OLE DB公开 的数据源数据源,来自System.Data.OleDb命 名空间;ODBC.NET数据提供程序,用于ODBC公开的数 据源来自于System.Data.Odbc命名空间;Oracle.NET数据提供程序用于Oracle数据源,来2010-1于syste岫R球域&牖副怠g坦嬉就Q空间。181.Data Provider.NET Data Provider有4个核心对象:Connection对象用于与数据源建立连接;Commmand对象用于对数据源执行指定命 令;DataReader对象用于从数据源返回一个仅向 前的(forward-only)只读数据流;DataAdapter对象自动将数据的各种操作变 换到数据源相应的SQL语句。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计192.DataSet ADO.NET和核心组件是DataSet。可以将DataSet想像成内存中的数据库,它是不依赖于数据库的独立数据集。在ADO.NET中,DataSet是专门用来处理 从数据源获得数据,而不管底层的数据是 什么,可以使用相同的方式来操作从不同 数据源取得的数据。DataSet内部是用XM1来描述数据的。XML是一种与平台无关、数据无关且能描 述复杂数据关系的数据描述语言。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计2012.2使用ADO.NET访问数据库2010-9-7 电子科大成都学院精品课程Visual C#.Net程序设计 2112.2使用ADO.NET访问数据库 使用Connection对象连接数据库;如果执行不需要返回结果的数据库执行命令或存储 过程,市以饯用Command灯象;DataReader对象用于从数据源中读取仅向前和只 读的数据流。DataSet是数据的内存驻留表示形式,它提供了独 立于数据源的一致关系编程模型。DataSet表示整 个数据集,其中包含表、约束和表之间的关系。与现有数据源的交互通过DataAdapter来控制。DataAdapter对象用于从数据抽中我取数搪、填充 DataSet市和表和约束并将对DataSet的更改提交 回数据源。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计2212.2使用ADO.NET访问数据库 一、使用Connection对象访问数据库 二、使用Command对象访问数据库 三、使用DataReader对象访问数据库 四、使用DataAdaper与DataSet对象操作 数据库2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计23工使用Connection对象访问数据库 Connection的主要成员属性或方法说明Connectionstring连接字符串 一Open()打开数据库连接CloseQ,关闭数据库连接2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计24一、使用Connection对象访问数据库连接数据库步骤(1)定义连接字符串使用SQL Server身份验证:Data Source=服务器名;Initial Catalog=数据库名;User旧=用户名;Pwd=密码使用Windows身份验证:Data Source=服务器名;Initial Catalog=数据库 名;Integrated Security=True(2)仓建Connection对象SqlConnection connection=new SqlConnection(connString);(3)打开与数据库的连接 kconnection.Open();2010-9-7 电子科大成都学院精品课程(Visual C#.Net程序设计 25工使用Connection对象访问数据库【实例121】创建一个Windows项目 DataTestDemo,连接示例数据库pubs。实例121源代码阅读(见教材)操作演不 t 代码分析2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计26工使用Connection对象访问数据库 不同命名空间的Connection对象命名空间对应的Connection对象System.Data.SqlClientSqlConnectionSystem.Data.OleDbOleDbConnectionSystem.Data.OdbcOdbcConnectionSystem.Data.OracleClientOracleConnection2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计27工使用Connection对象访问数据库【实例121】创建一个Windows项目 DataTestDemo,连接示例数据库pubs。实例121源代码阅读(见教材)操作演不 t 代码分析2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计28二 使用Command对象访问数据库 Command的主要成员属性或方法说明ConnectionCommand对象使用的数据库连接CommandText执行的SQL语句-ExecuteNonQuery()执行不返回行的语句,如UPDATE 等,执行后返回受影响的行数ExecuteReader()返U DataReader 对象ExecuteScalarQ执行查询,并返回查询所返回的结 果集中第一行的第一列。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计29二 使用Command对象访问数据库【实例122】在项目DataTestDemo中,连 接示例数据库pubs,并查询数据库中一共 有多少种书目。实例122源代码阅读(见教材)2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计30八使用Command对象访问数据库 使用 ExecuteNonQuery()的步骤:(1)创建 Connection 对象;(2)定义sql语句;(3)创建Command对象;(4)执行 ExecuteNonQuery()方法;(5)根据返回的结果进行处理。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计31八使用Command对象访问数据库【实例123】在项目DataTestDemo中,连 接示例数据库pubs,将所有图书价格下降 10%o实例123源代码阅读(见教材)操作演示代码分析2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计32三、使用DataAdaper与DataSet对象操作数据库 1.DataAdaper与 DataSet 2.DataGridView2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计331.DataAdaper与DataSet DataReader是一种快速的、轻量的、只进的数据访问对 象。当数据量较大,想要大批量的查询和修改数据,或者想在 断开数据库连接的情况下操作数据时可以使用DataSet对 象。DataSet数据集可以简单理解为一个临时数据库。DataSet将数据源的数据保存在内存中并独立于任何数据 库。DataSet中的数据相当于数据源的数据的一个副本,程序 断开和数据源的连接,和内存中的DataSet数据交互。可以及大的加快数据访问和处理速度同时也节约了资源。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计341.DataAdaper与DataSet DataSet的基本结构DataSetDataTableCollectionDataTableDataColumnCollection 1DataRowCollectionDataColumn,;DataRow2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计351.DataAdaper与DataSet二2010-9-7 电子科大成都学院精品课程Visual C#.Net程序设计 361.DataAdaper与DataSet要使用DataSet,必须先创建DataSet对 象,语法如下:DataSet数据集对象=new DataSet(数据集的名称字符 串”);B其中数据集的名称字符串可以省略,示例:创建一个名为“NewDataSet”的数据集DataSet dataSet=new DataSet();创建一个名为“MyData”的数据集DataSet dataSet=new DataSet(MyData);2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计371.DataAdaper与DataSet DataAdapter是DataSet和数据源之间的 桥接器,用于检索和保存数据。DataAdapter的主要成员属性或方法说明SelectCommand从数据库检索数据的Command对象Fill()向DataSet中的表填充数据Update()将DataSet中的数据提交到数据库2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计381.DataAdaper与DataSet使用DataAdapter对象填充数据集时,先 使用Connection连接数据源,然后使用 Fill()方法填充DataSet中的表。(1)创建 SqlDataAdapter对象SqlDataAdapter 对象名=new SqlDataAdapter(查询 用sql语句,数据库连接);(2)填充DataSetDataAdapter对象.Fill(数据集对象,”数据表名称字符串”);2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计391.DataAdaper与DataSet使用SqlCommandBuilder对象来自动生 成更新要的相关命令,简化操作,步骤如 下:(1)自动生成用于更新的相关命令 SqlCommandBuilder builder=new SqlCommandBuilder(已创建的 DataAdapter 对象);(2)将DataSet的数据提交到数据源一DataAdapter对象.Update(数据集对象,“数据 表名称字符串”);2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计402.DataGridView DataGridView控件是一个强大而灵活地用 于显示数据的可视化控件,通过可视化操 作可以轻松定义控件外观,像Excel表格 一样方便的显示和操作数据。使用DataGridView显示数据时,首先需 要指定DataGridView的数据源即 DataSource属性,实现步骤:添加窗体的控件;%卜、(2)设置DataGridView控件和其中各列的属性;(3)设置DataSource属性,指定数据源。2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计412.DataGridView DataGridView的主要属性。属性说明Columns包含的列的集合,可以在其中编辑DataGridView列 的属性DataSourceDataGridView的数据源Readonly是否可以编辑单元格2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计422.DataGridView DataGridView中各列的主要属性属性D ataPropertyN ameHeaderTextVisibleFrozenReadonly说明绑定的数据列的名称列标题文本,_指定列是否可见指定水平滚动D ataGridView时列是否移动指定单元格是否为只读2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计432.DataGridView DataGridView的“编辑列”窗口样式编辑列团区I选定的列(C):绑定列属性)A IDataPropertyName日外观DefaultCellStyleKeaderTextToolTipTextVisibleS行为CoutextMenuS tripStudentMoDataGr i dVi ewCellStyl 学号True无)HeaderText列标题单元格的标题文本.确定取消2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计442.DataGridView【实例12巧】在项目DataTestDemo中,连 接示例数据库pubs,显示数据库中书目信 息。实例125源代码阅读(见教材)操作演示 代码分析国 DataSetFniti tle_i dtitletype 人BUllllCooking wi th.businessBLI2075You Can Comb.businessBU7832Strai ght Tai.businessIBC2222Silicon all.mod_cookMC3021The Gourmet.jinod-cookMC3026The Psycholo.UNDECIDEDPC1035But Is It Us.popular_compPCRFiRRnnnnlay rnmn s9yl显示更新口回区2010-9-7电子科大成都与4512.3数据库应用程序实例 一、添加数据库 二、实现登录功能 三、实现添加学生信息功能 四、实现添加课程信息功能 五、实现学生信息管理功能 六、实现课程信息管理功能 七、实现学生成绩管理功能2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计46、添加数据库【实例126】使用Visual Studio 2005包含 SQL Express建立一个学生成绩管理数据 库MySchooL用于实现第7章中学生成绩 管理系统的相应操作。实例126源代码阅读(见教材)-操作演不 j-代码分析2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计47二、实现登录功能【实例12-7 完成MySchool用户登录功能,当输入正确的用户名和密码时,系统将给出 正确的提示,否则给出错误提示。实例127源代码阅读(见教材)操作演示 J 代码分析2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计48三、实现添加学生信息功能【实例12-8 完成MySchool添加学生信息 功能,向数据库MySchool的StudentMsg 表添加学生信息。实例128源代码阅读(见教材)操作演示济一 代码分析2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计49四、实现添加课程信息功能【实例12-9完成MySchool添加课程信息 功能,向数据库MySchool的CourseMsg表 添加课程信息。实例129源代码阅读(见教材)操作演示 4-代码分析2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计50五、实现学生信息管理功能【实例12-10完成MySchool学生信息管 理功能。本实例将采用VS2005提供的可视 化工具完成对学生信息的增、册h查和修改 功能。实例1210源代码阅读(见教材)-操作演示 小 代码分析2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计51六、实现课程信息管理功能【实例1211完成MySchool课程信息管 理功能。实例1211源代码阅读(见教材)操作演示 f 代码分析2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计52七、实现学生成绩管理功能【实例12送笑系统笞理也)学生管理(S)课程管理()成绩管理(A)帮助QP目叵I冈:理功能实?学生成绩管理实例121目回国债管 J能。课程名:操作演示学生姓名:张慧分数:0修改成技代码分析学号14姓名|张慧 李林 杨健 张慧课程成绩9889米刷新电子商务93关闭就绪学生成统管理2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计53本章要点.NET framework中的ADO.NET是一组类,允许应用程序 与数据库交互,以便检索和更新信息DataSet和.NET数据提供程序是ADO.NET的两个主要组 件每种.NET数据提供程序都是由以下四个对象组成:Connection Command DataAdapter DataReader2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计54本章要点(续)Connection对象用于在应用程序和数据库之 间建立连接 Command对象允许向数据库传递请求、检 索和操纵数据库中的数据 在DataSet对象内表示的数据是数据库的部 分或全部的断开式内存副本 DataAdapter对象用来填充数据集和用更新 集到数据库,这样方便了数据库和数据集之间 的交互2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计55本章要点(续)DataTable表示二个内存数据表,而 DataColumn表示DataTable中列的结构 DataReader对象提供只进、只读和连接式数 据访问,并要求使用专用的数据连接 DataReader对象提供检索强类型化数据的方 法 在数据库编程中使用数据绑定控件时,DataGrid 控件是 Visual Studio.NET 中提供 的最通用、最强大和最灵活的控件2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计56本章要点(续)DataGrid控件以表的形式显示数据,并根据 需要支持数据编辑功能,如插入、更新、删除、排序和分页 使用DataSource属性为DataGrid控件设置 一个有效的数据源 调用Update()方法来执行相应的插入、更新 和删除操作时,将执行DataAdapter的 lnsertCommand UpdateCommand 和 DeleteCommand 属建 定制DataGrid界面2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计57作业 1.书面作业(见本章教材)2.上机实验(见本章教材)2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计58Class OverThank you!2010-9-7电子科大成都学院精品课程Visual C#.Net程序设计59
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 行业资料 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服