第8章 设计数据库应用网站

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第8章设计数据库应用网站教学目标:了解数据库基础知识以及比较常用的数据库系统;掌握SQL语句的格式以及用法;了解ADO.NET,掌握数据库通用接口,ADO.NET的数据模型,以及数据源控件简介;掌握使用数据库控件访问数据库的方法;了解ADO.NET对象、数据集、数据表、数据行、数据列、数据关系相关知识。教学重点:SQL语句的格式以及用法;ADO.NET的数据模型及数据源控件的使用方法;使用数据库控件访问数据库的方法;使用ADO.NET对象访问数据库的方法。教学难点:ADO.NET的数据模型及数据源控件的使用方法;使用ADO.NET对象访问数据库的方法。第8章设计数据库应用网站8.1数据库基础知识8.2使用数据库系统8.3SQL查询基础8.4ADO.NET简介8.5使用数据控件访问数据库8.6使用ADO.NET对象8.1数据库基础知识数据管理技术的三个发展阶段:人工管理阶段、文件技术阶段、数据库技术阶段。人工管理阶段:数据不保存、数据由应用程序自己管理、不共享、和应用程序间不独立。文件技术阶段:数据可以长期保存、独立存放、小范围共享、和应用程序间独立性低。数据库技术阶段:数据可以长期保存、独立存放、共享性高、和应用程序间独立性高、由DBMS统一管理。8.1数据库基础知识8.1.1有关数据库的概念1.数据库(DB):以一定形式组织存放的信息的集合。2.数据库管理系统(DBMS):在OS的支持下运行的软件,提供一系列的命令对DB进行控制和管理。3.数据库应用程序:连接后台数据库的应用程序。4.数据库系统(DBS):硬件环境+软件环境(OS+DBMS)+DB+数据库应用程序+DBA+用户。5.数据模型:数据的组织形式。分为:层次模型、网状模型和关系模型。8.1数据库基础知识8.1.2关系数据库1、关系模型数据库的优点:功能丰富;提供了标准接口(SQL),可以用相似的方法使用不同的关系型数据库,程序通用性好。2、关系数据库的组成:一个关系型数据库中包含若干张表(Table),每张表由若干记录(Record)组成,记录由若干字段(Field)组成。表与表之间通过关系(Relation)连接。3、关系型数据库的分类桌面数据库:如Access、Paradox、FoxPro和dBase等。小型、单机网络数据库:如SQLServer、Oracle、Sybase等。大型、多用户共享8.1数据库基础知识4、表、记录和字段表(Table):一种数据库对象,由若干条记录组成。记录(Record):也称为行,描述客观对象的多个特征。字段(Field):表中每一列,表示客观对象的同一特征点。注意:同一个表中不允许出现两个完全相同的记录,不允许出现两个名称相同的字段。5、关键字、唯一关键字、主键关键字是表中某个字段或多个字段的组合,可以是唯一的,也可以是非唯一的。8.1数据库基础知识唯一关键字用来唯一标识一条记录。主键:惟一关键字中的一个,当主键字段在另一个表B中出现时,在表B中称其为“外键”。6、索引目的:为了更快地访问数据。实质:按关键字的顺序对数据库建立目录表。7、关系表与表之间的关联方式。8.2使用数据库系统8.2.1MicrosoftAccessAccess数据库管理系统是MicrosoftOffice的一个组件,是最常用的本地数据库之一。在C#中可以方便地使用数据库对象,操作Access数据库。一、创建数据库二、创建数据表补充:几种特殊的数据类型(1)文本:长度不超过255的字符串(2)备注:长文本shift+F2进行输入。(3)查阅向导:允许用户从一个列表中选择输入内容。8.2使用数据库系统8.2.2MicrosoftSQLServer前面介绍的Access数据库属于桌面数据库,主要在本地(本计算机)运行。在本章中将主要介绍另一类数据库的使用,即客户机/服务器(Client/Server)数据库,如SQLServer、Oracle和Sybase数据库等。通过使用这种数据库系统,用户可以方便地访问远程数据信息,而且这种数据库系统的多用户性使得信息共享成为现实。本节将以安装在Windows2000Server中的SQLServer2000企业版数据库管理系统为背景介绍其使用方法。在SQLServer2000的企业管理器中用户可以十分方便地创建数据库,创建数据库包括有创建数据库结构、创建表、创建相应的视图及存储过程等项工作。8.2使用数据库系统8.2.2MicrosoftSQLServer1.创建SQLServer数据库2.在SQLServer中创建表3.使用SQLServer客户端工具8.3SQL查询基础SQL是StructuredQueryLanguage(结构化查询语言)的缩写。是一组操作数据库的命令集。常用的SQL语句如表8-4所示:(P219)8.3.1查询语句Select功能:SELECT语句主要用于从数据库中返回需要的数据集,该数据集是大多数数据库应用程序的操作对象。语法格式:8.3SQL查询基础SELECT[ALL|DISTINCT][TOPn[PERCENT]]select_list[INTOnew_table_name]FROMtable_list[WHEREsearch_conditions][GROUPBYgroup_by_list][HAVINGsearch_conditions][ORDERBYorder_list[ASC|DESC]]参数说明:(注意:各子句的顺序不能打乱)1、ALL|DISTINCT:当显示的各列完全相同时,是否重复显示,默认为ALL。8.3SQL查询基础2、TOPn[PERCENT]:选择满足条件的前n个或前n%个记录。3、select_list:所需要的数据字段列表。(1)可以包含字段表达式。(2)*表示所有字段。4、INTOnew_table_name:将查询结果保存到新表中。5、FROMtable_list:数据的来源。(1)可以是多个表。(2)可以使用“AS别名”的形式为表指定别名,指定后须使用别名引用表。8.3SQL查询基础6、[WHEREsearch_conditions]:查询条件。(1)在条件中可以使用关系运算符或逻辑运算符(NOTANDOR)(2)可以使用BETWEENexp1ANDexp2的形式。(3)可以使用IN(列表)的形式。(4)可以使用LIKEpattern的形式。%:任意个数的任意字符_:任意一个字符[]:在指定一个范围[^]:不在指定的范围8.3SQL查询基础7、[GROUPBYgroup_by_list]:分类汇总。当使用该子句时,SELECT后只能使用该子句中所列的字段名或被聚合函数所使用的字段名。eg:SELECT课程号,AVG(score)AS平均分FROM成绩表GROUPBY课程号8.3SQL查询基础8、[HAVINGsearch_conditions]:对汇总后的结果再次筛选。(1)其后可以跟聚合函数,WHERE后则不可以。(2)其后只能使用GROUPBY中所列的字段名或被聚合函数所使用的字段名。9、[ORDERBYorder_list[ASC|DESC]]:结果的排序原则,可以是多列。补充一:常用的聚合函数:SUM、AVG、COUNT、MAX、MIN设表中有“班级、学号、姓名、成绩”四个字段,查询所有网络班中,平均成绩在70分以上的班级和平均成绩。补充二:多表查询8.3SQL查询基础1、笛卡尔积:两表不加任何约束地连接起来。设有两张表如下:学号姓名学号课程号成绩1Aaaa11682Bbbb12763Cccc21674Dddd2265笛卡尔积的结果共有16条记录。格式:SELECT表1.学号,姓名,课程号,成绩FROM表1CROSSJOIN表28.3SQL查询基础2、内连接:将两个表中满足条件的行组合起来,如果数据不满足条件,则被抛弃。格式1:SELECT表1.学号,姓名,课程号,成绩FROM表1,表2WHERE表1.学号=表2.学号格式2:SELECT学号,姓名,课程号,成绩FROM表1JOIN表2ON表1.学号=表2.学号结果共有4条记录。8.3SQL查询基础3、外连接:两个表一个主表,一个从表。结果是主表中的所有数据与从表中符合匹配条件的数据,若主表中的某行在从表中没有匹配的数据,对应列填NULL。格式1:SELECT学号,姓名,课程号,成绩FROM表1,表2WHERE表1.学号*=表2.学号格式2:SELECT学号,姓名,课程号,成绩FROM表1LEFTJOIN表2ON表1.学号=表2.学号上面的格式为左边连接(主表在左),也可以是右连接。注:多表查询时,若两个表中有相同的列名,则引用此列名时,须加表名作为前缀,否则可以加或不加。查询举例:例8-18.3SQL查询基础8.3.2插入记录语句Insert功能:向表中插入一条记录语法格式:INSERTINTO表名称(字段名表)VALUES(字段值表)注意事项:若字段名表和表中的字段个数和顺序完全一致,可以不写。插入字符型或日期型数据时,须用单引号括起来。8.3SQL查询基础8.3.3修改记录语句Update功能:更新(修改)表中的数据语法格式:UPDATE表名称SET字段名=值|DEFAULTWHERE条件注意:可以同时修改多个字段,用逗号分开。8.3.4删除记录语句Delete功能:删除数据表中指定行语法格式:DELETEFROM表名称WHERE条件8.4ADO.NET简介什么是ADO.NET?由ADO(ActiveDataObjects,动态数据对象)演变而来的数据访问技术。提供了一组类,对数据源进行高效的访问。8.4.1数据库通用接口为什么要使用数据库通用接口?提高应用程序的通用性。美国微软公司提供的数据库通用接口程序,经过了以下阶段:ODBC→OLEDB→ADO→ADO.NET8.4ADO.NET简介1.ODBC通用数据库接口ODBC(OpenDatabaseConnectivity,开放数据库互联)(1)由一组API函数和ODBC驱动程序组成(P222图)(2)由C开发优点:使应用程序可以使用统一的方式访问不同的数据库。缺点:使用复杂,编程效率低。2.ADO通用数据库接口ADO(ActiveDataObject,动态数据对象)用面向对象的思想对ODBC进行了封装,使用更方便,功能更强8.4ADO.NET简介3.ADO.NET概述在.NET框架的System.Data命名空间及其子空间中的一些类,统称为ADO.NET。支持“断开连接模式”和“连接模式”下的访问。支持XML格式的数据访问8.4ADO.NET简介8.4.2ADO.NET的数据模型ADO.NET采用了层次管理的结构模型,各部分之间的逻辑关系如图8-18所示。8.4ADO.NET简介8.4.3数据源控件简介功能:在.net中使用数据源控件配合数据绑定控件实现对数据库的操作;特点:数据源控件运行时不可见。数据源控件的类型:1.AccessDataSource:专门为连接MicrosoftAccess数据库而设计的。2.SqlDataSource:SqlDataSource数据源控件是专门为连接MicrosoftSQLServer数据库而设计的。3.ObjectDataSource8.4ADO.NET简介4.XmlDataSource:用于访问XML文件中的数据使用步骤:建立XML文件A;添加数据源控件B,并配置其数据源为A添加数据绑定控件C,选择数据源为B5.SiteMapDataSource:用于访问站点地图SiteMap:站点地图,设置网页间的逻辑关系,用于按层次浏览网站的所有内容。使用步骤:建立SiteMap文件A;添加数据绑定控件C,选择数据源为A,系统自动添加数据源控件B8.5使用数据控件访问数据库优点:使用简单;缺点:无法实现一些特殊操作8.5.1GridView数据控件1、命名空间:System.Web.UI.WebControls2、功能:表格形式显示数据源中的值,每行一条记录,每列一个字段;

1 / 55
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功