数据库原理第五章数据库设计

数据库原理第五章数据库设计,第1张

第五章 数据库设计

67 什么是软件生存期:

软件生存期是软件工程的一个重要概念。是指从软件的规划、研制、实现、投入运行后的维护,直到它被新的软件所取代而停止使用的整个期间。通常分为六个阶段:

(1) 规划阶段

(2) 需求分析阶段

(3) 设计阶段

(4) 程序编制阶段

(5) 调试阶段

(6) 运行维护阶段

68 数据库系统的生存期:

一般分为七个阶段,即:

(1) 规划阶段

(2) 需求分析阶段 1)信息要求 2)处理要求 3)安全性和完整性要求

(3) 概念设计阶段

(4) 逻辑设计阶段 两部分:数据库逻辑设计和应用程序设计

(5) 物理设计阶段 两部分:物理数据库结构的选择和逻辑设计中程序模块说明的精确化

(6) 实现阶段

(7) 运行维护阶段

69 数据库设计过程的输入有哪些内容:

(1) 总体信息需求

(2) 处理需求

(3) DBMS的特征

(4) 硬件和OS特征

70 数据库设计过程的输出有哪两部分:

一部分是完整的数据库结构,其中包括逻辑结构与物理结构。

另一部分是基于数据库结构和处理要求的应用程序的设计原则。

71 常见的数据库设计方法有哪几种:

(1) 视图模式化及视图汇总设计方法

(2) 关系模式的设计方法

(3) 新奥尔良设计方法

(4) 基于E-R模型的数据库设计方法

(5) 基于3NF的设计方法

(6) 基于抽象语法规范的设计方法

(7) 计算机辅助数据库设计方法

72 实用的数据库设计方法至少应包括哪些内容:

(1) 设计过程

(2) 设计技术

(3) 评价准则

(4) 信息需求

(5) 描述机制

73 一种设计方法学需要有三种基本类型的描述机制:

(1) 实现设计过程的最终结果将用DBMS的DDL表示。

(2) 信息输入的描述。

(3) 在信息输入和DDL描述之间的其它中间步骤的结果的描述。

74 数据库设计中的规划阶段的主要任务:

是进行建立数据库的必要性及可行性分析,确定数据库系统在组织中和信息系统中的地位,以及各个数据库之间的联系。

75 需求分析阶段的任务:

需求分析阶段应该对系统的整个应用情况作全面的、详细的调查,确定企业组织的目标,收集支持系统总的设计目标的基础数据和对这些数据的要求,确定用户的需求,并把这些要求写成用户和数据库设计者都能接受的文档。

76 需求分析的步骤:

大致可分为三步来完成,即需求信息的收集、分析整理和评审。

77 数据字典由哪几部分组成:

(1) 数据项

(2) 数据结构

(3) 数据流

(4) 数据存储

(5) 加工过程

78 数据抽象:

抽象是对实际的人、物、事或概念的人为处理,它抽取人们关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述,这些概念组成了某种模型。

抽象有两种形式,系统状态抽象(抽象对象)和系统转换抽象(抽象运算)。

79 对象的两种形式:

(1) 聚集:的数学意义就是笛卡尔积的概念。通过聚集,形成对象之间的一个联系对象。

(2) 概括:是从一类其它对象形成一个对象。对于一类对象{O1,O2,……,On}可以概括成对象O,那么Oi称为O的其中一个。

80 依赖联系:

在现实世界中,常常有某些实体对于另一些实体具有很强的依赖关系,即一个实体的存在必须以另一个实体的存在为前提。我们通常把前者称为弱实体。在ER图中,用双线框表示弱实体,用指向弱实体的箭头表明依赖联系。

81 子类、超类:

某个实体类型中所有实体同时也是另一实体类型中的实体。此时,我们称前一实体类型是后一实体类型的子类,后一实体类型称为超类。在ER图中,带有子类的实体类型(超类)以两端双线的矩形框表示,并用加圈的弧线与其子类相连,子类本身仍用普通矩形框表示。

子类具有一个很重要的性质:继承性。它可继承超类上定义的全部属性,其本身还可包含其它另外的属性。

82 ER模型的 *** 作:

(1) 实体类型的分裂:垂直分割、水平分割

(2) 实体类型合并:分裂的逆过程。

(3) 联系类型的分裂

(4) 联系类型的合并

83 采用ER方法的数据库概念设计分成哪三步:

(1) 设计局部ER模式:1)确定局部结构范围 2)实体定义 3)联系定义 4)属性分配

(2) 设计全局ER模式:1)确定公共实体类型 2)局部ER模式的合并 3)消除冲突。

(3) 全局ER模式的优化:1)实体类型的合并 2)冗余属性的消除 3)冗余联系的消除

84 冲突分为哪三种:

属性冲突,包括属性域的冲突、属性取值单位冲突。

结构冲突,包括:

(1) 同一对象在不同应用中的不同抽象。

(2) 同一实体在不同局部ER图中属性组成不同。

(3) 实体之间的联系在不同的局部ER图中呈现不同的类型。

命名冲突,包括属性名,实体名,联系名之间的冲突:同名异义、异名同义

85 ER模型向关系模型的转换:

ER模型中的主要成分是实体类型和联系类型。

对实体类型,将每个实体类型转换成一个关系模式,实体的属性即为关系模式的属性,实体标识符即为关系模式的键。

对联系类型,就视1:1、1:N、M:N三种不同的情况做不同处理。

(1) 对1:1可在两个实体类型转换成的两个关系模式中任意一个关系模式的属性中加入另一个关系模式的键和联系类型的属性。

(2) 对1:N,则在N端实体类型转换成的关系模式中加入1端实体类型转换成的关系模式的键和联系类型的属性。

(3) 对M:N,则将联系类型也转换成关系模式,其属性为两端实体类型的键盘加上联系类型的属性,而键为两端实体键的组合。

86 什么是物理设计:

对一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程,称为数据库的物理设计。物理结构,主要指数据库在物理设备上的存储结构和存取方法。

87 物理设计的步骤:

物理设计可分五步完成,前三步涉及到物理数据库结构的设计,后两步涉及约束和具体的程序设计。

(1) 存储记录结构设计

(2) 确定数据存储安排

(3) 访问方法的设计

(4) 完整性和安全性

(5) 程序设计

88 在数据库系统生存期中,生存期的总开销可分为几项:

规划开销、设计开销、实现与测试开销、 *** 作开销、维护开销。

89 用户使用和计算机资源的 *** 作开销是:

(1) 查询响应时间

(2) 更新事务的开销

(3) 报告生成的开销

(4) 改组频率和开销

(5) 主存储空间

(6) 辅助存储空间

90 数据库实现阶段的主要工作:

(1) 建立实际数据库结构

(2) 试运行

(3) 装入数据

91 数据库的重新组织设计:

对数据库的概念模式、逻辑结构或物理结构的改变称为重新组织,其中改变概念模式或逻辑结构又称为重新构造,改变物理结构则称为重新格式化。

92 运行维护阶段的主要工作:

(1) 维护数据库的安全性和完整性控制及系统的转储和恢复。

(2) 性能的监督、分析与改进。

(3) 增加新功能。

(4) 发现错误,修改错误。

数 据 库 技 术

学 校 河南科技大学

专 业 会计电算化

年 级

学 号

姓 名

年 月 日

一、实验名称

学生信息管理系统数据库设计

参考教材第一章12建立数据库和基本表

二、实验目的

数据库技术是一个理论和实际紧密联系的技术,在学习过程中,除了解数据模型、数据库系统结构、数据库应用方法等知识外,还应通过实验对相关技术加深认识,加强实践能力。上机实验的主要目标如下:

(1)通过上机 *** 作,加深对数据库系统理论知识的理解。

(2)通过使用具体的DBMS,了解一种实际的数据库管理系统并掌握其 *** 作技术。

(3)通过上机实验,提高动手能力,提高分析问题和解决问题的能力。

三、实验内容及步骤

说明本次实验的主要内容,及完成实验的主要步骤。

定义四个表:Student、 Depts、Course、Reports

实验一:

1.设计如上系统的表结构,定义每个表的主键和外键,为每个属性选择合适的数据类型,定义每个属性是否允许空值,是否有默认值等

2.在企业管理器中创建你设计的表,指定表的关键字,创建约束

3.将你设计的表和约束用SQL语句表达

4.使用SQL语句,在你设计的每个表中插入至少10条数据,要求记录满足数据约束要求,且尽量真实可信

实验二:

针对实验一建立的表,使用SQL语句完成:

1从每个表中删除1条数据

2在每个表中修改1条数据

3每一个表中增加1条数据

4查询计算机系的全体学生姓名

5查询张三的所在的系名

6查询李四所选课程名称

7查询所有年龄在18-22岁之间的学生姓名

8查询每个学生的学号、姓名、选修的课程名、成绩

1 delete from Students where sname=’张三’

delete from Depts where Dnam=’计算机系’

2 update Students set sname=’李四’ where sname=’张三’

3 insert into Depts values(‘d01’,’计算机系’)

4 select ssname as 姓名 from Students s,Depts d where dDname='计算机系' and sDno=dDno

5 select dDname from Students s,Depts d where sSname='张三' and sDno=dDno

6 select ccname from Course c,Students s,Reports r where ssname=’李四’ and rCno=cCno and rSno=ssno

7 select sname from Students where Sage between 18 and 22

8 select ssno,ssname,ccname,rgrade from Reports r,Students s,Course c where rCno=cCno and rSno=sSno

四、实验分析

建表语句

CREATE TABLE [dbo][Reports](

[Sno] [char](5) NOT NULL,

[Cno] [char](6) NOT NULL,

[Grade] [int] NULL,

CONSTRAINT [PK_Reports] PRIMARY KEY CLUSTERED

(

[Sno] ASC,

[Cno] ASC

) ON [PRIMARY]

) ON [PRIMARY]

CREATE TABLE [dbo][Depts](

[Dno] [char](5) NOT NULL,

[Dname] [char](20) NOT NULL,

CONSTRAINT [PK_Depts] PRIMARY KEY CLUSTERED

(

[Dno] ASC

) ON [PRIMARY]

) ON [PRIMARY]

CREATE TABLE [dbo][Course](

[Cno] [char](6) NOT NULL,

[Cname] [char](20) NULL,

CONSTRAINT [PK_Course] PRIMARY KEY CLUSTERED

(

[Cno] ASC) ON [PRIMARY]

CREATE TABLE [dbo][Students](

[Sno] [char](5) NOT NULL,

[Sname] [char](20) NOT NULL,

[Ssex] [char](2) NULL,

[Sage] [int] NULL,

[Dno] [char](5) NULL,

CONSTRAINT [PK_Students] PRIMARY KEY CLUSTERED

(

[Sno] ASC

) ON [PRIMARY]

) ON [PRIMARY]

) ON [PRIMARY]

五、实验结论

这次实验报告持续了好一段时间,现在终于结束了。这次数据库技术实验报告是对我之前学习的总结,使我的专业知识和实际应用的紧密结合起来。通过这次实验报告使我对数据库理论有了较深刻的认识,并且对信息系统方面的设计理论和开发过程也有了深刻的了解,在这一阶段的学习中,我基本上掌握了JSP和SQL SEREVER2000的基本炒作和编程方法。

这次实验报告的过程涉及之前的基础课和专业课程的很多理论知识,但是在实际应用方面涉及很少,而数据库技术实践报告是把这些知识融会贯通起来,综合运用,所以通过这次实验报告我的认识问题、分析问题、解决问题的能力都有了很大的提高。

老师给的模版,自己随便整理了一下,仅供参考

我有学生管理数据库设计案例 可以看着例子来做

非常详细的

设计报告:

包含E-R图、数据字典、关系模式、关系实例、查询描述、关系代数、SQL实现的查询语言及查询结果

选我我传给你 给邮箱

这是以下目录

1问题描述 2

11背景 2

12数据需求 2

13事物需求 3

14关系模式 3

2方案图表设计 3

21 E-R图 3

22数据流程图 8

23数据字典 9

24关系图: 11

3数据库源代码 12

31数据库建立 12

32数据初始化 14

4结果数据处理 17

5结束语 26

51课程设计心得 26

持续一个月的数据库实训,让我参与了软件工程化的开发过程

其中体会最深的便是我们这个实训网的几个之最:一.项目最大:项目大是因为我们这个事业起点网站涉及到用户众多-高校,企业,学生,老师,专家,第二个原因是网站的功能多-用户管理,网上实习,网上竞赛,毕业实习设计,项目管理,人才库管理,人才推荐,搜索

项目大很容易造成系统范围的泛滥,在我们的开发初期,由于需求不太明确,功能实现没有重点,造成了需求范围的扩大,给项目开发进度造成了严重的滞后性

然后我们召开了会议讨论了这个问题,一致认同先把项目的基本功能实现,将网站的基本架构搭建起来,最后再在这个基础上继续增加我们网站的其他功能

因此在这个过程中,我深刻体会到了软件工程初期阶段的需求分析以及概要设计的重要性,这两个文档是指导我们后期开发的最重要的依据

二.数据库表最多:如此庞大的系统,就需要庞大的数据库来支持,所以项目大的直接后果就是我们的数据库表特别多,而且表与表之间的依赖关系也复杂,实体类之间的关系众多,设计起来有一定的难度

数据库的另外一个问题是-数据表的属性,数据表属性的设计完全是依赖于我们刚开始做的需求分析文档,如果需求分析不完整的话,就会造成数据库表属性的缺失,从用户的角度看,就会觉得你的系统提供的数据不够全面,信息量小

三.开发团队最大:我们团队一共有十四个人,这个对于我们的项目经理来说,是一个相当严峻的问题,毕竟十四个人的团队相当于其他几个小组加起来的人数总和,管理起来有相当大的难度

对于我们这些小组成员来说,由于沟通渠道太多,造成了我们项目中遇到问题,不知道去跟哪个小组成员沟通

为了解决这个问题,我们在团队中又选出了三个小组长,小组成员遇到问题,先去咨询小组长,然后小组长提供反馈信息

四.项目各个模块间藕合度高:网站涉及的各个功能模块之间的联系紧密,模块之间的接口设计的好坏是项目最终集成成功与否的最重要因素

用户管理这一个部分要为每个模块提供接口,主要是用户的编号以及用户的类型等

每个页面之间的链接也是其中重要的模块接口

这个问题由于我们前期做好了充分的沟通以及按照概要设计中的接口说明去设计自己的模块,所以后期的模块整合没有遇到什么太大的不兼容性等问题

接下来就谈谈我这一个月中的工作:需求分析阶段:需求分析阶段我完成了网上竞赛模块的需求分析,其中遇到的主要问题是阅读材料后发现网上实习,网上竞赛,毕业设计指导这几个模块的功能是类似的,提取需求分析后不够明确,经过几次跟汤老师的交流后,确定了这几个模块之间的具体差别,网上竞赛模块的基本需求也大致确定了,网上竞赛模块的基本功能就是学生通过网站报名参加竞赛,企业审核通过后,专家对作品进行评分,排名

概要设计阶段:在需求分析的基础上,对网上竞赛模块进行了比较具体的概要设计,流程图(IPO图以及用例图);这个阶段的主要难点是对网上竞赛业务流程的描述,如何实现学生报名,企业发布,专家评审的步骤 *** 作,与及跟其他模块对该模块的限制

数据库设计阶段:我负责整合初步数据库设计说明书,分配组员按照各自的功能模块的具体需求设计自己模块需要的数据表,然后对这些数据表进行整合

在这个过程中遇到的问题就是数据库实在是太大了,最后下来一共有30多张表,表与表之间的关系复杂,关联性大,需要设置的外键较多,很难将所有的属性字段给提取出来,属性的类型设置也是一个问题,采用数值型还是采用字符串性在数据库设计中尤为重要,因为在后台搜索方面,数值型比较快捷,而在数据显示方面,字符串型又有直接读出不用转换的好处

每个表的主键我们采用了用实体的编号去标记它,因为这样实体间关联起来会更加简单

数据库的设计关键是要对整个项目的整体的把握,并且要细化对每个实体类的具体属性要求

详细设计阶段:我觉得是最重要的一个方面,一个完整的详细设计说明应该可以帮助程序员完成具体的实现,程序员可以不用考虑模块之间的耦合问题,只需要将单一的功能按照逻辑顺序编写出来就可以了

网站整体构架搭好了,我们就可以在里面填充自己的功能了

但是因为时间太仓促了,我们这个阶段也就缩水了,带来后面的问题就是后期代码编写的时候比较混乱,函数接口较难统,界面风格多样化

这个阶段,我的主要工作是跟队友一起设计出了网上竞赛模块的学生,企业,管理员,高校以及专家的界面

编码阶段:我们是用ASP

net开发的,主要任务就是从工具中选出你想要的控件,然后在控件响应函数中填充代码,完成相应的事件响应

这里遇到的最大问题是页面的排版问题,因为自己是第一次开发网站,造成了自己设计的界面风格单调,不太美观,现在就尽量做到页面的整齐

这个阶段主要做的就是:写代码→编译→调试→写代码

这一个月中我学到了很多东西,技术方面就是学会了用ASP

Net编写网站,最重要的是让我经历了软件工程化的所有阶段,让我对整个软件工程有了感性的认识,而且将大学三年所学到的知识进行了一次系统的串联,更重要的是学会了如何跟项目团队中的成员沟通问题,这是一个宝贵的实践经验

(图放不上去呀 我自己做的E-R图)

计算机科学与信息学院

课程设计报告

课程名称: 数据库概论课程设计

专 业: 网络方向

班 级: ====

学 号: ===

姓 名: 闫娟

题 目: 网上购书系统

指导教师: 肖淑芬

2011年6月

目录

一、课程设计的背景来源 3

二、网上购书系统调查及前景 4

三、网上购书设计思想 4

1、前台系统工作流程 5

2、后台系统工作流程 6

四、网上书店工作过程的内容 6

五、数据库设计 7

1、数据项 7

2、 数据结构 8

3、关系模式的设计 8

4、视图的设计 9

六、网上购书E-R图 10

六、系统的源程序 15

七、系统评价及心得体会 20

一、课程设计的背景来源

1,其实写这个课程设计写得比较匆忙,马上其他可就要考试了,本想找个男的题目来挑战下自己,后来还是因为时间需要,所以选了个相对来说我们生活比较容易接近的

2,随着现在社会的发展,网络已经成为一个市场很大的交易平台,很多人由于时间需要或者各方面原因都把网上购物作为一种消费方式,有时我们在书店要花很长时间去找一本书,有时还找不到,记得有次在孝感学院图书馆找一本概率论辅导书,花了很长很长时间呀,所以我深有体会,还是感觉在网上购书比较简单,方便。

3,班上有很多同学都从事网上购物,我刚好想利用自己的专业知识来学习下这方面的知识,自己查查资料,把这个课程设计做好。

二、网上购书系统调查及前景

人们喜欢通过阅览书籍拓展自己的知识视野,可在实际生活的购书过程中人们却遇到了不少麻烦,比如购书人多,挑书难,搬书重等,因此既方便又快捷的网络购书便成为了一种很有潜力的购书消费方式。信息时代,电子商务已经成为我们现实生活中不可缺少的一个重要组成部分,同时它以一种特殊的方式改变着我们的生活。根据调查结果显示,网民上网以获取信息为主要目的占5 31%。目前我国上网购物的群体中,绝大多数是年轻人, 他们大多数是收入稳定、文化水平较高的中青年,网上消费已经日益成为他们生活中的一种重要的消费方式,他们成为了最有潜力的未来网上消费者。

三、网上购书设计思想

首先网上购书系统听起来是个很杂的程序,因为有很多很多书,也有很多很多人来买,但是其实我们简单的可以把它分为两个模块,这样我们就能很好的理解了,网上书店主要由前台会员管理模块和后台管理员模块两部分组成。

前台功能模块主要用于实现会员注册,登录,修改个人信息,分类查看书目信息、购书、管理购物车、结帐、查看各种服务条款等功能。

后台管理模块主要用于实现后台管理人员对会员,商品,物流,订单和系统的管理等功能。

1、前台系统工作流程

首先当我们用户登陆这个网站时,一开始就会出现让你登陆,如果是你会员,你可以直接登录,如果你不是会员,你要注册个账号。

1、 当你是会员时,你可以查看你的各项服务,比如说上次你收藏了什么书籍,以及你喜欢的书的种类,在可以看下前几次你购买书的情况,在可以修改个人信息,修改密码等,你也可以查看自己网上交易情况,看下自己买的书的情况,以及看上什么书了,可以把它放回购物车,方便自己购买。

2、 当你是非会员时,你要先进行注册,填写自己的基本信息,当你填好后,你也是其中一员了,你也同样可以向会员那样找自己的书了,相对来说比较方便。

3、 还有人不注册,只是进来逛下网站,看看自己是否有必要买一些书。

2、后台系统工作流程

后台系统工作流程主要用于实现后台管理人员对会员,商品,物流,订单和系统的管理等功能,他要对会员的登记进行统计,以及购物等方面的内容管理

四、网上书店工作过程的内容

1、管理员信息,包括数据项有:管理员编号、管理员账号、管理员密码。

2、会员信息,包括数据项有:会员账号、会员密码、会员昵称、会员E-mail、会员级别(管理员设定)。

3、图书信息,包括数据项有:图书编号、图书名称、作者、出版社编号、出版日期、图书类别编号、图书简介。

(⑴出版社信息,包括数据项有:出版社编号、出版社名称。

⑵图书类别信息,包括数据项有:图书类别编号、图书类别名称。)

4、图书订单,包括数据项有:会员账号、下定单日期、收货地址、收货地址邮编、收货人姓名、收货人****、送货方式编号、总费用、图书名称、现已售出量情况。

5、购物车,包括数据项有:会员账号、每种图书名称、每种图书市场价格、每种图书网站价格、每种图书数量、每种图书的价格、图书总价。

五、数据库设计

1、数据项

数据项

数据项名 数据类型 长度 别名 取值范围

会员编号 字符型 15 会员的编号

姓名 文本型 20 会员的姓名

密码 文本型 20 会员的密码

电话 字符型 12 会员的电话

地址 文本型 50 会员的地址

商品编号 字符型 15 商品的编号

类型 文本型 10 商品的类型

名称 文本型 20 商品的名称

价格 整型 6 商品的价格

简介 文本型 500 商品的简介

型 商品的

购物车编号 字符型 10 购物车的编号

商品数量 整型 10 购买商品的数量

订单编号 字符型 15 购物时生成的订单

订单日期 时间型 10 购买商品的时间

2、 数据结构

系统需求数据结构

数据结构名 含义说明 组成

会员 记录会员的基本信息 会员编号、姓名、密码、电话、地址

商品 记录销售商提供的商品信息 商品编号、类型、名称、价格、简介、

订购 记录会员的购物信息 会员编号、商品编号、订单编号、订单日期

购物车 存储会员需要购买的商品 会员编号、商品编号、购物车编号、商品数量

3、关系模式的设计

会员

数据项名 数据类型 长度 别名 是否为空 主外键

会员编号 字符型 15 会员编号 否 主键

姓名 文本型 20 姓名 否

密码 文本型 20 密码 否

电话 字符型 12 电话 否

地址 文本型 50 地址 否

商品

数据项名 数据类型 长度 别名 是否为空 主外键

商品编号 字符型 15 商品编号 否 主键

类型 字符型 15 类型 否

名称 字符型 20 名称 否

价格 整型 10 价格 否

简介 文本型 500 简介

image型 100

订购

数据项名 数据类型 长度 别名 是否为空 主外键

会员编号 字符型 15 会员编号 否 外键 主键

商品编号 字符型 10 商品编号 否 外键

订单编号 字符型 10 订单编号 否

订单日期 日期型 10 订单日期 否

购物车

数据项名 数据类型 长度 别名 是否为空 主外键

会员编号 字符型 15 会员编号 否 主键

商品编号 字符型 15 商品编号 否

购物车编号 字符型 15 购物车编号 否

商品数量 整型 6 商品数量 否

4、视图的设计

搜索商品视图

数据项名 数据类型 长度 别名 是否为空

名称 字符型 10 名称 否

类型 字符型 10 类型 否

价格 整型 10 价格 否

简介 文本型 4 简介 否

六、网上购书E-R图

否 是

网上书店系统业务流程:

网上书店前台管理功能结构图:

六、系统的源程序

ackage cart;

import javautilVector;

public class Cart {

Vector v = new Vector();

String act = null;

String item = null;

private void addItem(String id) {

vaddElement(id);

}

private void removeItem(String id) {

vremoveElement(id);

}

public void setItem(String id) {

item = id;

}

public void setAct(String s) {

act = s;

}

public String[] getItems() {

String[] s = new String[vsize()];

vcopyInto(s);

return s;

}

public void processRequest() {

if (actequals("add"))

addItem(item);

else if (actequals("remove"))

removeItem(item);

// reset at the end of the request

reset();

}

// reset

private void reset() {

act = null;

item = null;

}

public void clearAll(){

vremoveAllElements();

}

}

现实页面信息,提示等 *** 作的设计:

package spage;

import javasql;

public class ShowPage

{

private String str = "";

//显示页号为p的一页(user)

public String printPage(ResultSet rs, int p, int size)

{

str = "";

//将访问游标定位到页号为p的页要显示的第一条记录的位置

try {

for(int k=0;k<(p-1)size;k++)

rsnext();

}

catch(SQLException e) { }

for(int iPage=1; iPage<=size; iPage++) {

str += printRow(rs,iPage,p);

try {

if(!rsnext()) break;

}

catch(Exception e) { }

}

return str;

}

//显示单行记录(user)

public String printRow( ResultSet rs ,int i,int p)

{

String temp = "";

try {

int id=rsgetInt("userid");

temp+="<tr align='center' bgcolor='#FFFAF7'>";

temp+="<td><a href='javaScript:seeUser("+id+")'>"+rsgetString("name")+"</a></td>";

temp+="<td>"+rsgetString("sex")+"</td>";

temp+="<td>"+rsgetString("phone")+"</td>";

temp+="<td>"+rsgetString("address")+"</td>";

temp += "<td><a href='updateuserjspupdateid="+id+"'>修改</a></td>";

temp += "<td><a href='dealdeleteuserjspdelid="+id+"'>删除</a></td>";

temp += "</tr>";

}

catch(SQLException e) { }

return temp;

}

//显示页号为p的一页(book)

public String bookPage(ResultSet rs, int p, int size,boolean f)

{

str = "";

//将访问游标定位到页号为p的页要显示的第一条记录的位置

try {

for(int k=0;k<(p-1)size;k++)

rsnext();

}

catch(SQLException e) { }

for(int iPage=1; iPage<=size; iPage++) {

str += bookRow(rs,iPage,p,f);

try {

if(!rsnext()) break;

}

catch(Exception e) { }

}

return str;

}

//显示单行记录(book)

public String bookRow( ResultSet rs ,int i,int p,boolean f)

{

String temp = "";

try {

int id=rsgetInt("bookid");

temp+="<tr align='center'>";

temp+="<td><a href='detailjspdetailid="+id+"'>"+rsgetString("bookname")+"</a></td>";

temp+="<td>"+rsgetString("author")+"</td>";

temp+="<td>"+rsgetString("pubhouse")+"</td>";

temp+="<td>"+rsgetString("price")+"</td>";

if(f)

{

temp+="<td>"+rsgetString("salenum")+"</td>";

temp+="<td><a href='updatebookjspupdateid="+id+"'>修改</a></td>";

temp+="<td><a href='dealdeletebookjspdelid="+id+"'>删除</a></td>";

}

else

temp+="<td><a href='dealcartjspdealid="+id+"&act=add'>加入购物车</a></td>";

temp += "</tr>";

}

catch(SQLException e) { }

return temp;

}

//显示页号为p的一页(order)

public String orderPage(ResultSet rs, int p, int size,boolean f)

{

str = "";

//将访问游标定位到页号为p的页要显示的第一条记录的位置

try {

for(int k=0;k<(p-1)size;k++)

rsnext();

}

catch(SQLException e) { }

for(int iPage=1; iPage<=size; iPage++) {

str += orderRow(rs,iPage,p,f);

try {

if(!rsnext()) break;

}

catch(Exception e) { }

}

return str;

}

//显示单行记录(order)

public String orderRow( ResultSet rs ,int i,int p,boolean f)

{

String temp = "";

try {

String orderid=rsgetString("orderid");

temp+="<tr align='center'>";

temp+="<td><a href='detailorderjspdetailid="+orderid+"'>"+orderid+"</a></td>";

temp+="<td>"+(rsgetString("orderdate"))substring(0,10)+"</td>";

temp+="<td>"+rsgetString("orderstate")+"</td>";

if(f)

{

temp += "<td><a href='javaScript:seeUser("+rsgetString("userid")+")'>"+rsgetString("username")+"</a></td>";

temp += "<td><a href='dealdeleteorderjspdelid="+orderid+"'>删除</a></td>";

}

temp+="</tr>";

}

catch(SQLException e) { }

return temp;

}

}

七、系统评价及心得体会

1、了解很多关于网上购书程序上的知识,要写这个课程设计,我把有关网上购书的概论也看了下,发现不知道是这个设计太简单还是怎么回事,网上出现很多此样的版本,很有有更新,可能我们对数据库设计的程序还不是很了解吧。

2,要写数据库E-R图,发现很难画啊,还要把线段连来连去,觉得在画图上面花了很多时间

3,一定要先了解数据情况,要先熟悉了网上购书的基本 *** 作,在开始研究,最好自己去试一下网上购书,我就自己亲自去点击了下网上购书网,然后才下手写的课程设计。

本汽车销售信息管理系统是为满足在校学生课程设计的需要,开发的一个基于JAVA技术的销售信息管理系统,功能包括:客户信息管理模块、销售信息管理模块、售后服务信息管理模块、市场策略公告模块、统计报表管理模块,模块包括信息的添加、删除、修改等功能。

本课程设计报告,对整个系统及其内部的各个功能模块的构想、设计思路、实现方法和过程,做出了详细的说明和介绍。

以上就是关于数据库原理第五章数据库设计全部的内容,包括:数据库原理第五章数据库设计、急求一学生信息管理系统实验报告、数据库课程设计等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9716624.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存