当前位置:文档之家› 数据库结构设计要点

数据库结构设计要点

数据库结构设计要点
数据库结构设计要点

数据库结构设计要点

任何应用系统的高性能运行,最基本的是数据库结构的设计。数据库结构是整个应用系统的根基,如果结构设计不好,只在数据库的参数来优化恐怕也不理想。下面给出关于Oracle环境的数据库结构设计的一点介绍,希望指出的是,这里的内容仅作者本人的一些经验和体会,不是理论和方法。仅供Oracle应用开发人员参考。

§23.1 分析阶段的对表的理解

在系统需求分析阶段,一般需要有经验的系统分析员及编程人一起与用户进行交流。这个阶段主要是听用户对需求的描述。但是当我们对用户的需求有初步的了解后,就需要分析员将这些用户需求变为文档,即写出数据需求定义。

一般来说,对用户的复杂的表结构、表中再套小表这样的大表,需要将它们的数据之间理清,拆开成几个相互有关系的表结构。不要简单地将用户的表原封不动地进行转换。

§23.2 正确的主键字段的选择

选择主键字段的前提是,该列的值不能有重复,也不能空,这是基本的要求。此外,建议注意下面的问题:

●该列的值不能过长,比如不能使用单位名称作为主键;

●建议用字符型或数字型(整数)作为主键;

●不要用日期型,浮点型之类的字段作为主键;

●如果只用一个字段作为主键出现重复,可采用加校验位或选用两字段作为主键,但

不推荐用3个以上的字段作为主键。

§23.3 字段类型及长度的选择

对于一个表的字段来说,不同的设计者可能给出不同的类型,有时字段确实可以定义成不同的字段。在这方面,目前从理论上没有明确的限制和规定。因而许多人就认为字段的定义只要能满足用户的要求即可。其实对于一个要求很高且复杂的应用系统。定义字段可以说是一项值得认真考虑的技术问题。本人多年的应用设计和开发中的一点经验,仅供参考。

§23.3.1 如果能用字符型就不要用数字型

在许多地方,有一些字段你可以用数字型也可以用字符型,比如员工的身份证号,从表面看,它的内容全是数字。就由于它的表面特点,所以大多数人认为用数字类型是肯定的。其实我们想一下,身份证的每一位都有其特殊的意义,在数据的输入和查询中,都有一套严密的核查方法。比如最后一位表示男(1)或女(2)。当我们用字符型时,可以在输入中用

where substr(per_id,15,1)=’1’ or substr(per_id,15,1)=’2’来检查数据的正确性。如果采用数字这样的判断就不那么容易了。

另外,应该提醒许多新的Oracle使用的是,在Oracle里,字符型也能进行运算。如:

SQL> desc abc

名称空? 类型

----------------------------------------- -------- --------------------

NAME VARCHAR2(20)

SAL VARCHAR2(5)

COMM VARCHAR2(5)

TOT NUMBER(6)

SQL> select * from abc;

NAME SAL COMM TOT

-------------------- --------- ---------- ---------------

Jodan 2234 1000 0

Johan 2000 2000 3000

SQL> select sum(sal),sum(comm),sum(to_number(sal)+to_number(comm)) tot

2 from abc;

SUM(SAL) SUM(COMM) TOT

---------- ---------- ----------

3234 3000 6234

§23.3.2 相互产生运算的数字型字段长度和精度要一致

在字段定义中,除了要求数字型必须能容纳下以后可能变化的数据外,还需要注意的地方就是:凡是相互可能参加运算的字段,它们的长度及精度最好要一致。这样做,初看起来,好象有的数值小的字段很浪费空间,其实,不要担心空间浪费而专门考虑需要多少字节就够了的想法。因为如果数字型的字段长度和精度参差不齐,有可能在某些运算中产生不必要的错误结果。比如,我们可能用PRO*C来编程,当我们根据表中的数字字段定义变量时,C编译不会检查这些变量与表中字段的一致性关系。举例来说,在表中字段说明很大,在C语言中可以说明的很小,但是当你将表中的字段的数据取出放到变量时,C 语言并不提示任何错误,这样,如果我们不作任何转换就直接进行运算的话,可能出现另外的结果。

§23.3.2 不要为了节省空间而将字段的长度缩小或拆开

现在的存储硬件发展很快,不要将以前的教科书的一些过时的理论带到当前的应用设计中来。这里所说的是指,实际的用户需要就是字段的长度需要。比如,有人经常将日期分成三个字段来定义,可能写 nian char(2), 即两位的年; yue char(1), 即 1 位的月,ri char(2), 两位的日。这样在年份只能存放两位,2000年存为00,2001年存为01 ;而月份就不同了,设计者要求用户 1 月输入成 1, 2月输入成2 ,…而10月输入成a ;11月输入成b等。这样的设计好象节省了空间,其实也没有节省多少,一条记录节省2个字节,几千万条记录才节省才节省几十兆字节。这样做无形中增加了程序的处理时间。对于优化和将来的移植很不利。

§23.4 将LOB类型的字段与其它的类型分开

Oracle8I提供了许多可以用于存储大对象数据的类型,如LONG、LONG RAW等。从性能出发,建议在设计表结构时将这些大对象类型与其它的类型数据分开存储。比如职工的基本档案,档案上有职工的基本情况信息和照片,在设计最好将照这样的LONG RAW类型与职工基本信息分开。然后采用唯一关键字段进行连接。

§23.5 采用具有编码的设计方法

对于具有在多处被使用的值应采用编码来设计,如职工的单位名称,因为一个单位有多名职工,如果每个职工对应的记录都有单位名称的话,就出现所谓的冗余。编码一般有两种,除了前面提到的冗余以外,另外还考虑一些在应用中的使用的方便性的问题。比如银行的存款应用。可以考虑设计一个叫“交易代码”的代码,它表示分别表示“存入”、“取出”及“结息”。可以将该字段取名为:

tran_code char(1) check (tran_code=’1’or tran_code=’2’or tran_code=’3’) ,

在设计操作处理界时,只给操作操作者选择“存入”、“取出”或“结息”三种可能,这样可以避免让操作员直接输入字符所带来的不一致等的问题。

§23.6 建立公共字典表

除了上面提到的将具有共性的内容建立统一的代码表外,一个在设计中经常采用的方法就是:建立对象数据字典,与Oracle系统的数据字典类似。应用系统的数据字典也是为了各个对象的命名标准而采用的方法。凡是表名、索引名、表中的列名以及过程所用名称等最好以数据字典的方式在数据库建立。这样可以让Oracle系统来帮助我们进行检查。当一个新的对象需要命名时,可将其建立在这个字典中。字典中的名称要经过设计小组和用户讨论通过,通过之后就不能随便改动。在必须改动的时候,一定要经过DBA的同意并且背案才能修改。另外一个建议的是。在建立对象名称时一定要避免与Oracle的保留字同名。为了做到这一点,建议先将Oracle的保留字(各种关键字)放入一个表里,然后再建立时进行比较,以达到避免重复的目的。

§23.7 哪种类型的表设为cache 方式

Oracle提供了一种方法,可以将表的数据驻留在内存的SGA区内,这样叫做缓存(cache)。一般来说,把那些数据良不大,而且使用频率很高的表采用驻留的方式使Oracle 系统完成启动后就被读到内存的SGA区中。这样的操作命令非常简单。比如:

ALTER TABLE emp CACHE;

§23.8 数据表和索引分开原则

按照Oracle的性能要求,建议在大型应用系统中,将表和索引分别存放在不同的表空间里,以得到较高的性能效果。一般在建立表和索引之前,先按照应用系统的年数据量估计表空间的大小,要考虑该应用系统的所有表的可能数据量来估计。如果在Oracle系统内要存放多个应用系统,如人事子系统,工资子系统等。则应该为每个子系统建立相应的表空间。在数据表空间规划好后,接着考虑规划对应索引的表空间。索引表空间一般要比数据的表空间小些,一般考虑是数据表空间的1/3或1/2即可。

在数据表空间和索引表空间都建立好后,要在建立表结构和建立索引的脚本上指定将它们存放在哪个表空间上。这样可避免缺省使用系统的SYSTEM表空间的问题。

§23.9 是否采用簇和分区

对于那些具有主-从关系的表,并且在处理时,经常是由主表来访问子表的相应记录的要求,建议采用簇结构来建立表。比如会计到银行去给单位的所有职工发工资,就要找到

该单位,然后对该单位的每个职工进行工资拨付处理。这样的应用使用簇进行设计要比用主键外部键要有效的多。

§23.10 表和索引的空间预分配

在设计Oracle应用时,我们经常采用在分析阶段得到的数据来估计空间的需要量。这样当然是由用户给出的,我们一般都是根据经验来决定。虽然是经验,但也有一个基本的规则。这些规则就是:以用户给出的各种表的每个字段的类型及长度、各表的年数据量(不要以月来估计)、加上相应的余量后得到表及索引的预分配空间大小。这里所谓的预分配就是说先给每个对象分配一个估计的空间。在以后运行一段时间后在进行调整。

另外建议是:在对象的存储空间分配中,不要使用pctincrease 这样的参数,最好是一次就分配够一年的数据量,而且下次扩展(NEXT 参数)也要分配以半年左右的数据量为基本值。不要过于小气。这样对于性能有好处。

§23.11 确定数据库对象存储大小

下面给出Oracle8i数据库(包括表、索引及簇)对象大小估计的方法简单介绍:

§23.11.1 非簇表的大小计算

一般在创建表、索引时,除了指定初始空间外,这应指定记录的年增长值。要估计其大小,需要考虑下面方面:

1.计算表或索引的块数:

●数据库块=2048bytes

●块头信息=90bytes(oracle 8)

●块有效空间=

2048-90=1958 bytes available (有效字节)

●用于更新的空间 = 块有效空间*(pctfree/100):

假如pctfree=10,则

=用于更新空间=1958*(pctfree/100)

=1958*(10/100)

=196 bytes

即在有效的自由空间中,仅有196字节用于行扩展。

●行记录使用的有效空间

=1958-196=1762 bytes available

●行平均长度

如果表中已有数据,则可以用下面命令计算(假定只有三列):

Select AVG( NVL (vsite (column 1 ),0 )+

AVG(NUL (vsite (column 2 ),0 )+

AVG(NUL (vsite (column 3 ),0 ) ) Avg_Row_len

From table_name;

●每一行使用的空间:

如果平均长度AVG_ROW_LEN=24,这应加上每一列加1个字节,

如果表中有一个列(long字段)宽度超出250个字符,则这应加上1个字节。所以有: space_used_per_row=AVG_ROW_len

+3

+Number of columns

+Number of long columns

对于本列,则

space used per row=24

+ 3

+ 3

+ 0

=30 bytes per row

●块中可以存放多少行

对于一个块有1762字节的自由空间,每行长度为30个字节

则该块中可以存放

rows per block =TRUNC(1762 free bybes/30 bytes per row)

=58 row per block

由此可以估算出一个表所需的块数。

数据库表结构设计参考

数据库表结构设计参考

表名外部单位表(DeptOut) 列名数据类型(精度范围)空/非空约束条件 外部单位ID 变长字符串(50) N 主键 类型变长字符串(50) N 单位名称变长字符串(255) N 单位简称变长字符串(50) 单位全称变长字符串(255) 交换类型变长字符串(50) N 交换、市机、直送、邮局单位邮编变长字符串(6) 单位标识(英文) 变长字符串(50) 排序号整型(4) 交换号变长字符串(50) 单位领导变长字符串(50) 单位电话变长字符串(50) 所属城市变长字符串(50) 单位地址变长字符串(255) 备注变长字符串(255) 补充说明该表记录数约3000条左右,一般不做修改。初始化记录。 表名外部单位子表(DeptOutSub) 列名数据类型(精度范围)空/非空约束条件 外部子单位ID 变长字符串(50) N 父ID 变长字符串(50) N 外键 单位名称变长字符串(255) N 单位编码变长字符串(50) 补充说明该表记录数一般很少 表名内部单位表(DeptIn) 列名数据类型(精度范围)空/非空约束条件 内部单位ID 变长字符串(50) N 主键 类型变长字符串(50) N 单位名称变长字符串(255) N 单位简称变长字符串(50) 单位全称变长字符串(255) 工作职责 排序号整型(4) 单位领导变长字符串(50) 单位电话(分机)变长字符串(50) 备注变长字符串(255)

补充说明该表记录数较小(100条以内),一般不做修改。维护一次后很少修改 表名内部单位子表(DeptInSub) 列名数据类型(精度范围)空/非空约束条件内部子单位ID 变长字符串(50) N 父ID 变长字符串(50) N 外键 单位名称变长字符串(255) N 单位编码变长字符串(50) 单位类型变长字符串(50) 领导、部门 排序号Int 补充说明该表记录数一般很少 表名省、直辖市表(Province) 列名数据类型(精度范围)空/非空约束条件ID 变长字符串(50) N 名称变长字符串(50) N 外键 投递号变长字符串(255) N 补充说明该表记录数固定 表名急件电话语音记录表(TelCall) 列名数据类型(精度范围)空/非空约束条件ID 变长字符串(50) N 发送部门变长字符串(50) N 接收部门变长字符串(50) N 拨打电话号码变长字符串(50) 拨打内容变长字符串(50) 呼叫次数Int 呼叫时间Datetime 补充说明该表对应功能不完善,最后考虑此表 表名摄像头图像记录表(ScreenShot) 列名数据类型(精度范围)空/非空约束条件ID 变长字符串(50) N 拍照时间Datetime N 取件人所属部门变长字符串(50) N 取件人用户名变长字符串(50) 取件人卡号变长字符串(50) 图片文件BLOB/Image

概念结构设计和逻辑结构设计

概念结构设计和逻辑结构设计 一.系统概述 本系统通过调查从事医药产品的零售,批发等工作的企业,根据其具体情况设计医药销售管理系统。医药管理系统的设计和制作需要建立在调查的数据基础上,系统完成后预期希望实现药品基本信息的处理,辅助个部门工作人员工作并记录一些信息,一便于药品的销售和管理。通过此系统的功能,从事药品零售和批发等部门可以实现一些功能,如:基础信息管理,进货管理,库房管理,销售管理,财务统计,系统维护等。 二.概念结构设计 1.员工属性 2.药品属性 3.客户属性 4.供应商属性 5.医药销售管理系统E--R 图 三.逻辑结构设计 该设计概念以概念结构设计中的E--R 图为主要依据,设计出相关的整体逻辑结构,具体关系模型如下:(加下划线的表示为主码) 药品信息(药品编号,药品名称,药品类别,规格,售价,进价,有效期,生产日期,产地,备注) 供应商信息(供应商编号,供应商名称,负责人,) 员工 姓名 家庭地址 E-maill 电话 员工 编号 年龄 帐号

四.系统各功能模块如何现(数据流实图);1.基本信息管理子系统 基本信息管理子系统 药品信息员工信息客户信息供应商信息2.库存管理子系统 库存管理子系 统 库存查询库存信息出入库登记库存报表3.销售管理子系统 销售管理 销售登记销售退货销售查询 4.信息预警子系统 信息预警 报废预警库存预警 5.财务统计子系统 财务统计 统计销售额打印报表 6.系统管理子系统

系统管理 权限管理修改密码系统帮助 五.数据库设计(E-R图,数据库表结构) 1.药品基本信息表 列名字段数据类型可否为空说明药品编号 药品名称 药品类别 规格 进价 有效期 生产日期 售价 产地 备注 2.员工基本信息表 列名字段数据类型可否为空说明员工编号 性别 身份证号 员工年龄

数据库设计各阶段

1.数据库应用系统的设计步骤 按规范设计的方法可将数据库设计分为以下六个阶段 (1)需求分析; (2)概念结构设计; (3)逻辑结构设计; (4)数据库物理设计; (5)数据库实施; (6)数据库运行和维护。 2.需求分析 需求收集和分析是数据库应用系统设计的第一阶段。明确地把它作为数据库应用系统设计的第一步是十分重要的。这一阶段收集到的基础数据和一组数据流图(Data Flow Diaˉgram———DFD)是下一步设计概念结构的基础。概念结构对整个数据库设计具有深刻影响。而要设计好概念结构,就必须在需求分析阶段用系统的观点来考虑问题、收集和分析数据及其处理。如何分析和表达用户需求呢?在众多的分析方法中,结构化分析(Structured Analysis,简称SA方法)是一个简单实用的方法。SA方法用自顶向下、逐层分解的方式分析系统。用数据流图,数据字典描述系统。然后把一个处理功能的具体内容分解为若干子功能,每个子功能继续分解,直到把系统的工作过程表达清楚为止。在处理功能逐步分解的同时,它们所用的数据也逐级分解。形成若干层次的数据流图。数据流图表达了数据和处理过程的关系。处理过程的处理逻辑常常用判定表或判定树来描述。数据字典(Data Dictionary,简称DD)则是对系统中数据的详尽描述,是各类数据属性的清单。对数据库应用系统设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。数据字典是各类数据描述的集合,它通常包括以下5个部分: (1)数据项,是数据最小单位。 (2)数据结构,是若干数据项有意义的集合。 (3)数据流,可以是数据项,也可以是数据结构。表示某一处理过程的输入输出。 (4)数据存储,处理过程中存取的数据。常常是手工凭证、手工文档或计算机文件。 (5)处理过程。

高层建筑结构设计试题及复习资料

高层建筑结构设计 名词解释 1. 高层建筑:10层及10层以上或房屋高度大于28m 的建筑物。 2. 房屋高度:自室外地面至房屋主要屋面的高度。 3. 框架结构:由梁和柱为主要构件组成的承受竖向和水平作用的结构。 4. 剪力墙结构:由剪力墙组成的承受竖向和水平作用的结构。 5. 框架—剪力墙结构:由框架和剪力墙共同承受竖向和水平作用的结构。 6. 转换结构构件:完成上部楼层到下部楼层的结构型式转变或上部楼层到下部楼层结构布置改变而 设置的结构构件,包括转换梁、转换桁架、转换板等。 7. 结构转换层:不同功能的楼层需要不同的空间划分,因而上下层之间就需要结构形式和结构布置 轴线的改变,这就需要在上下层之间设置一种结构楼层,以完成结构布置密集、墙柱较多的上层向结构布置较稀疏、墙术较少的下层转换,这种结构层就称为结构转换层。(或说转换结构构件所在的楼层) 8. 剪重比:楼层地震剪力系数,即某层地震剪力与该层以上各层重力荷载代表值之和的比值。 9. 刚重比:结构的刚度和重力荷载之比。是影响重力?-P 效应的主要参数。 10. 抗推刚度(D ):是使柱子产生单位水平位移所施加的水平力。 11. 结构刚度中心:各抗侧力结构刚度的中心。 12. 主轴:抗侧力结构在平面内为斜向布置时,设层间剪力通过刚度中心作用于某个方向,若结构产 生的层间位移与层间剪力作用的方向一致,则这个方向称为主轴方向。 13. 剪切变形:下部层间变形(侧移)大,上部层间变形小,是由梁柱弯曲变形产生的。框架结构的 变形特征是呈剪切型的。 14. 剪力滞后:在水平力作用下,框筒结构中除腹板框架抵抗倾复力矩外,翼缘框架主要是通过承受 轴力抵抗倾复力矩,同时梁柱都有在翼缘框架平面内的弯矩和剪力。由于翼缘框架中横梁的弯曲和剪切变形,使翼缘框架中各柱轴力向中心逐渐递减,这种现象称为剪力滞后。 15. 延性结构:在中等地震作用下,允许结构某些部位进入屈服状态,形成塑性铰,这时结构进入弹 塑性状态。在这个阶段结构刚度降低,地震惯性力不会很大,但结构变形加大,结构是通过塑性变形来耗散地震能量的。具有上述性能的结构,称为延性结构。 16. 弯矩二次分配法:就是将各节点的不平衡弯矩,同时作分配和传递,第一次按梁柱线刚度分配固 端弯矩,将分配弯矩传递一次(传递系数C=1/2),再作一次分配即结束。 第一章 概论 (一)填空题 1、我国《高层建筑混凝土结构技术规程》(JGJ3—2002)规定:把10层及10层以上或房屋高度大于28m 的建筑物称为高层建筑,此处房屋高度是指室外地面到房屋主要屋面的高度。 2.高层建筑设计时应该遵循的原则是安全适用,技术先进,经济合理,方便施工。 3.复杂高层结构包括带转换层的高层结构,带加强层的高层结构,错层结构,多塔楼结构。

数据库设计的基本步骤

数据库设计的基本步骤 一、数据库设计的生存期 按照规范设计的方法,考虑到数据库及其应用系统开发的全过程,将数据库 设计分为六个阶段。如下图。 ① 需求分析 需求收集和分析, 需求。 ② 概念结构设计 对需求进行综合、归纳与抽象,形成一个独立于具体 DBMS 的概念模型(用 E-R 图表示)。 ③ 逻辑结构设计 将概念结构转换为某个DBMS 所支持的数据模型(例如关系模型),并对其 进行优化。 ④ 物理结构设计 为逻辑数据模型选取一个最适合应用环境的物理结构 (包括存储结构和存取 方法)。 ⑤ 数据库实施 需求A 祈断段 T 1 概念设计阶段 i 逻辑 q 丰计阶段 1 物理. 1 殳计阶段 j 数据E L 支实施阶段 数据库运荷? 维护阶段 得到用数据字典描述的数据需求,用数据流图描述的处理

运用DBMS 提供的数据语言(例如 SQL )及其宿主语言(例如C),根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。 ⑥数据库运行和维护 数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。 说明:设计一个完善的数据库应用系统是不可能一蹴而就的,它往往是上述 六个阶段的不断反复。 二、数据库设计阶段的内容 设计步骤既是数据库设计的过程,也包括了数据库应用系统的设计过程。下面针对各阶段的设计内容给出各阶段的设计描述。如下图。 阶段 濮块结构) 三、数据库设计阶段的模式 数据库结构设计的不同阶段形成数据库的各级模式,如下图 需求数据字睦、全系统中数据项、 分析數据證、数据存储的描述 数1E流图和判定我(利宦 闕)、数据字典中处理过程的 描述 设计 概念模型〔E?兄图) 模块设计 IPO表 编写模武装入 数JE 实施数揭库试 运行阶段 Create … L o豆恋■?. 程序编码 编译联结 测试 Tlain () * ■ A if???then ■■ i HUl 数据宇典 系窥说朋书包括: ①新系统要求、 方案和概图 ②反映新系统信息 流的数据流图 方法选择物理 存取路径建立设计

混凝土结构设计原理试题与答案

一、概念选择题(均为单选题,答案请填写在答题卡上,每小题1分,总共40分) 1.如果混凝土的强度等级为C50,则以下说法正确的是:()A.抗压强度设计值f c=50MP a;B.抗压强度标准值f ck=50MP a; C.立方体抗压强度标准值f cu,k=50MP a;D.抗拉强度标准值f tk=50MP a。2.混凝土强度等级是根据150mm×150 mm×150 mm的立方体抗压试验,按:( ) A.平均值μf cu确定;B.μf cu-1.645σ确定;C.μf cu-2σ确定;D.μf cu-σ确定。3.减少混凝土徐变可采用的措施有:()A.增加水泥用量; B 蒸汽养护混凝土; C 提早混凝土的加荷龄期; D 增加水用量。4.以下关于混凝土收缩,正确的说法是:()(1)收缩随时间而增长(2)水泥用量愈小,水灰比愈大,收缩愈大 (3)骨料弹性模量大级配好,收缩愈小(4)环境湿度愈小,收缩也愈小 (5)混凝土收缩会导致应力重分布 A.(1)、(3)、(5);B.(1)、(4);C.(1)~(5);D.(1)、(5)。 5. 高碳钢筋采用条件屈服强度,以σ0.2表示,即:() A.取极限强度的20 %;B.取应变为0.002 时的应力; C.取应变为0.2 时的应力;D.取残余应变为0.002 时的应力。 6.检验软钢性能的指标有:()(1)屈服强度(2)抗拉强度(3)伸长率(4)冷弯性能 A.(1)~(4);B.(1)~(3);C.(2)~(3);D.(2)~(4)。7.对于热轧钢筋(如HRB335),其强度标准值取值的依据是:()A.弹性极限强度;B.屈服极限强度;C.极限抗拉强度;D.断裂强度。8.钢筋与混凝土这两种性质不同的材料能有效共同工作的主要原因是:()A.混凝土能够承受压力,钢筋能够承受拉力; B.两者温度线膨系数接近; C.混凝土对钢筋的保护; D.混凝土硬化后,钢筋与混凝土之间产生了良好的粘结力,且两者温度线膨系数接近 9.关于设计值和标准值,以下说法正确的是:()A.材料强度设计值大于其标准值,荷载设计值小于其标准值; B.材料强度设计值小于其标准值,荷载设计值大于其标准值; C.材料强度设计值等于其标准值,荷载设计值等于其标准值;

数据库概念结构设计和逻辑结构设计举例

数据库概念结构设计和逻辑结构设计举例 某超市公司要设计一个数据库系统来管理公司的业务信息,该超市公司的业务管理大致可分为三部分: 1、超市公司的仓库管理业务; 2、连锁商店的商品销售业务; 3、连锁商店的集团购买业务。 业务管理规则如下: (1)该超市公司有若干仓库,若干连锁商店,供应若干商品; (2)超市公司的业务员负责与供应商联系商品进货业务; (3)购进的商品按类存放在仓库中,每个仓库有若干保管员; (4)每个连锁商店有一个经理和若干收银员,每个收银员只在一个连锁商店工作。 (5)每个商品编号只有一个商品名称,但不同商品编号可以有相同的商品名称,每种商品可有多种销售价格; (6)连锁商店实行会员制,通过会员卡收集顾客信息。顾客办理会员卡后,可享受一定的优惠; (7)连锁商店要处理客户和销售员送来的集团购买大宗商品的订单,并根据库存情况交出货物同时开出发票,收到付款后应进行收款处理; (8)连锁商店对大宗订货给予优惠,每种商品规定了不同订货数量和折扣。

一、设计局部ER模式 1、仓库管理子系统分ER图 根据管理规则(2),(3),与仓库管理子系统有关的实体包括:业务员、商品、供应商、仓库、职工。 因为每个业务员都可以与若干家供应商联系多项商品或进货业务,所以在业务员、商品、供应商之间存在一个三元的多对多的联系。仓库与商品之间存在多对多,仓库与职工之间存在一对多的联系。

2、根据规则(1)(4)(5)(6),与商品销售业务有关的实体有商店、商品、收银员、顾客。 因为每个收银员都要与多个顾客购买的多种商品发生业务联系,所以在收银员、商品与顾客之间存在一个多对多的联系。商品与商存在多对多的联系,商店与收银员之间存在一对多的联系。

进销存数据库表结构设计

1.帐类表(KIND) 无索引 序号中文名称英文名称类型备注 1 帐类编号K_SERIAL byte 2 帐类名称K_NAME text*10 本表系统自动建立,共划分为15种帐类,不可增删 帐类编号帐类名称备注 0 上期结存进货,不参加进货统计 1 购入进货,购入时必需输入供货单位名称 2 自制进货 3 投资转入进货 4 盘盈进货 5 领料出库,领料必需输入领料部门名称 6 调拨出库 7 报损出库 8 盘亏出库 9 退库对低值易耗品,在用品退为在用库存 10 直接报废对于低值易耗品,在用品转报废 11 领用对于低值易耗品,在用库存转在用 12 调拨对于低值易耗品,在用库存减少 13 报废对于低值易耗品,在用库存报废 14 直进直出进出库,购入与领料对库存无影响 2.物品表(GOODS) 序号索引名称索引域唯一? 主索引? 1 G_CODING +G_CODING Y N 2 G_SERIAL +G_SERIAL Y Y 序号中文名称英文名称类型备注 1 物品内部编号G_SERIAL INT->long 系统内部唯一标识该物品 2 物品编号G_CODING TEXT * 10 用户使用此编号访问物品 &3 物品名称G_NAME TEXT*40 非空 &4 物品单位G_UNIT TEXT*8 非空 &5 物品规格G_STATE TEXT*20

6 物品类别G_CLASS INT 取自表CLASS 7 备注G_REMARKS MEMO 8 最小库存量G_MIN CURRENCY 为零,即无最小库存 9 最大库存量G_MAX CURRENCY 为零,即无最大库存 10 库存数量G_QUANT CURRENCY 控制出库数量 11 虚拟库存数量G_VQUANT CURRENCY 出库时用 12 库存金额G_AMOUNT CURRENCY 3.类别表(CLASS) 序号索引名称索引域唯一? 主索引? 1 C_CODING +C_CODING Y N 2 C_SERIAL +C_SERIAL Y Y 序号中文名称英文名称类型备注 1 类别内部序号C_SERIAL INT 系统内部唯一标识该物品 2 类别编号C_CODING TEXT *10 用户使用该编号访问类别信息 3 类别名称C_NAME TEXT*20 非空 4 出库类型C_KIND BYTE 1.移动平均 2..先进先出 3.后进先出 4.实际计价 *5.月末平均 5 备注C_REMARKS MEMO *6 底标志C_BOTTOM BOOLEAN *7 类别级别C_LEVEL BYTE 4.供货单位、使用部门(DEPART) 序号索引名称索引域唯一? 主索引? 1 D_CODING +D_CODING Y N 2 D_SERIAL +D_SERIAL Y Y 序号中文名称英文名称类型备注 1 内部序号D_SERIAL INT 系统内部唯一标识该部门 >0 供货单位 =0 库房 <0 使用部门 2 单位编号D_CODING TEXT*10

数据库课后题答案 第7章 数据库设计

第7章数据库设计 1.试述数据库设计过程。 答:这里只概要列出数据库设计过程的六个阶段:( l )需求分析;( 2 )概念结构设计;( 3 )逻辑结构设计;( 4 )数据库物理设计;( 5 )数据库实施;( 6 )数据库运行和维护。这是一个完整的实际数据库及其应用系统的设计过程。不仅包括设计数据库本身,还包括数据库的实施、运行和维护。设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。 2 .试述数据库设计过程各个阶段上的设计描述。 答:各阶段的设计要点如下:( l )需求分析:准确了解与分析用户需求(包括数据与处理)。( 2 )概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS 的概念模型。( 3 )逻辑结构设计:将概念结构转换为某个DBMS 所支持的数据模型,并对其进行优化。( 4 )数据库物理设计:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。( 5 )数据库实施:设计人员运用DBMS 提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。( 6 )数据库运行和维护:在数据库系统运行过程中对其进行评价、调整与修改。 3 .试述数据库设计过程中结构设计部分形成的数据库模式。 答:数据库结构设计的不同阶段形成数据库的各级模式,即:( l )在概念设计阶段形成独立于机器特点,独立于各个DBMS 产品的概念模式,在本篇中就是 E 一R 图;( 2 )在逻辑设计阶段将 E 一R 图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式,然后在基本表的基础上再建立必要的视图( Vi 娜),形成数据的外模式;( 3 )在物理设计阶段,根据DBMS 特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式。 4 .试述数据库设计的特点。 答:数据库设计既是一项涉及多学科的综合性技术又是一项庞大的工程项目。其主要特点有:( l )数据库建设是硬件、软件和干件(技术与管理的界面)的结合。( 2 )从软件设计的技术角度看,数据库设计应该和应用系统设计相结合,也就是说,整个设计过程中要把结构(数据)设计和行为(处理)设计密切结合起来。 5 .需求分析阶段的设计目标是什么?调查的内容是什么? 答:需求分析阶段的设计目标是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。调查的内容是“数据’夕和“处理”,即获得用户对数据库的如下要求:( l )信息要求,指用户需要从数据库中获得信息的内容与性质,由信息要求可以导出数据要求,即在数据库中需要存储哪些数据;( 2 )处理要求,指用户要完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理;( 3 )安全性与完整性要求。 6 .数据字典的内容和作用是什么? 答:数据字典是系统中各类数据描述的集合。数据字典的内容通常包括:( l )数据项;( 2 )数据结构;( 3 )数据流;( 4 )数据存储;( 5 )处理过程五个部分。其中数据项是数

结构设计入门——概念设计

结构设计入门——概念设计 在不断的结构设计研究与实践中,人们积累了大量有益的经验,并体现在设计规范、设计手册、标准图集等等。随着计算机技术和计算方法的发展,计算机及其结构程序在结构工程中得到大量地应用,每个设计单位都在为彻底甩掉图板而做努力。结果给部分结构工程师造成一种错觉,觉得结构设计很简单,只需遵循规范、手册、图集,等待建筑师给一个空间形成的方案,使用计算机,然后设法去完成它,自己只不过是一个东拼西凑的计算机画图匠而已。这不仅不能有效地运用他们的知识、精力和时间,而且还会与建筑师的交流中产生分歧与矛盾。 我国结构计算理论经历了经验估算,容许应力法,破损阶段计算,极限状态计算,到目前普遍采用的概率极限状态理论等阶段。现行的《建筑结构设计统一标准》(GBJ68-84)则采用以概率理论为基础的结构极限状态设计准则,以使建筑结构的设计得以符合技术先进、经济合理、安全适用。概率极限状态设计法更科学、更合理。但该法在运算过程中还带有一定程度的近似,只能视作近似概率法。并且光凭极限状态设计也很难估计建筑物的真正承载力的。事实上,建筑物是一个空间结构,各种构件以相当复杂的方式共同工作,且都并非是脱离总的结构体系的单独构件。目前,人们在具

体的空间结构体系整体研究上还有一定的局限性,在设计过程中采用了许多假定与简化。作为结构工程师不应盲目的照搬照抄规范,应该把它作为一种指南、参考,并在实际设计项目中作出正确的选择。这就要求结构工程师对整体结构体系与各基本分体系之间的力学关系有透彻的认识,把概念设计应用到实际工作中去。 所谓的概念设计一般指不经数值计算,尤其在一些难以作出精确理性分析或在规范中难以规定的问题中,依据整体结构体系与分体系之间的力学关系、结构破坏机理、震害、试验现象和工程经验所获得的基本设计原则和设计思想,从整体的角度来确定建筑结构的总体布置和抗震细部措施的宏观控制。运用概念性近似估算方法,可以在建筑设计的方案阶段迅速、有效地对结构体系进行构思、比较与选择,易于手算。所得方案往往概念清晰、定性正确,避免后期设计阶段一些不必要的繁琐运算,具有较好的的经济可靠性能。同时,也是判断计算机内力分析输出数据可靠与否的主要依据。 比如,有的设计人员用多、高层结构三维空间分析程序来计算底层框架,还人为的布置一些抗震墙,即不能满足楼层间的合理刚度比,也不能正确地反映底层框架在地震时受力状态。问题在于结构概念不明确,没考虑这两种结构体系的差异。软件的选择和使用不当,造成危害是不容忽视的。

(建筑工程管理)建筑结构设计应具备的概念

(建筑工程管理)建筑结构设计应具备的概念

1、轴压比:主要为控制结构的延性,规范对墙肢和柱均有相应限值要求,见抗规6.3.7和6.4.6,在剪力墙的轴压比计算中,轴力取重力荷载代表设计值,和柱子的不壹样。 2、剪重比:主要为控制各楼层最小地震剪力,确保结构安全性,见抗规5.2.5。 3、侧向刚度比:主要为控制结构竖向规则性。 4、位移比:主要为控制结构平面规则性,以免形成扭转,对结构产生不利影响。控制比例为1.5。见抗规3.4.2、3.4.3。 5、周期比:主要为控制结构扭转效应,减小扭转对结构产生的不利影响,要求见高规4.3.5。 6、刚重比:主要为控制结构的稳定性,以免结构产生滑移和倾覆,要求见高规。 7、剪跨比:梁的剪跨比,剪力的位置a和h0的比值。剪跨比影响了剪应力和正应力之间的相对关系,因此也决定了主应力的大小和方向,也影响着梁的斜截面受剪承载力和破坏的方式;同时也反映在受剪承载力的公式上。柱的剪跨比,若反弯点在柱子层高范围内,可取柱子的剪跨比小于2时,需要全长加密,见混凝土规范11.4.12、11.4.17。 8、剪压比(梁柱截面上的名义剪应力V/bh0和混凝土轴心抗压强度设计值的比值):梁塑性铰区的截面剪压比对梁的延性、耗能能力及保持梁的强度、刚度有明显的影响,当剪压比大于0.15的时候,梁的强度和刚度有明显的退化现象,此时再增加箍筋用量,也不能发挥作用,因此对梁柱的截面尺寸有所要求。 9、轴压比:轴压比是指有地震作用组合的柱组合轴压力设计值和柱的全截面面积和砼轴心受压抗压强度设计值乘积的比值,是影响柱子破坏形态和延性的主要因素之壹。轴压比限值的依据是理论分析和试验研究且参照国外的类似条件确定的,其基准值是对称配筋柱大小偏心受压状态的轴压比分界值。 10、跨高比:梁的跨高比(梁的净跨和梁截面高度的比值)对梁的抗震性能有明显的影响。梁(非剪力墙的连梁)的跨高比小于5和深梁都按照深受弯构件进行计算的。 11、延性比:延性比即为弹塑性位移增大系数。延性是指材料、构件、结构在初始强度没有明显退化的情况下的非弹性变形能力。延性比主要分为三个层面,即截面的延性比、构件的延性比和结构的延性比。结构的延性比多指框架或者剪力墙等结构的水平荷载-顶层水平位移(P-delta)、水平荷载-层间位移等曲线。结构的屈服位移有等能量方法、几何做图法等 12、薄弱层:该楼层的层间受剪承载力小于相邻上壹楼层的80%;薄弱层主要是针对大震而言的;屈强系数小于0.5的结构层、在大震下楼层塑性变形大于规范要求的大震下的允许值的结构层。 所谓的薄弱层,是指在强烈地地震作用下,结构首先发生屈服且产生较大弹塑性变形的部位。是指该楼层的层间受剪承载力小于向邻上壹楼层的80%,能够认为,是从结构强度的角度来判断。高规中说明竖向不规则结构形成薄弱部位,而薄弱部位有三种情况,壹是刚度不连续形成的柔软层,壹是强度不连续形成的薄弱层,仍有壹种就是有水平转换体系的竖向构件不连续的结构.因此2楼和5楼说的都是柔软层.但实际我见很多地方所说的薄弱层就是指薄弱部位的意思,且没区分的很仔细 位置在下列情况确定: 1)楼层屈服强度系数沿房屋高度分布均匀的结构,可取底层; 2)楼层屈服强度系数沿房屋高度分布不均匀的结构,可取该系数最小的楼层(部位)和相对较小的楼层,壹般不超过2-3处; 3)单层厂房,可取上层; 薄弱层指强度,软弱层指刚度。壹个是刚度比,另壹个是承载力比,二者不满足规范要求均是薄弱层。请见见高规条文说明 4.4.2“正常设计的高层建筑下部楼层刚度宜大于上部楼层的侧向刚度,否则变形会集中于刚度小的下部楼层而形成结构薄弱层”由此可推断出只要是刚度小于上层的楼层都应当算作薄弱层。按照高规5.1.14“对于竖向不规则的高层建筑结构,小于

数据库结构设计

一、数据库结构设计步骤 二、需求分析 三、概念结构设计 四、逻辑结构设计 五、数据库物理设计 数据库结构设计 一、数据库结构设计步骤 一般可将数据库结构设计分为四个阶段,即需求分析、概念结构设计、逻辑结构设计和物理设计。 下面各节分别介绍各阶段设计内容和具体方法。 二、需求分析 需求分析的任务是具体了解应用环境,了解与分析用户对数据和数据处理的需求,对应用系统的性能的要求,提出新系统的目标,为第二阶段、第三阶段的设计奠定基础。一般需求分析的操作步骤如下所述。 1.了解组织、人员的构成 子系统的划分常常以现有组织系统为基础,再进行整合,而新系统首先必须达到的目的是尽可能地完成当前系统中有关信息方面的工作,在原有系统中,信息处理总是由具体人来实施的。我们要了解组织结构情况、相互之间信息沟通关系、数据(包括各种报告、报表、凭证、单据)往来联系情况。 具体弄清各个数据的名称,产生的时间与传递所需时间与周期,数据量的大小,所涉及(传送)的范围,使用数据的权限要求,数据处理过程中容易发生的问题及其影响,各个部门所希望获得的数据的情况等。 然后了解每个人对每一具体数据处理的过程,基本数据元素来源于哪些地方、获取的途径、处理的要求、数据的用途,进而弄清数据的构成、数据元素的类型、性质、算法、取值范围、相互关系。 在上述调查基础上,首先画出组织机构及工作职能图。我们以一个学校的基层单位——某大学一个系的管理为例来简要说明。 系的组织机构及工作职能如图7.1所示。

图7.1 系管理体系结构图 作为管理层经常需要的信息和工作有: .查询老师个人基本情况及打印相应内容 .查询与统计科研项目情况及相关报表 .查询与统计论文著作情况及相关报表 .上级部门及其他部门来文管理与查询(要求能全文检索) .系部发文管理 .任务下达、检查及管理 .信件、通知的收发及管理 .日程安排调度及管理 .设备仪器计划及管理 .设备入库与库存情况管理与查询 .设备借还领用管理及相应报表 .耗材计划与领发管理及相应统计报表 .图书管理及借还情况查询 .学生毕业设计文档管理 .专业与班组编制与查询 .教学文档管理及查询(安排与检查,包括课表、考试日程安排、监考安排等).学生成绩管理与查询和统计 .教师、学生、实验室课表管理及查询 .学生基本情况管理与查询(包括社会活动、奖惩、家庭情况及学校校友管理)

7.3 概念结构设计(S)

7.3 概念结构设计 将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。它是整个数据库设计的关键。(概念结构是对用户需求的客观反映,不涉及到软硬件环境,也不能直接在数据库管理系统DBMS上实现,是现实世界与机器世界的中介。这一阶段所产生的工作结果一般表现为E-R图的形式,它不仅能够充分反映客观世界,而且易于非计算机人员理解,易于向关系、网状、层次等各种数据模型转换。) 7.3.1 概念结构 在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一DBMS实现这些需求。 概念结构的主要特点是: (1) 能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。是对现实世界的一个真实模型。 (2) 易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。 (3) 易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。 (4) 易于向关系、网状、层次等各种数据模型转换。 概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。 描述概念模型的有力工具是E-R模型。有关E-R模型的基本概念已在第一章介绍。下面将用E-R模型来描述概念结构。 7.3.2 概念结构设计的方法与步骤 设计概念结构通常有四类方法: ·自顶向下。即首先定义全局概念结构的框架,然后逐步细化,如图7.7(a)所示。 ·自底向上。即首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构,如图7.7(b)所示。 ·逐步扩张。首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构,如图7.7(c)所示。 ·混合策略。即将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。 其中最经常采用的策略是自底向上方法。即自顶向下地进行需求分析,然后再自底向上地设计概念结构。如图7.8所示。这里只介绍自底向上设计概念结构的方法。它通常分为两步:第1步是抽象数据并设计局部视图,第2步是集成局部视图,得到全局的概念结构,如图7.9所示。

数据库表结构设计参考

数据库表结构设计参考. )表名外部单位表(DeptOut 约束条件非空空数据类型(精度范围) /列名外部单位ID N 变长字符串(50) 主键 N 变长字符串类型 (50)

N 单位名称(255) 变长字符串 (50) 单位简称变长字符变长字符(255)单位全交换类交换、市机、直送、邮变长字符(50)N (6)单位邮变长字符 变长字符(50))单位标英整排序(4) (50)交换变长字符变长字符(50)单位领 变长字符单位电(50) 变长字符所属城(50) 变长字符(255)单位地 备(255) 变长字符 补充说300条左右,一般不做修改。初始化记录该表记录数 表外部单位子表DeptOutSu 数据类型(精度范围列非约束条 变长字符(50)外部子单IDN 外ID变长字符(50)N单位名N变长字符(255) 变长字符单位编(50) 该表记录数一般很补充说 表内部单位表DeptI

数据类型(精度范围非列约束条IDN(50)变长字符主内部单类N变长字符(50) (255)变长字符N单位名 (50)变长字符单位简 变长字符单位全(255) 工作职 排序整(4) 单位领导(50) 变长字符串 (50) 单位电话(分机)变长字符串 (255) 变长字符串备注. 条以内),一般不做修改。维护一次后很少修改补充说明该表记录数较小(100 内部单位子表(DeptInSub)表名 约束条件数据类型(精度范围)空列名/非空 (50) N 变长字符串内部子单位ID 变长字符串(50) 父ID N 外键 (255) 单位名称 N 变长字符变长字符(50)单位编领导、部变长字符(50)单位类 Int 排序 该表记录数一般很补充说 省、直辖市表Provinc表

数据库设计方法

数据库设计方法

数据库设计步骤简述 数据库技术是信息资源的开发、管理和服务的最有效的手段,因此数据库的应用范围越来越广,从小型的单项事物处理系统到大型的信息服务系统大都利用了先进的数据库技术来保持系统数据的整体性、完整性和共享性。 数据库应用软件和其他软件一样,也有它的诞生和消亡。数据库应用软件作为软件,在其生命周期可以看作有三个大的时期:软件定义时期,软件开发时期和软件运行时期。 按照规范化设计方法,从数据库应用系统设计和开发的全过程来考虑,将数据库及其应用软件系统的生命周期的三个时期又可以细分为六个阶段:需求分析、概念结构设计、逻辑结构设计、物理结构设计、实施及运行维护。 一、需求分析 信息需求:指目标系统设计的所有实体、属性、以及实体间的联系等,包括信息的内容和性质,以及由信息需求导出的数据需求。 处理需求:指为得到需要的信息而对数据进行加工处理的要求,包括处理描述,发生的频度、响应时间以及安全保密要求等。进行数据库设计首先必须准确了解与分析用户需求。需求分析是真个设计过程的基础,是最困难、最耗费时间的一步。作为地基的需求分析是否做得充分与准备,决定了在其上构建数据库大厦的速度与质量。需求分析做得不好,甚至会导致整个数据库设计返工重做。 需求任务分析:

需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变,不能仅仅按当前应用需求来设计数据库。 需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与完整性要求。信息要求是指用户需要从数据库中获得信息的内容与性质。由用户的信息要求可以导出数据要求,即在数据库中需要存储哪些数据。处理要求是指用户要求完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理。新系统的功能必须能够满足用户的信息要求、处理要求、安全性与完整性要求 需求分析的方法: 通过调查了解了用户需求后,需要进一步分析和表达用户的需求。分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。 二、概念设计 将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。 概念结构是对现实世界的一种抽象,即对实际的人、物、事和概念进行人为处理,抽取人们关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述。

结构设计中的概念设计与结构措施一

1.概念设计的重要性 概念设计是展现先进设计思想的关键,一个结构工程师的主要任务就是在特定的建筑空间中用整体的概念来完成结构总体方案的设计,并能有意识地处理构件与结构、结构与结构的关系。一般认为,概念设计做得好的结构工程师,随着他的不懈追求,其结构概念将随他的年龄与实践的增长而越来越丰富,设计成果也越来越创新、完善。遗憾的是,随着社会分工的细化,大部分结构工程师只会依赖规范、设计手册、计算机程序做习惯性传统设计,缺乏创新,更不愿(不敢)创新,有的甚至拒绝对新技术、新工艺的采纳(害怕承担创新的责任)。大部分工程师在一体化计算机结构程序设计全面应用的今天,对计算机结果明显不合理、甚至错误而不能及时发现。随着年龄的增长,导致他们在大学学的那些孤立的概念都被逐渐忘却,更谈不上设计成果的不断创新。 强调概念设计的重要,主要还因为现行的结构设计理论与计算理论存在许多缺陷或不可计算性,比如对混凝土结构设计,内力计算是基于弹性理论的计算方法,而截面设计却是基于塑性理论的极限状态设计方法,这一矛盾使计算结果与结构的实际受力状态差之甚远,为了弥补这类计算理论的缺陷,或者实现对实际存在的大量无法计算的结构构件的设计,都需要优秀的概念设计与结构措施来满足结构设计的目的。同时计算机结果的高精度特点,往往给结构设计人员带来对结构工作性能的误解,结构工程师只有加强结构概念的培养,才能比较客观、真实地理解结构的工作性能。 概念设计之所以重要,还在于在方案设计阶段,初步设计过程是不能借助于计算机来实现的。这就需要结构工程师综合运用其掌握的结构概念,选择效果最好、造价最低的结构方案,为此,需要工程师不断地丰富自己的结构概念,深入、深刻了解各类结构的性能,并能有意识地、灵活地运用它们。 2.协同工作与结构体系 协同工作的概念广泛存在于工业产品的设计和制造中,对于任一个工业产品,我们均不希望其在远未达到其设计寿命(负荷、功能)时,它的某些部件(或零件)即出现破坏。对于建筑结构,协同工作的概念即是要求结构内部的各个构件相互配合,共同工作。这不仅要求结构构件在承载能力极限状态能共同受力,协同工作,同时达到极限状态,还要求他们能有共同的耐久寿命。结构的协同工作表现在基础与上部结构的关系上,必须视基础与上部结构为一个有机的整体,不能把两者割裂开来处理。举例而言,对砖混结构,必须依靠圈梁和构造柱将上部结构与基础连接成一个整体,而不能单纯依靠基础自身的刚度来抵御不均匀沉降,所有圈梁和构造柱的设置,都必须围绕这个中心。 对协同工作的理解,还在于当结构受力时,结构中的各个构件能同时达到较高的应力水平。在多高层结构设计时,应尽可能避免短柱,其主要的目的是使同层各柱在相同的水平位移时,能同时达到最大承载能力,但随着建筑物的高度与层数的加大,巨大的竖向和水平荷载使底层柱截面越来越大,从而造成高层建筑的底部数层出现大量短柱,为了避免这种现象的出现,对于大截面柱,可以通过对柱截面开竖槽,使矩形柱成为田形柱,从而增大长细比,避免短柱的出现,这样就能使同层的抗侧力结构在相近的水平位移下,达到最大的水平承载力;而对于梁的跨高比的限制,一般还没有充分认识到。实际上与长短柱混杂的效果一样,长、短梁在同一榀框架中并存,也是极为不利的,短跨梁在水平力的作用下,剪力很

SQL Server数据库设计的案例分析

数据库设计的案例分析 一、教学管理 1. 基本需求 某学校设计学生教学管理系统。学生实体包括学号、姓名、性别、生日、民族、籍贯、简历、登记照,每名学生选择一个主修专业,专业包括专业编号和名称,一个专业属于一个学院,一个学院可以有若干个专业。学院信息要存储学院号、学院名、院长。教学管理还要管理课程表和学生成绩。课程表包括课程号、课程名、学分,每门课程由一个学院开设。学生选修的每门课程获得一个成绩。 设计该教学管理的ER模型,然后转化为关系模型。 若上面的管理系统还要管理教师教学安排,教师包括编号、姓名、年龄、职称,一个教师只能属于一个学院,一名教师可以上若干门课程,一门课程可以有多名老师来上,每个教师所上的每门课都有一个课堂号和课时数。试修改上题的ER模型,将教师教学信息管理增加进去。

2. 参考设计: 图一教学管理ER图 由ER模型转换的关系模型是: 学生(学号,姓名,性别,生日,民族,籍贯,专业号,简历,登记照)专业(专业号,专业,专业类别,学院号) 学院(学院号,学院,院长) 课程(课程号,课程名,学分,学院号) 成绩(学号,课程号,成绩) (题目分析:本题中有学生、专业、学院、课程四个实体。一个学生只有一个主修专业,学生与专业有多对一的联系;一个专业只由一个学院开设,一门课程只由一个学院开设,学院与专业、学院与课程都是一对多的联系;学生与课程有多对多的联系。 在转换为关系模型时,一对多的联系都在相应的多方实体的关系中增加一个外键。) 增加教师,ER图如下。

图二有教师实体的教学管理ER图 3. 物理设计 基于Access的数据库结构设计如下。 指定数据库文件的名称,并为设计好的关系模型设计表结构。 数据库文件保存在“E:\教学管理\”文件夹中,数据库文件名:教学管理.MDB。 表包括:学院、专业、学生、课程、成绩单。对应表结构如表1-2至表1-6所示。 表1-1 学院 表1-2 专业 表1-3 学生

数据库设计实例需求分析、概念结构、逻辑结构

数据库设计实例分析 一、需求分析实例 现要开发高校图书管理系统。经过可行性分析和初步的需求调查,确定了系统的功能边界,该系统应能完成下面的功能: (1)读者注册。 (2)读者借书。 (3)读者还书。 (4)图书查询。 1、数据流图 顶层数据流图反映了图书管理系统与外界的接口,但未表明数据的加工要求,需要进一步细化。根据前面图书管理系统功能边界的确定,再对图书管理系统顶层数据流图中的处理功能做进一步分解,可分解为读者注册、借书、还书和查询四个子功能,这样就得到了图书管理系统的第0层数据流图 从图书管理系统第0层数据流图中可以看出,在图书管理的不同业务中,借书、还书、查询这几个处理较为复杂,使用到不同的数据较多,因此有必要对其进行更深层次的分析,即构建这些处理的第1层数据流图。下面的图8-7分别给出了借书、还书、查询子功能的第1层数据流图 2、数据字典 数据项 数据项名称:借书证号 别名:卡号 含义说明:惟一标识一个借书证 类型:字符型 长度:20 …… 数据结构 (1)名称:读者类别 含义说明:定义了一个读者类别的有关信息 组成结构:类别代码+类别名称+可借阅数量+借阅天数+超期罚款额 (2)名称:读者 含义说明:定义了一个读者的有关信息 组成结构:姓名+性别+所在部门+读者类型 (3)名称:图书 含义说明:定义了一本图书的有关信息 组成结构:图书编号+图书名称+作者+出版社+价格 ……

数据流 (1)数据流名称:借书单 含义:读者借书时填写的单据 来源:读者 去向:审核借书 数据流量:250份/天 组成:借书证编号+借阅日期+图书编号 (2)数据流名称:还书单 含义:读者还书时填写的单据 来源:读者 去向:审核还书 数据流量:250份/天 组成:借书证编号+还书日期+图书编号 …… 数据存储 (1)数据存储名称:图书信息表 含义说明:存放图书有关信息 组成结构:图书+库存数量 说明:数量用来说明图书在仓库中的存放数 (2)数据存储名称:读者信息表 含义说明:存放读者的注册信息 组成结构:读者+卡号+卡状态+办卡日期 说明:卡状态是指借书证当前被锁定还是正常使用 (3)数据存储名称:借书记录 含义说明:存放读者的借书、还书信息 组成结构:卡号+书号+借书日期+还书日期 说明:要求能立即查询并修改 …… 处理过程 (1)处理过程名称:审核借书证 输入:借书证 输出:认定合格的借书证 加工逻辑:根据读者信息表和读者借书证,如果借书证在读者信息表中存在并且没有被锁定,那么借书证是有效的借书证,否则是无效的借书证。 …… 二、概念结构设计实例 1.标识图书管理系统中的实体和属性 参照数据字典中对数据存储的描述,可初步确定三个实体的属性为: 读者:{卡号,姓名,性别,部门,类别、办卡日期,卡状态} 读者类别:{类别代码,类别名称,可借阅天数、可借阅数量,超期罚款额}

相关主题
文本预览
相关文档 最新文档