什么是数据库

什么是数据库,第1张

数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于使用它的应用程序,对数据的增、删、改和检索由统一软件进行管理和控制。从发展的历史看,数据库是数据管理的高级阶段,它是由文件管理系统发展起来的。

数据库的基本结构分三个层次,反映了观察数据库的三种不同角度。

(1)物理数据层。它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令 *** 作处理的位串、字符和字组成。

(2)概念数据层。它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据库管理员概念下的数据库。

(3)逻辑数据层。它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。

数据库不同层次之间的联系是通过映射进行转换的。数据库具有以下主要特点:

(1)实现数据共享。数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。

(2)减少数据的冗余度。同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。

(3)数据的独立性。数据的独立性包括数据库中数据库的逻辑结构和应用程序相互独立,也包括数据物理结构的变化不影响数据的逻辑结构。

(4)数据实现集中控制。文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其文件之间毫无关系。利用数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。

(5)数据一致性和可维护性,以确保数据的安全性和可靠性。主要包括:①安全性控制:以防止数据丢失、错误更新和越权使用;②完整性控制:保证数据的正确性、有效性和相容性;③并发控制:使在同一时间周期内,允许对数据实现多路存取,又能防止用户之间的不正常交互作用;④故障的发现和恢复:由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏

按位置对数据进行合并计算 在包含要对其进行合并计算的数据的每个工作表中,通过执行下列 *** 作设置数据: 确保每个数据区域都采用列表格式:每列的第一行都有一个标签,列中包含相应的数据,并且列表中没有空白的行或列。 将每个区域分别置于单独的工作表中,不要将任何区域放在需要放置合并的工作表中。 确保每个区域都具有相同的布局。 提示 如果频繁地对数据进行合并计算,这可能会有助于使工作表以使用一致布局的工作表模板为基础。在主工作表中,在要显示合并数据的单元格区域中,单击左上方的单元格。 注释为避免在目标工作表中所合并的数据覆盖现有数据,请确保在此单元格的右侧和下面为合并数据留出足够多的单元格。在“数据”选项卡上的“数据工具”组中,单击“合并”。在“函数”框中,单击希望 Microsoft Excel 用来对数据进行合并计算的汇总函数 (汇总函数:是一种计算类型,用于在数据透视表或合并计算表中合并源数据,或在列表或数据库中插入自动分类汇总。汇总函数的例子包括 Sum、Count 和 Average。)。 如果包含要对其进行合并计算的数据的工作表位于另一个工作簿中,请单击“浏览”找到该工作簿,然后单击“确定”关闭“浏览”对话框。 在“引用”框中输入后跟感叹号的文件路径。如果包含要对其进行合并计算的数据的工作表位于当前工作簿中,请执行下列 *** 作: 在“引用”框中,单击“折叠对话框”按钮以选择工作表中的数据。 单击包含要对其进行合并计算的数据的工作表,选择该数据,然后单击“展开对话框”按钮。在“合并计算”对话框中,单击“添加”,然后重复步骤 6 和步骤 7 以添加所需的所有区域。 通过执行下列 *** 作之一指定希望如何更新合并计算: 若要设置合并计算,以便它能够在另一个工作簿中的源数据发生变化时自动进行更新,请选中“创建指向源数据的链接”复选框。 要点 只有当包含数据的工作表位于另一个工作簿中时,才选中此复选框。一旦选中此复选框,则不能再更改合并计算中包括的单元格和区域。若要设置合并计算,以便您可以通过更改合并计算中包括的单元格和区域来手动更新合并计算,请清除“创建指向源数据的链接”复选框。 返回页首按类别进行合并计算 在包含要对其进行合并计算的数据的每个工作表中,通过执行下列 *** 作设置数据: 确保每个数据区域都采用列表格式:每列的第一行都有一个标签,列中包含相应的数据,并且列表中没有空白的行或列。 将每个区域分别置于单独的工作表中,不要将任何区域放在需要放置合并的工作表中。 确保每个区域都具有相同的布局。 提示 如果频繁地对数据进行合并计算,这可能会有助于使工作表以使用一致布局的工作表模板为基础。在主工作表中,在要显示合并数据的单元格区域中,单击左上方的单元格。 注释为避免在目标工作表中所合并的数据覆盖现有数据,请确保在此单元格的右侧和下面为合并数据留出足够多的单元格。在“数据”选项卡上的“数据工具”组中,单击“合并”。在“函数”框中,单击 Excel 用来对数据进行合并计算的汇总函数 (汇总函数:是一种计算类型,用于在数据透视表或合并计算表中合并源数据,或在列表或数据库中插入自动分类汇总。汇总函数的例子包括 Sum、Count 和 Average。)。 如果工作表在另一个工作簿中,请单击“浏览”找到文件,然后单击“确定”以关闭“浏览”对话框。 在“引用”框中输入后跟感叹号的文件路径。如果工作表位于当前工作簿中,请执行下列 *** 作: 单击“引用”框右侧的引用按钮,以打开“合并计算 - 引用”对话框。 打开包含要对其进行合并计算的数据的工作表,选择该数据,然后单击该对话框右侧的按钮。在“合并计算”对话框中,单击“添加”,然后重复步骤 6 和步骤 7 以添加所需的所有区域。 确定希望如何更新合并计算。请执行下列 *** 作之一: 若要设置合并计算,以便它在源数据改变时自动更新,请选中“创建指向源数据的链接”复选框。 要点 只有当该工作表位于其他工作簿中时,才能选中此复选框。一旦选中此复选框,则不能对在合并计算中包括哪些单元格和区域进行更改。若要设置合并计算,以便您可以通过更改合并计算中包括的单元格和区域来手动更新合并计算,请清除“创建指向源数据的链接”复选框。在“标签位置”下,选中指示标签在源区域中位置的复选框:“首行”或“最左列”或两者都选。 注释与其他源区域中的标签不匹配的任何标签都会导致合并计算中出现单独的行或列。 确保不想进行合并计算的任何类别都有仅出现在一个源区域中的唯一标签。

数据库系统由哪几部分组成?数据库系统DBS(Data Base System,简称DBS)通常由软件、数据库和数据管理员组成。其软件主要包括 *** 作系统、各种宿主语言、实用程序以及数据库管理系统。数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系统进行。数据管理员负责创建、监控和维护整个数据库,使数据能被任何有权使用的人有效使用。数据库管理员一般是由业务水平较高、资历较深的人员担任。

数据库系统一般由4个部分组成:

(1)数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按一定的数学模型组织、描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并可为各种用户共享。

(2)硬件:构成计算机系统的各种物理设备,包括存储所需的外部设备。硬件的配置应满足整个数据库系统的需要。

(3)软件:包括 *** 作系统、数据库管理系统及应用程序。数据库管理系统(database management system,DBMS)是数据库系统的核心软件,是在 *** 作系统的支持下工作,解决如何科学地组织和存储数据,如何高效获取和维护数据的系统软件。其主要功能包括:数据定义功能、数据 *** 纵功能、数据库的运行管理和数据库的建立与维护。

(4)人员:主要有4类。第一类为系统分析员和数据库设计人员:系统分析员负责应用系统的需求分析和规范说明,他们和用户及数据库管理员一起确定系统的硬件配置,并参与数据库系统的概要设计。数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。第二类为应用程序员,负责编写使用数据库的应用程序。这些应用程序可对数据进行检索、建立、删除或修改。第三类为最终用户,他们利用系统的接口或查询语言访问数据库。第四类用户是数据库管理员(data base administrator,DBA),负责数据库的总体信息控制。DBA的具体职责包括:具体数据库中的信息内容和结构,决定数据库的存储结构和存取策略,定义数据库的安全性要求和完整性约束条件,监控数据库的使用和运行,负责数据库的性能改进、数据库的重组和重构,以提高系统的性能。

其中应用程序包含在软件范围内,是指数据库应用系统,比如开发工具、人才管理系统、信息管理系统等。

层次关系可参见如下图:

数据库系统一般包含以下几个方面:

1、数据库:

是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按一定的数学模型组织、描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并可为各种用户共享。

2、硬件:

构成计算机系统的各种物理设备,包括存储所需的外部设备。硬件的配置应满足整个数据库系统的需要。

3、软件:

包括 *** 作系统、数据库管理系统及应用程序。数据库管理系统是数据库系统的核心软件,是在 *** 作系统的支持下工作,解决如何科学地组织和存储数据,如何高效获取和维护数据的系统软件。

4、人员:

第一类为系统分析员和数据库设计人员,系统分析员负责应用系统的需求分析和规范说明。数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。

第二类为应用程序员,负责编写使用数据库的应用程序。第三类为最终用户,他们利用系统的接口或查询语言访问数据库。第四类用户是数据库管理员,负责数据库的总体信息控制。

扩展资料:

数据库系统的基本功能:

1、能够保证数据的独立性。数据和程序相互独立有利于加快软件开发速度,节省开发费用。

2、冗余数据少,数据共享程度高。

3、系统的用户接口简单,用户容易掌握,使用方便。

4、能够确保系统运行可靠,出现故障时能迅速排除;能够保护数据不受非受权者访问或破坏;能够防止错误数据的产生,一旦产生也能及时发现。

5、有重新组织数据的能力,能改变数据的存储结构或数据存储位置,以适应用户 *** 作特性的变化,改善由于频繁插入、删除 *** 作造成的数据组织零乱和时空性能变坏的状况。

参考资料来源:百度百科-数据库系统

一、课程设计的内容

本课程设计要采用本课程中学习的数据库设计方法,运用其基本思路与主要图表工具完成“企业报刊订阅管理系统”数据库应用系统。完成信息需求分析与数据库的概念设计、逻辑设计、物理设计以及处理功能设计,用SQL Sever的数据库管理系统、JSP开发工具实现该系统,并运行、评价、改进之;在此基础上严格按课程设计教学大纲所附报告提纲撰写课程设计报告。通过本课程设计进一步弄懂数据库系统及其相关的基本概念,理解数据库系统的系统结构、主要特点,掌握数据库设计的原理、方法及其基本过程,初步具备数据库应用设计的能力,初步形成运用数据库应用系统解决管理决策中的实际问题的基本素质。

二、课程设计的要求与数据

要求学生结合所学管理知识,在借鉴课堂教学案例、了解家人或亲友所从事的业务及其流程的基础上,参考有关资料,选择自己了解的一项业务,运用课堂所学数据库系统与数据库设计知识,完成信息需求分析、数据库概念设计、逻辑设计、物理设计,实现完成该业务的数据库应用系统,并运行、评价改进之,最后要写出课程设计报告。

三、课程设计应完成的工作

要求学生按照《数据库应用课程设计》教学大纲完成一个数据库应用系统,并撰写相应的课程设计报告,主要内容包括:

概述:系统的基本任务,主要业务,开发目标

1 需求分析

2 (数据库)概念(模型)设计

3 (数据库)逻辑(模型)设计

4 数据库物理设计与数据库保护设计

5 处理功能设计

6 数据库应用系统的实现

7 数据库应用系统运行

四、课程设计进程安排

序号 设计各阶段内容 地点 起止日期

五、应收集的资料及主要参考文献

[1] 王 珊、陈 虹编著,数据库系统原理教程,清华大学出版社,2003

[1] 金银秋主编,数据库原理与设计,科学出版社,2000

[2] 李建中 王珊,数据库系统原理,电子工业出版社,1998

[3] 李大友,数据库原理及应用(第二版),清华大学出版社,2000

发出任务书日期: 年 月 日 指导教师签名:

计划完成日期: 年 月 日 基层教学单位责任人签章:

主管院长签章:

目录

概述 …………………………………………………………………4

1 需求分析…………………………………………………………4

11用户需求……………………………………………………………………4

12业务流程分析………………………………………………………………4

13信息需求分析………………………………………………………………5

14功能需求分析………………………………………………………………6

2 (数据库)概念(模型)设计…………………………………7

3 (数据库)逻辑(模型)设计…………………………………9

31 一般逻辑模型设计…………………………………………………………9

32 具体逻辑模型设计…………………………………………………………9

4 数据库物理设计与数据库保护设计…………………………10

41设计索引……………………………………………………………………10

42 设计表间关系………………………………………………………………10

43完整性设计…………………………………………………………………10

5 处理功能设计…………………………………………………11

6 数据库应用系统的实现………………………………………11

7 数据库应用系统运行…………………………………………11

71 写出系统 *** 作使用的简要说明……………………………………………11

72 系统实施过程………………………………………………………………11

73系统使用结果………………………………………………………………22

74系统评价……………………………………………………………………31

企业报刊订阅管理系统

概述

随着社会不断的发展,人们的生活水平越来越高,对知识的和对时事的渴求也越来越高,人们希望能够方便快捷地订阅各种报刊杂志。但是各种各样的报刊名目和详细信息以及订阅,为相关企业的管理造成很大的麻烦。因此网上订阅成为不可或缺的一部分。

本系统就是面向一个企业的报刊订阅管理系统。此系统是一种比较智能化的管理系统,它面向所有企业部门的职工用户,但具有比较高的安全性能。它能够实现报刊订阅的基本功能,包括新报刊信息的录入、订阅、查询等 *** 作以及后台数据库的备份和恢复。用户合法注册后必须输入有效密码才能成功进入此系统,可以进行订阅报刊,查询信息,统计信息等 *** 作。对于非法 *** 作,系统有识别和防护措施。

1 需求分析

11 用户需求:

本系统就是面向一个企业的报刊订阅管理系统。此系统是一种比较智能化的管理系统,它面向所有企业部门的职工用户,但具有比较高的安全性能。它能够实现报刊订阅的基本功能,包括新报刊信息的录入、订阅、查询等 *** 作以及后台数据库的备份和恢复。用户合法注册后必须输入有效密码才能成功进入此系统,可以进行订阅报刊,查询信息,统计信息等 *** 作。对于非法 *** 作,系统有识别和防护措施。

订阅信息处理的特点是订阅信息处理量比较大,所管理的信息信息种类繁多,而且订阅单、编辑单的发生量特别大,关联信息多,查询和统计的方式各不相同。因此在管理上实现起来有一定因难。

本系统在设计过程中,为了克服这些困难,需要使程序代码标准化,软件统一化,确保软件的可维护性和实用性;删除不必要的管理冗余,实现管理规范化、科学化;界面友好、简单化,做到实用、方便,尽量满足报刊订阅中员工的需要。

12 业务流程分析:

本系统主要面向的用户有系统管理员、读者。下面分角色对该系统的不同 *** 作范围做说明。

本系统主要有以下功能模块:

(1)登陆功能:登陆系统为身份验证登录。分为管理员登录和一般用户登录。分别通过不同的用户名和密码进入报刊订阅管理界面,新的用户需要注册。

(2)录入新信息功能:对于管理员,包括新用户信息和新报刊信息的录入功能,信息一旦提交就存入到后台数据库中;普通用户自行注册进行可以修改个人信息。

(3)订阅功能:用户可以订阅报刊,系统自动计算所需金额,并显示在界面上;管理员不可订阅报刊,必须以用户身份订阅报刊。

(4)查询功能:用户可以查询并显示自己所订阅的信息;管理员可以按人员、报刊、部门分类查询。查询出的信息显示在界面上,并且可以预览和打印出结果。

(5)统计功能:管理员可以按用户、部门、报刊统计报刊的销售情况,并对一些重要的订阅信息进行统计;普通用户可以统计出自己的订阅情况,并且可以预览和打印出结果。

(6)系统维护功能:数据的安全管理,主要是依靠管理员对数据库里的信息进行备份和恢复,数据库备份后,如果出了什么意外可以恢复数据库到当时备份的状态,这提高了系统和数据的安全性,有利于系统的维护。

下图为该系统的业务流程图

13 信息需求分析

131 资料收集:业务流程中用到的相关单据主要是报刊信息还有订单信息

报刊信息表:

报刊代号 46-250 报刊名称 IT时代周刊

出版报社 科技出版社

出版周期 半月刊

每月定价 1000 元/月

分类编号 1001

报刊介绍 《IT时代周刊》是一本深刻解读信息时代商业变革的杂志。除深度报道信息产业的重大新闻外,还报道金融、汽车、股市、零售等传统行业利用IT提升商业与管理的新闻。《IT时代周刊》以调查见深度;以商业故事见功力。是CEO/CIO/CFO以及政府官员、商业领袖首选刊物。

订单信息表:

订单编号 报刊代号 用户编号 订阅日期 订阅月数 份数 *** 作

3003 46-205 3206 2008-7-1 订一月 1 取消订阅

3004 26-306 3108 2008-7-8 订半年 2 取消订阅

3005 72-310 3100 2008-7-9 订一年 1 取消订阅

3006 45-214 2541 2008-7-10 订一季 1 取消订阅

132 事项分析:根据以上资料中标题、表头等中各栏目名,可以得出相关事项,作为数据项;分析这些数据项,找出组合项、导出项、非结构化数据项,确定基本项。检查是否有要补充的基本数据项,是否有要改进的地方,补充改进之,得出所有基本项。

14 功能需求分析:

本系统的主要结构功能图如下:

2 (数据库)概念(模型)设计

基本项构思ERD的四条基本原则:

①原则1 (确定实体):能独立存在的事物,例如人、物、事、地、团体、机构、活动、事项等等,在其有多个由基本项描述的特性需要关注时,就应把它作为实体。

②原则2 (确定联系):两个或多个实体间的关联与结合,如主管,从属,组成,占有,作用,配合,协同等等,当需要予以关注时,应作为联系。实体间的联系可分为一对一、一对多、多对多等三类,在确定联系时还要确定其类型。

③原则3 (确定属性):实体的属性是实体的本质特征。实体应有标识属性(能把不同个体区分开来的属性组),并指定其中一个作为主标识。联系的属性是联系的结果或状态。

④原则4(一事一地):信息分析中得到的基本项要在且仅在实体联系图中的一个地方作为属性出现。

经过上述系统功能分析和需求总结,设计如下面所示的数据项和数据结构。

 管理员表(Adminuser):用于存放管理员的数据记录,包括数据项:管理员名、密码。

 部门表(Department):用来存放部门的相关记录,包括数据项:部门号,部门名。

 用户表(Users):用于存放注册用户的记录,包括数据项:用户账号、密码、真实姓名、身份z号、联系电话,联系地址,部门号(和部门表有关)等。

 报刊类别表(NewspaperClass):用于存放初始的报刊类别记录,包括数据项:分类编号、分类名称。

 报刊信息表(Newspaper):用于存放报刊记录,包括数据项:报刊代号、报刊名称、出版报社、出版周期、季度报价、内容介绍、分类编号(和报刊类别表有关)等。

 订单表(Order):用于存放用户下达的订阅报刊的基本信息,包括数据项:订单编号、用户编号(用户表的主码)、报刊代号(报刊信息表的主码)、订阅份数、订阅月数等。

根据上面的设计规划出来的实体有部门实体、管理员实体、用户实体、报刊类别实体、报刊信息实体和订单实体。

部门实体的E-R图如下图所示: 管理员实体的E-R图如下图所示:

用户实体的E-R图如下图所示: 报刊信息实体的E-R图如下图所示:

订单实体的E-R图如下图所示: 报刊类别实体的E-R图如下图所示:

所有实体之间的的关系E-R图如下图所示:

3 (数据库)逻辑(模型)设计

31 一般逻辑模型设计:

关系模型的逻辑结构是一组关系模式的集合。将E-R图转换为关系模型就是要将实体型、实体的属性和实体型之间的联系转换为关系模式。

由ERD导出一般关系模型的四条原则;

①一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果软换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一端实体对应的关系模式何明,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。

②一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。

③一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。

④3个或3个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系项链呢的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。

根据以上原则将E-R图转换成的关系模式如下:

部门(部门号,部门名称)

用户(用户账号,密码,用户真实姓名,联系电话,联系地址,部门号)

管理员(管理员名,密码)

报刊类别(分类编号,分类名称)

报刊(报刊代号,报刊名称,出版报社,出版周期,每月订价,内容介绍,分类编号)

订单(用户编号,报刊代号,订阅份数,订阅月数,订阅总额)

32 具体逻辑模型设计:

在SQL Server2000数据库中,首先创建newspaper数据库,然后根据数据库的逻辑结构分析创建表4-1━4-6的6张数据表。在前台访问数据库阶段设置了用户和密码,用户为sa,密码为空。

表4-2 department部门表结构

字段名称 字段类型 允许空 说明

depNumber(主码) Char(10) 否 部门号

depName Char(50) 是 部门名称

表4-3 users用户表结构

字段名称 字段类型 允许空 说明

userNo(主码) Char(10) 否 用户帐号

userName Char(20) 是 真实姓名

passWord Char(10) 否 用户密码

address Char(150) 是 用户联系地址

phone Char(20) 是 用户联系电话

depNumber Char(10) 否 用户所属部门号

表4-3 newspaperClass报刊分类表结构

字段名称 字段类型 允许空 说明

classid(主码) Int(4) 否 报刊分类编号

className Char(30) 是 报刊分类名称

表4-4 newspaper报刊表结构

字段名称 字段类型 允许空 说明

newsNo(主码) Char(10) 否 报刊代号

newsName Char(40) 否 报刊名称

classid Int(4) 否 报刊分类编号

publish Char(150) 是 出版报社

pubPeriod Char(30) 是 出版周期

content Char(4000) 是 内容介绍

price Float(8) 否 每月报价

表-6 book订单表结构

字段名称 字段类型 允许空 说明

userNo(主码) Char(10) 否 用户帐号

newsNo(主码) Char(10) 否 报刊代号

orderAmount Int(4) 否 订阅份数

orderMonth Int(4) 否 订阅月数

totalPrice Float(8) 是 订阅总额

表4-1 adminuser管理员表结构

字段名称 字段类型 允许空 说明

adminUser(主码) Char(20) 否 管理员用户名

adminPass Char(10) 否 管理员密码

4 数据库物理设计与数据库保护设计

41设计索引:我们可以在最经常查询的列上建立索引以提高查询效率。

而在这个系统中,我们经常要按用户账号,按报刊代号,按部门查询,所以,我们可以为这三个表建立索引,建立所以的SQL语句如下,这几个都是字符型

Create unique index userNum on users(userNo)

Create unique index departNum on department(depNumber)

Create unique index newsNum on newspaper(newsNO)

42 设计表间关系:

43完整性设计列出主要字段完整性的字段名、完整性约束条件;列出记录完整性约束及其约束条件;列出参照完整性表。

主要字段的完整性字段名和参照完整性表可以参照上图各个表之间的关系来看。

比如建立报刊表newspaper时,要求报刊代号在100~99999之间,报刊名称和每月定价不能取空值,报刊类别是报刊类别表的主键,则

Create table user

(userNo char(10) constraint C1 check(newsNo between 100 and 99999),

newsName char(40) constraint C2 not null,

classid int(4) constraint C3 not null,

publish char(150),pubPeriod char(30),content char(4000),

price float(8) not null,

constraint C4 foreign key(classid) references newspaperclass(classid) )

44在有多个用户 *** 作时,考虑用户授权与安全性控制。

因为这个报刊订阅系统由多个用户使用,分为管理员和用户,他们拥有不同的权限和安全性控制。所以在权限设置方面,采用管理员和用户分别使用用户名和密码进入他们能使用权限范围里的界面。管理员登陆系统后,可以添加、修改用户和报刊的信息,可以对订单进行查询和统计,并且可以把查询统计的结果进行预览和打印出来,还要对数据库系统进行维护,适时备份数据库,一旦数据库遇到问题,可以恢复到最近备份的状态,减少不必要的损失。

用户登录,用户使用该系统前需要进行注册,他应该是该企业某个部门下面的员工,所以他需要输入他的部门号等信息,注册成功后,登录到系统,可以修改自己的信息还有订阅报刊,但由于权限的限制,他只能查看和统计自己的订单信息。

5 处理功能设计

51 主控模块设计:

使用本系统,首先它会自动d出“欢迎使用本系统”的欢迎界面,然后跳转到用户身份验证界面,选择管理员的身份进入,有录入(录入报刊信息、录入用户信息),查询,统计(统计用户、统计、报刊订单),系统维护(备份数据库、恢复数据库),注销,退出等菜单可使用,没注册的用户可进入注册界面进行注册,然后返回登录界面登录,进入后有欢迎界面,有订阅、查询、统计、修改、注销、退出等菜单可使用。

6 数据库应用系统的实现

61 数据库及其表结构的建立:按照上面的逻辑分析见表

62数据输入:在建好的各个表中输入数据,要符合数据的约束条件

7 数据库应用系统运行

71 写出系统 *** 作使用的简要说明

本系统的运行需要安装PowerBuilder90和SQL Server2000软件。 *** 作该系统,首先把备份的数据库还原出来,导入SQL Server中,然后打开该系统,连接上还原出来的数据库,再运行,就可以了。

72 系统实施过程

(1)打开PowerBuilder,新建一个工作区,命名为newspaper

(2)新建一个Application,取名newspaper,然后点击工具栏上的DB Profile,新建一个MSS Microsoft SQL Server,填入Profile Name,服务器名,用户名,密码,数据库,如下图,然后输入连接数据库的主要代码:

open(w_welcome)

// Profile newspaper

SQLCADBMS = "MSS Microsoft SQL Server"

SQLCADatabase = "newspaper"

SQLCAServerName = "CHINA-41CD782EF"

SQLCALogId = "sa"

SQLCALogPass=""

SQLCAAutoCommit = False

SQLCADBParm = ""

connect;

if sqlcasqlcode<>0 then

messagebox("错误","数据库连接错误,程序将关闭!",stopsign!)

return

end if

close(w_welcome)

open(w_login)

(3)制作登录页面w_login,在“确定”按钮输入如下:

“注册”按钮代码:open(w_register) //打开用户注册页面

“退出”按钮代码:close(w_login) //退出本系统

(4)制作注册窗口w_register,在“注册”按钮的代码如下:

“取消”按钮代码:close(w_register)

open(w_login)

(5)制作管理员主菜单w_adminview,建管理员主界面w_adminview,将该菜单放到窗口中

(6)制作用户主菜单w_userview,建用户主界面w_userview,将菜单放到窗口中

(7)制作管理员主菜单里的录入报刊信息窗口w_inmagazine,录入用户信息窗口w_inuser,

制作数据窗口dw_magagrid,dw_magafree,dw_userfree,dw_usergrid,在数据窗口调整好外观,添加控件,并设定相应的动作,分别放到这两个窗口中

这两个窗口功能相识,在窗口中输入:

dw_1settransobject(sqlca)

dw_1retrieve()

dw_2settransobject(sqlca)

dw_2retrieve()

(8)制作管理员主菜单中的查询订阅信息窗口w_searchorder,制作数据窗口dw_booksearch,将其放入窗体中,在窗口中输入代码:

dw_1settransobject(sqlca)

dw_1retrieve()

sle_1setfocus()

在“查询”按钮中输入代码:

“预览”按钮的代码:

“关闭”按钮代码:close(w_searchorder)

数据窗口字段如下:

(9)制作管理员主菜单中的统计用户订单窗口w_statuser,统计部门订单窗口w_statdept,统计报刊订单窗口w_statnews:制作统计数据窗口dw_statnews,dw_statuser,dw_statdept将dw_statnews,dw_statuser,dw_statdept分别放入w_statnews, w_statuser,w_statdept中;以下仅列出按出按部门统计的代码和界面 (按用户、报刊统计类似,略);

按部门统计代码:

窗口代码:

按部门统计数据窗口:

dw_1settransobject(sqlca)

dw_1retrieve()

预览键代码:(与上页预览代码相同)

退出:close(parent)

(10)管理员主菜单中的更改登录在w_adminview中的代码

(11)管理员主菜单中的退出系统在w_adminview中的代码

(12)管理员主菜单中的数据库备份窗口w_backup,“开始备份”按钮的代码如下

在“>>”按钮带输入代码:

(13)管理员主菜单中的数据库恢复窗口w_restore,“开始恢复”按钮的代码如下

在“>>”按钮带输入代码:

在“开始恢复”按钮输入代码:

(14)用户主菜单的订阅报刊窗口w_userorder

该系统中定义了一个全局变量gs_userid,其它窗口界面都可以使用该变量,并显示用户名,用户登录后,它会显示“~~~~,欢迎使用本系统!”的欢迎界面。

窗口代码:

dw_1settransobject(sqlca)

dw_1retrieve()

sle_1setfocus()

sle_2text=gs_userid

“清空”按钮代码:

sle_1text=""

sle_3text=""

sle_5text=""

“退出”按钮代码:

close(w_userorder)

“订阅”按钮代码:

(14)用户主菜单的查询订单窗口w_usersearch,将订单查找dw_booksearch放到窗口里,在窗口中过过滤器筛选中用户自己的订单信息,一打开就可以看到自己的订单信息,可打印和预览结果

窗口代码:

“预览”和“退出”按钮同上

(15)用户主菜单的查询订单窗口w_userstatis,将用户统计dw_statuser放到窗口里,在窗口中过过滤器筛选中用户自己的订单信息,一打开就可以看到自己的订单信息,可打印和预览结果,窗口代码如下:

用户统计dw_statuser数据窗口如下:

“预览”“退出”按钮略

(16)用户主菜单中的修改用户信息窗口w_usermodify,打开会先显示出你的信息,而用户名这一栏是输入不了的,也就是不能修改用户名,窗口代码如下:

“保存”按钮代码如下:

(17)用户主菜单中的更改登录和退出系统的代码和管理员的一样,这里就省略了。

73系统使用结果

打开本系统,首先d出欢迎界面,通常一闪而过,然后到了登录界面,点击“注册”

按确定后,d出“恭喜,您已注册成功!”的对话框。如果这时刷新服务管理器,打开SQL Server企业管理器,打开该数据库的用户表,就可看到刚才注册的用户已经在表中了

然后返回到登陆页面,输入刚才注册到的用户名和密码maishning,123456

登录后,d出一个窗口,有供用户使用的菜单,界面显示“~~~~,欢迎使用本系统”

选择“订阅”菜单,在这个订阅界面,用户可以浏览到所有的报刊信息,要订阅报刊时,用户不需输入用户名与密码,只需输入您要订阅的报刊代号(该报刊代号必须是报刊表中存在的),订阅份数(必须是小于8的整数才有效),然后选择需要订阅的月数(一月、一季、半年或一年)然后点击“订阅”按钮

订阅成功后,系统d出“恭喜!你已成功订阅该报刊,总金额是~~~~”确定后会显示出您所订阅的总额是多少元,按“清空”按钮后可以订阅其它报刊(同样的报刊不可重复订阅)

再订阅其它报刊,然后按“退出”按钮,来到用户主菜单然后选择“查询”菜单,这个数据窗口经过过滤,一打开就直接显示该用户过订阅的订单,可以进行预览和打印。

由于权限的限制,“统计”菜单中的也是只能统计自己订单信息的数据

在“退订”报刊菜单中,可以查看自己的订单,单击“退订”然后“保存”即可完成退订

在“修改”信息菜单中,用户名也是不可输入的文本框,即不可修改用户名,其它信息可以修改,保存后它会自动添加到数据库中

选择菜单上的“注销”,可以用不同的身份进入系统,确定后回到登录界面

以管理员的身份登录,用户名111,密码111,按登录按键,可看到管理员菜单

选择菜单栏中的录入->录入报刊信息,管理员可以大致浏览所有报刊信息,在上面的数据窗口可以查看上一页和下一页的具体内容,并且可以对其进行添加,删除、修改、保存等 *** 作。

录入用户信息页面,基本相似

选择菜单栏中的“查询”->“订单信息”,管理员拥有的权限可以看到所有的订单信息

管理员也可以根据需要分别按部门、按用户、按报刊查询,比如,要查询msishning用户,在文本框中输入关键字,选择单选按钮中的“按部门号”,点击“查询”,结果如下

可对全部订单或查询出来的订单进行预览和打印,方便使用

菜单栏中的“统计”菜单有三个子菜单,管理员可以分别统计用户订单信息、部门订单信息和报刊订单信息, 直接选择就可看到统计结果,比如选择“统计用户订单信息”

可将统计出来的结果进行预览和打印,方便使用,其它两个统计功能相似,略

主菜单中的系统维护->数据库备份,选择备份的位置,然后“开始备份”

主菜单中的系统维护->数据库恢复,选择之前备份的文件,输入路径和数据库名,然后“开始恢复”

74系统评价:

数据库系统的软件主要包括:

(1)数据库管理系统,DBMS是为数据库的建立、使用和维护配置的软件。

(2)支持DBMS运行的 *** 作系统。

(3)具有与数据库接口的高级语言及其编译系统,便于开发应用程序。

(4)以DBMS为核心的应用开发工具。

(5)为特定应用环境开发的数据库应用系统。

2.整个数据库系统对硬件资源提出了较高的要求:

(1)为了存放 *** 作系统、DBMS的核心模块、数据缓冲区和应用程序,需要足够大的内存。

(2)要有足够大的磁盘等直接存取设备存放数据库,有足够的磁带(或软盘)用于数据备份。

(3)系统要提供较高的通道能力,以提高数据传送率。

3.DBA的重要职责是保证数据库的安全性和完整性。因此DBA负责确定各个用户对数据库的存取权限、数据的保密级别和完整性约束条件;DBA还有一个重要职责就是监视数据库系统的运行情况,及时处理运行过程中出现的问题。比如系统发生各种故障时,数据库会因此遭到不同程度的破坏,DBA必须在最短时间内将数据库恢复到正确状态,并尽可能不影响或少影响计算机系统其他部分的正常运行,DBA要定期对数据库进行重组织,以提高系统的性能;当用户的需求增加和改变时,DBA还要对数据库进行较大的改造,包括修改部分设计,即数据库的重构造。

4.系统分析员负责应用系统的需求分析和规范说明,要和用户及DBA相结合,确定系统的硬件软件配置,并参与数据库系统的概要设计。

数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。数据库设计人员必须参加用户需求调查和系统分析,然后进行数据库设计。在大多数情况下,数据库设计人员就由数据库管理员担任。

应用程序员负责设计和编写应用系统的程序模块并进行调试和安装。

5数据库管理系统的功能有:(1)数据定义;(2)数据 *** 纵;(3)数据库运行管理;(4)数据组织、存储和管理;(5)数据库的建立和维护;(6)数据通信接口。

6.DBMS由以下几个部分组成:(1)数据定义语言及其翻译处理程序;(2)数据 *** 纵语言及其编译(或解释)程序;(3)数据库运行控制程序;(4)实用程序。

在关系模型中,实体以及实体间的联系都是用关系来表示的。例如导师实体、研究生实体、导师与研究生之间的一对多联系都可以分别用一个关系来表示。在一个给定的应用领域中,所有实体及实体之间联系的关系的集合构成一个关系数据库。

关系模型的数据结构

关系数据库模型是如今最流行的数据库模型,其流行源于它结构的简单性。在关系模型中最重要的数据结构就是关系。构建关系模型下的数据库,其核心是设计组成数据库的关系。

关系设计中涉及到一些术语包括:

关系就是一张表,设计关系就是设计一张表;

元组是表中的一行;

属性是表中的一列,属性名是给属性起的名字;

关键字是表中的某个属性组,唯一确定一个元组;

关系模式是对关系的描述,一般表示为关系名(属性1,属性2,···,属性n);

外键是关系中不是该关系的关键字或只是关键字的一部分的某个属性或属性组合,但它同时是另一个关系的关键字;

主表是以外键作为主键的表;

从表指外键所在的表。

在为数据库设计关系时,必须为每个关系指定一个关键字或主码,并且在该关系中,关键字的值不能为空,即关键字的值为空的元组在关系中是不允许存在的。在有些关系中关键字是由单个属性组成的,在另一些关系中关键字是由若干个属性的组合而构成的,即这种关系中的元组不能由任何一个属性惟一表示,必须由多个属性的组合才能惟一表示。关系模式是稳定的,而关系是随时间不断变化的,因为数据库中的数据在不断更新。

1数据库引擎

MicrosoftJET(JointEngineeringTechnologe)是Aess和VisualBasic所提供的内嵌数据库功能的核心元素。JET是一种全能关系数据库引擎,可用来处理大多数中小型数据库。所谓数据库引擎是应用程序和数据库存储之间的一种接口,它将与数据库有关的内存管理、游标管理和错误管理等具体而复杂的细节问题抽象为一个既高度一致又简化的编程接口。

Jet数据库引擎包含在一组动态链接库(DLL)文件中,在运行时,这些文件被链接到VisualBasic程序。它把应用程序的请求翻译成对mdb文件或其他数据库的物理 *** 作。它真正读取、写入和修改数据库,并处理所有内部事务,如索引、锁定、安全性和引用完整性等。它还包含一个查询处理器,用于接收并执行结构化查询语言(SQL)的查询来实现所需的数据库 *** 作。另外,Jet数据库引擎还包含一个结果处理器.用来管理查询所返回的结果。

2ODBC

OpenDataBase(ODBC,开放数据库互连)是由Microsoft定义的一种数据库访问标准,它提供一种标准的数据库访问方法以访问不同平台的数据库。一个ODBC应用程序既可以访问在本地PC机上的数据库,也可以访问多种异构平台上的数据库,例如SQLServer、Oracle或者DB2。

ODBC本质上是一组数据库访问API(应用编程接口),但编程人员通过ODBC访问数据库时无需深入理解ODBC函数就可以访问ODBC功能,这是因为象VisualBasic这样的开发工具都提供了一些对象封装了ODBC函数。

3OLEDB

OLEDB是Microsoft开发的最新数据库访问接口,Microsoft将其定义为ODBC接班人。与ODBC类似,OLEDB提供了对关系数据库的访问,同时在此基础上,它对ODBC所提供的功能进行了一部分的扩展。作为一种标准的接口,OLEDB可以访问所有类型的数据,包括关系数据库、dBase等ISAM(索引序列访问方法)类型的文件、甚至E-MAIL或者Windows2000活动目录等。

OLEDB应用程序可以分为两种:OLEDB提供者(OLEDBProvider)和OLEDB使用者(OLEDBConsumer),OLEDB使用者就是使用OLEDB接口的应用程序,而OLEDB提供者负责访问数据源,并通过OLEDB接口向OLEDB使用者提供数据。

以上就是关于什么是数据库全部的内容,包括:什么是数据库、如何把同一张EXCEL中的200个表格自动汇总到同一张表格里、数据库系统由哪几部分组成等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/sjk/10219525.html

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

发表评论

登录后才能评论

评论列表(0条)

保存