ASP基础教程 教学课件 魏雪英 第4章 ASP访问数据库(二).ppt

ASP基础教程 教学课件 魏雪英 第4章 ASP访问数据库(二).ppt

ID:50037907

大小:241.00 KB

页数:40页

时间:2020-03-08

ASP基础教程 教学课件 魏雪英 第4章 ASP访问数据库(二).ppt_第1页
ASP基础教程 教学课件 魏雪英 第4章 ASP访问数据库(二).ppt_第2页
ASP基础教程 教学课件 魏雪英 第4章 ASP访问数据库(二).ppt_第3页
ASP基础教程 教学课件 魏雪英 第4章 ASP访问数据库(二).ppt_第4页
ASP基础教程 教学课件 魏雪英 第4章 ASP访问数据库(二).ppt_第5页
资源描述:

《ASP基础教程 教学课件 魏雪英 第4章 ASP访问数据库(二).ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章ASP访问数据库(二)图书管理——一对多关系4.1图书管理——多对多关系4.2分组查询和动态图表4.34.1图书管理——一对多关系4.1.1一对多关系概述下面用一个实例来说明什么是“一对多”关系。这是一个简单的图书管理系统。包括图书信息和作者信息。图书信息包括:编号、书名、出版时间、内容简介等;作者信息包括:姓名、性别、国籍、生卒年份等。如果在数据库中只建立一个表,把图书信息和作者信息都放在里面,就有可能造成大量存储空间的浪费。比如,某个作者写了很多本书,这些书的作者信息就是相同的,这不仅浪费存储空间;也不便

2、于修改维护,如果要修改他的信息,就要改动他的每一本书的记录,这就非常不方便。另外,可能只有一部分图书有作者信息,另一部分图书根本没有作者的信息,这部分图书的作者信息部分就全是空字段,这是造成存储空间浪费的另一个原因。所以,要分成两个表来建立:图书信息表与作者信息表。这样,不仅节约存储空间,在作者信息变动时,只需修改一条记录就可以了。现假定每一本书只有一个作者,但一个作者可能写了若干本书。这就是所谓“一对多”的关系。为了突出主要问题,对表的结构做了简化,仅保留了少量的字段。(1)图书信息表(books)的结构设计如图

3、4-1-1所示。图4-1-1图书信息表(books)的结构设计(2)作者信息表(writers)结构设计如图4-1-2所示。图4-1-2作者信息表(writers)结构设计(3)图书信息表的内容如图4-1-3所示。图4-1-3图书信息表的内容(4)作者信息表的内容如图4-1-4所示。图4-1-4作者信息表的内容为了简单起见,这里假设作者的中文名字是没有重名的。这样就直接使用中文姓名作为作者表的主关键字段。对于没有详细信息的作者,作者表中就根本没有他的记录。1.案例效果2.制作过程(1)首页(index.htm)(2

4、)“检索结果”网页(fbook.asp)(3)“详细信息”网页(detail.asp)4.1.2项目实现(1)LEFTJOIN(2)INNERJOIN(3)显示图片时条件语句的应用(4)相关图书——即同一作者的其他图书3.知识解析4.2.1多对多关系概述前面所讲的“一对多”关系,是假设每一本书只有一个作者,但一个作者可能写了多本书。实际上,不仅一个作者可能有多本书,一本书也可能有多个作者。这就是所谓“多对多”关系了。4.2图书管理——多对多关系下面仍然以图书管理系统为例。在这个例子里,除了图书信息表(books)与

5、作者信息表(writers)之外,还有一个起“中介”作用的关系表(rel),图书与作者之间的关系,全部保存在这个表中。(1)图书信息表的结构设计,表中没有“作者”字段,如图4-2-1所示。图4-2-1图书信息表(books)的结构设计(2)作者信息表结构设计,主关键字段不是姓名,而是作者编号。这样做,即使作者中有同名同姓的也不会搞错。如图4-2-2所示。图4-2-2作者信息表(writers)结构设计(3)关系表的设计,如图4-2-3所示。图4-2-3关系表(rel)结构设计“多对多”的关系就是通过这个表(rel)

6、来确定图书与作者之间的相互联系,如图4-2-4所示。图4-2-4图书与作者之间的相互联系1.案例效果2.制作过程(1)“检索结果”页(fbook.asp)。(2)“详细信息”页(detail.asp)。4.2.2项目实现(1)SQL查询语句中使用了两次“LEFTJOIN”:rs.Open"SELECT*FROMbooksLEFTJOIN(relLEFTJOINwriters"_&"ONrel.writerID=writers.wID)ONbooks.bID=rel.bookID"&s1_&"ORDERBYbID",

7、cn,13.知识解析由于有3个表,所以用了两次“LEFTJOIN”。之所以用“LEFTJOIN”而不是“INNERJOIN”,是考虑到可能有的图书没有作者,或不知道有没有作者,而图书本身仍然能够被正常地检索。(2)检索结果页同一本书多条记录的处理(3)详细信息页在显示图书信息时如何显示多个作者(4)一本书多名作者的排名顺序问题(5)作者详细信息的显示(6)检索相关图书4.3.1分组查询1.GROUPBY子句2.HAVING子句3.分组查询常用的SQL函数4.3分组查询和动态图表(1)函数COUNT( )统计非NUL

8、L值记录数。(2)函数SUM( )计算某字段的算术和。(3)函数AVG( )计算某字段的算术平均值。(4)函数MAX( )返回某字段中的最大值。(5)函数MIN( )返回某字段中的最小值。动态图表是网页中能够随着数据库中数据的变化而变化的图表(直方图、折线图、圆饼图等)。可以利用ActiveX控件或JavaApplet等技术来实现。4.3.2动态图表使用Ac

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。