设计数据库和实体类的一些问题

设计数据库和实体类的一些问题,第1张

最好的做法是每张表对应一个实体类bean,如果一张表关联其他表,把这张表对应的实体类加上就可以了。如果使用了Hibernate,就可以使用配置文件进行映射。

A实体类就是属性类,通常定义在model层里面。

B一般的实体类对应一个数据表,其中的属性对应数据表中的字段,这样做对数据库 *** 作起来方便。

这样做的好处:

1对对象实体的封装,体现OO思想。

2属性可以对字段定义和状态进行判断和过滤

3把相关信息用一个实体类封装后,我们在程序中可以把实体类作为参数传递,更加方便。

C说白了就是为了让程序员在对数据库 *** 作的时候不用写SQL语句

D就是一个数据库表生成一个类

数据库系统的基本概念 数据:实际上就是描述事物的符号记录。 数据的特点:有一定的结构,有型与值之分,如整型、实型、 字符型等。而数据的值给出了符合定型的值,如整型值15。 数据库:是数据的集合, 具有统一的结构形式并存放于统一的存储介质内, 是多种应用数据的集成,并可被各个应用程序共享。 数据库存放数据是按数据所提供的数据模式存放的, 具有集成与共享的特点。 数据库管理系统:一种系统软件,负责数据库中的数据组织、 数据 *** 纵、数据维护、控制及保护和数据服务等,是数据库的核心。 数据库管理系统功能: (1)数据模式定义:即为数据库构建其数据框架; (2)数据存取的物理构建: 为数据模式的物理存取与构建提供有效的存取方法与手段; (3)数据 *** 纵:为用户使用数据库的数据提供方便,如查询、 插入、修改、删除等以及简单的算术运算及统计; (4)数据的完整性、安生性定义与检查; (5)数据库的并发控制与故障恢复; (6)数据的服务:如拷贝、转存、重组、性能监测、分析等。 为完成以上六个功能,数据库管理系统提供以下的数据语言: (1)数据定义语言:负责数据的模式定义与数据的物理存取构建; (2)数据 *** 纵语言:负责数据的 *** 纵,如查询与增、删、改等; (3)数据控制语言:负责数据完整性、 安全性的定义与检查以及并发控制、故障恢复等。 数据语言按其使用方式具有两种结构形式:交互式命令( 又称自含型或自主型语言)宿主型语言( 一般可嵌入某些宿主语言中)。 数据库管理员:对数据库进行规划、设计、维护、 监视等的专业管理人员。 数据库系统:由数据库(数据)、数据库管理系统(软件)、 数据库管理员(人员)、硬件平台(硬件)、软件平台(软件) 五个部分构成的运行实体。 数据库应用系统:由数据库系统、应用软件及应用界面三者组成。 文件系统阶段:提供了简单的数据共享与数据管理能力, 但是它无法提供完整的、统一的、管理和数据共享的能力。 层次数据库与网状数据库系统阶段 :为统一与共享数据提供了有力支撑。 关系数据库系统阶段 数据库系统的基本特点:数据的集成性 、数据的高共享性与低冗余性 、数据独立性(物理独立性与逻辑独立性)、数据统一管理与控制。 数据库系统的三级模式: (1)概念模式:数据库系统中全局数据逻辑结构的描述, 全体用户公共数据视图; (2)外模式:也称子模式与用户模式。是用户的数据视图, 也就是用户所见到的数据模式; (3)内模式:又称物理模式, 它给出了数据库物理存储结构与物理存取方法。 数据库系统的两级映射: (1)概念模式到内模式的映射; (2)外模式到概念模式的映射。 42 数据模型 数据模型的概念:是数据特征的抽象, 从抽象层次上描述了系统的静态特征、动态行为和约束条件, 为数据库系统的信息表与 *** 作提供一个抽象的框架。 描述了数据结构、数据 *** 作及数据约束。 E-R模型的基本概念 (1)实体:现实世界中的事物; (2)属性:事物的特性; (3)联系:现实世界中事物间的关系。实体集的关系有一对一、 一对多、多对多的联系。 E-R模型三个基本概念之间的联接关系: 实体是概念世界中的基本单位,属性有属性域, 每个实体可取属性域内的值。一个实体的所有属性值叫元组。 E-R模型的图示法:(1)实体集表示法; (2)属性表法; (3)联系表示法。 层次模型的基本结构是树形结构,具有以下特点: (1)每棵树有且仅有一个无双亲结点,称为根; (2)树中除根外所有结点有且仅有一个双亲。 从图论上看,网状模型是一个不加任何条件限制的无向图。 关系模型采用二维表来表示,简称表,由表框架及表的元组组成。 一个二维表就是一个关系。 在二维表中凡能唯一标识元组的最小属性称为键或码。 从所有侯选健中选取一个作为用户使用的键称主键。 表A中的某属性是某表B的键,则称该属性集为A的外键或外码。 关系中的数据约束: (1)实体完整性约束:约束关系的主键中属性值不能为空值; (2)参照完全性约束:是关系之间的基本约束; (3)用户定义的完整性约束: 它反映了具体应用中数据的语义要求。 43关系代数 关系数据库系统的特点之一是它建立在数据理论的基础之上, 有很多数据理论可以表示关系模型的数据 *** 作, 其中最为著名的是关系代数与关系演算。 关系模型的基本运算: (1)插入 (2)删除 (3)修改 (4)查询(包括投影、选择、笛卡尔积运算) 44 数据库设计与管理 数据库设计是数据应用的核心。 数据库设计的两种方法: (1)面向数据:以信息需求为主,兼顾处理需求; (2)面向过程:以处理需求为主,兼顾信息需求。 数据库的生命周期:需求分析阶段、概念设计阶段、逻辑设计阶段、 物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。 需求分析常用结构析方法和面向对象的方法。结构化分析( 简称SA)方法用自顶向下、逐层分解的方式分析系统。 用数据流图表达数据和处理过程的关系。对数据库设计来讲, 数据字典是进行详细的数据收集和数据分析所获得的主要结果。 数据字典是各类数据描述的集合,包括5个部分:数据项、 数据结构、数据流(可以是数据项,也可以是数据结构)、 数据存储、处理过程。 数据库概念设计的目的是分析数据内在语义关系。设计的方法有两种 (1)集中式模式设计法(适用于小型或并不复杂的单位或部门); (2)视图集成设计法。 设计方法:E-R模型与视图集成。 视图设计一般有三种设计次序:自顶向下、由底向上、由内向外。 视图集成的几种冲突:命名冲突、概念冲突、域冲突、约束冲突。 关系视图设计:关系视图的设计又称外模式设计。 关系视图的主要作用: (1)提供数据逻辑独立性; (2)能适应用户对数据的不同需求; (3)有一定数据保密功能。 数据库的物理设计主要目标是对数据内部物理结构作调整并选择合理 的存取路径,以提高数据库访问速度有效利用存储空间。 一般RDBMS中留给用户参与物理设计的内容大致有索引设计、 集成簇设计和分区设计。 数据库管理的内容: (1)数据库的建立; (2)数据库的调整; (3)数据库的重组; (4)数据库安全性与完整性控制; (5)数据库的故障恢复; (6)数据库监控。

实体-联系模型(简称E-R模型)是由PPChen于1976年首先提出的。它提供不受任何DBMS约束的面向用户的表达方法,在数据库设计中被广泛用作数据建模的工具。E-R数据模型问世后,经历了许多修改和扩充,这儿仅介绍基本的E-R数据模型。

1221 E-R模型的结构

E-R模型的构成成分是实体集、属性和联系集,其表示方法如下:

(1) 实体集用矩形框表示,矩形框内写上实体名。

(2) 实体的属性用椭圆框表示,框内写上属性名,并用无向边与其实体集相连。

(3) 实体间的联系用菱形框表示,联系以适当的含义命名,名字写在菱形框中,用无向连线将参加联系的实体矩形框分别与菱形框相连,并在连线上标明联系的类型,即1—1、1—M或M—M。

因此,E-R模型也称为E-R图。例如系、学生和课程的联系的E-R模型

系、学生和课程作为实体集;一个系有多个学生,而一个学生仅属于一个系,所以系和课程之间是一对多的联系;一个学生可以选修多门课程,而一门课程有多个学生选修,所以学生和课程之间是多对多的联系。

1222 E-R模型对几种特殊的实体联系的表示

E-R模型在表示复杂实体和实体之间的复杂联系方面有较强的能力。除了可以明确表示二个实体集之间1—1、1—M或M—M的联系。还可以:

(1) 表示三个以上的实体集之间的联系。

例如,一个售货员(Salesperson)可以将多种商品(Goods)售给一个顾客(Customer),而一个售货员也可以将一种商品售给多个顾客;一个顾客的一种商品可以由多个售货员经售。售货员、商品和顾客三个实体集之间的联系是多对多的三元联系,其E-R模型表(2) 表示一个实体集内部的联系

例如,雇员(EMP)这个实体集中,总经理下设多个部门经理,而部门经理下面有多个雇员。因此,雇员这个实体集中实体之间存在一对多的联系,其E-R模型如图112所示。

(3) 表示二个实体集之间的多种联系

例如,雇员(EMP)和设备(EQUIP)之间可以有多种联系,一种联系是一个设备可以由多个雇员 *** 作(operation),另一种联系是一个雇员可以维修(maintain)多个设备,其E-R模型1223 作E-R图的步骤

(1) 确定实体和实体的属性

(2) 确定实体之间的联系及联系的类型

(3) 给实体和联系加上属性

如何划分实体及其属性有两个原则可作参考:一是作为实体属性的事物本身没有再需要刻画的特征而且和其它实体没有联系。二是属性的一个值可以和多个实体对应,而不是相反。尽管E-R模型中的属性可以是单值属性也可以是多值属性,为简单计,多值属性常常被作为多个属性或作为一个实体(见第6章弱实体)。

例如,职工和部门,一般情况下,一个部门有多个职工,而一个职工仅属于一个部门。所以职工应作为实体,而部门既可作为职工的属性——部门本身仅有一个名称;也可以作为实体——部门具有部门号、部门名称及电话等, 再如,职工和工种,一个工种有多个职工,而一个职工仅属于一个工种,所以职工应作为实体,而工种既可作为职工的属性——工种本身仅有一个名称;也可以作为实体——工种和其它实体,例如和劳保用品有联系,如图115所示。

如何划分实体和联系也有一个原则可作参考:当描述发生在实体集之间的行为时,采用联系集。例如,读者和图书之间的借、还书行为,顾客和商品之间的购买行为,均应该作为联系集。

如何划分联系的属性:一是发生联系的实体的标识属性应作为联系的缺省属性,二是和联系中的所有实体都有关的属性。例如,学生和课程的选课联系中的成绩属性,顾客、商品和雇员之间的销售联系中的商品的数量等。

数据流图:简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。

数据流图的基本符号的意思:

1矩形表示数据的外部实体;

2圆角的矩形表示变换数据的处理逻辑;

3少右面的边矩形表示数据的存储;

4箭头表示数据流。

数据流程图中有以下几种主要元素:

→:数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份z号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。

□:数据源(终点)。代表系统之外的实体,可以是人、物或其他软件系统。

○:对数据的加工(处理)。加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。

〓:数据存储。表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。

数据流程图是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。

为了描述复杂的软件系统的信息流向和加工,可采用分层的DFD来描述,分层DFD有顶层,中间层、底层之分。

(1)顶层。决定系统的范围,决定输入输出数据流,它说明系统的边界,把整个系统的功能抽象为一个加工,顶层DFD只有一张。

(2)中间层。顶层之下是若干中间层,某一中间层既是它上一层加工的分解结果,又是它下一层若干加工的抽象,即它又可进一步分解。

(3)底层。若一张DFD的加工不能进一步分解,这张DFD就是底层的了。底层DFD的加工是由基本加工构成的,所谓基本加工是指不能再进行分解的加工。

数据流程图的基本成分

系统部件包括系统的外部实体、处理过程、数据存储和系统中的数据流四个组成部分

1,外部实体

外部实体指系统以外又和系统有联系的人或事物,它说明了数据的外部来源和去处,属于系统的外部和系统的界面。外部实体支持系统数据输入的实体称为源点,支持系统数据输出的实体称为终点。通常外部实体在数据流程图中用正方形框表示,框中写上外部实体名称,为了区分不同的外部实体,可以在正方形的左上角用一个字符表示,同一外部实体可在一张数据流程图中出现多次,这时在该外部实体符号的右下角画上小斜线表示重复

2,处理过程

处理指对数据逻辑处理,也就是数据变换,它用来改变数据值。而每一种处理又包括数据输入、数据处理和数据输出等部分。在数据流程图中处理过程用带圆角的长方形表示处理,长方形分三个部分,标识部分用来标识一个功能,功能描述部门是必不可少的,功能执行部门表示功能由谁来完成。

3,数据流

数据流是指处理功能的输入或输出。它用来表示一中间数据流值,但不能用来改变数据值。数据流是模拟系统数据在系统中传递过程的工具。

在数据流程图中用一个水平箭头或垂直箭头表示,箭头指出数据的流动方向,箭线旁注明数据流名。

4,数据存储

数据存储表示数据保存的地方,它用来存储数据。系统处理从数据存储中提取数据,也将处理的数据返回数据存储。与数据流不同的是数据存储本身不产生任何 *** 作,它仅仅响应存储和访问数据的要求。

在数据流程图中数据存储用右边开口的长方条表示。在长方条内写上数据存储名字。为了区别和引用方便,左端加一小格,再标上一个标识,用字母D和数字组成

1,画数据流程图的基本原则:

①数据流程图上所有图形符号必须是前面所述的四种基本元素。

②数据流程图的主图必须含有前面所述的四种基本元素,缺一不可。

③数据流程图上的数据流必须封闭在外部实体之间,外部实体可以是一个,也可以是多个。

④处理过程至少有一个输入数据流和一个输出数据流。

⑤任何一个数据流子图必须与它的父图上的一个处理过程对应,两者的输入数据流和输出数据流必须一致,即所谓“平衡”。

⑥数据流程图上的每个元素都必须有名字。

2,画数据流程图的基本步骤:

①把一个系统看成一个整体功能,明确信息的输入和输出。

②找到系统的外部实体。一旦找到外部实体,则系统与外部世界的界面就可以确定下来,系统的数据流的源点和终点也就找到了。

③找出外部实体的输入数据流和输出数据流。

④在图的边上画出系统的外部实体。

⑤从外部实体的输入流(源)出发,按照系统的逻辑需要,逐步画出一系列逻辑处理过程,直至找到外部实体处理所需的输出流,形成数据流的封闭。

⑥将系统内部数据处理又分别看做整体功能,其内部又有信息的处理、传递、存储过程。

⑦如此一级一级地剖析,直到所有处理步骤都很具体为止。

3,画数据流程图的注意事项:

①关于层次的划分

逐层扩展数据流程图,是对上一层图中某些处理框加以分解。随着处理的分解,功能越来越具体,数据存储、数据流越来越多。究竟怎样划分层次,划分到什么程度,没有绝对标准,一般认为展开的层次与管理层次一致,也可以划分得更细,处理块的分解要自然,注意功能完整性,一个处理框经过展开,一般以分解为4个至10个处理框为宜。

②检查数据流程图

对一个系统的理解,不可能一开始就完美无缺,开始分析一个系统时,尽管我们对问题的理解有不正确、不确切的地方,但还是应该根据我们的理解,用数据流程图表达出来,进行核对,逐步修改,获得较为完美的图纸。

③提高数据流程图的易理解性

数据流程图是系统分析员调查业务过程,与用户交换思想的工具。因此,数据流程图应简明易懂。这也有利于后面的设计,有利于对系统说明书进行维护。

以上就是关于设计数据库和实体类的一些问题全部的内容,包括:设计数据库和实体类的一些问题、什么是数据库的概念结构逻辑结构和物理结构.数据库是如何设计的 系统的安全性是如何考虑的、数据库系统1-2:实体-联系(E-R)模型等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存