哈工大 数据库系统 第2章
- 格式:pdf
- 大小:173.31 KB
- 文档页数:37
哈尔滨理工大学
数据库大作业2
班级:信息11-2 学号: 11060402
姓名:
指导教师:
2013.10
目录
第一章:运用SQL查询分析器查询数据库表 (1)
第二章、系统管理模块数据库表名称中文标注 (3)
第一章:运用SQL查询分析器查询数据库表
1.打开数据库查询分析器,连接到SQL Server2005,进入如图1所示界面。
图1
2.输入要查询的数据库表名称,如图2,3所示。
图2
图3
4.表名及属性中文标注
(1)WA_psn 人员表:(图4所示)
图4
(2)WA_PsnMsg 人员附加信息表:(图5所示)
图5
(3)Customer Class 客户分类体系:(图6所示)
图6
(4)Department 部门档案:(图7所示)
图7
第二章、系统管理模块数据库表名称中文标注
CA_Amo Ct 各项费用成本表
CA_CBS ys 系统设置表
CA_Class Def 产品类别定义
CA_Cost CD 费用明细定义表
CA_Dir MA 直接人工费用表
CA_Man Ct 制造费用表
Code 科目表
Customer 客户档案
Customer Class 客户分类体系
Department 部门档案
Dispatch Lists 发货单、委托代销结算单子表
District Class 地区分类体系
Dsign 凭证类别表
Dsigns 凭证类别子表。
数据库系统(下):管理与技术_哈尔滨工业大学中国大学mooc课后章节答案期末考试题库2023年1.DBMS管理数据库缓冲区有四种策略:No Steal, Steal, No Force, Force。
则效率较低但不会出现问题的策略组合是_________,而效率最高最常用但会出现问题的策略组合是_________。
参考答案:No Steal+ Force,Steal + No Force;2.下列说法正确的是___________。
参考答案:两阶段封锁法是可串行化的并行调度算法;3.T1,T2是两个事务,图(a)(b)给出这两个事务的两种调度S1,S2,关于S1,S2,说法正确的选项是_____________。
【图片】参考答案:S1是不可串行化调度,S2是可串行化调度;4.若事务T对数据M已加S锁,在不改变S锁的情况下,则其它事务对数据M__________。
参考答案:可以读,但不可以写;5.关于稀疏索引和稠密索引,下列说法正确的是_______。
参考答案:如果一个搜索码的值在稠密索引中不存在,则在主文件中对应该搜索码值的记录也不存在6.关于给出的九个关系代数操作:【图片】问任何时候都能够用一趟算法实现的操作的个数是_______。
参考答案:17.主索引通常确定“表”数据的__________。
参考答案:物理顺序8.有效性确认是一种并发控制方法。
如下图(a)(b)中T和U是两个事务,X和Y是数据对象。
T要进行有效性确认,下列说法正确的是__________。
【图片】参考答案:图(a)事务T的有效性可以确认;图(b)事务T的有效性不可以确认;9.关于基于散列的两趟算法,下列说法正确的是_______。
参考答案:第一趟散列的目的是使数据子集具有某一种特性(如具有相同的散列值),而第二趟散列的目的是提高数据处理的速度。
10.关于逻辑查询优化和物理查询优化,下列说法正确的是________。
参考答案:逻辑查询优化是关系代数操作次序的优化;物理查询优化是关系代数操作实现算法选择的优化11.关于B+树,下列说法不正确的是_________。
第一章绪论1. 信息与数据信息Information信息是人类对于自然界的感知.物质世界:物质与信息物质存在⇒信息存在物质变化⇒信息变化数据Data数据是信息的符号化表示.在计算机中,数据是描述各种信息的符号记录.数据处理——对数据进入收集、存储、加工和传播等过程.2. 数据库DB(Data Base)长期存放在计算机存储介质中的有组织的、动态的、可共享的数据集合.3. 数据库管理系统DBMS(Data Base Management System)组织、存储、维护和获取数据库中数据的软件系统,是介于数据库用户和操作系统之间的数据管理软件.4. 数据库系统DBS(Data Base System)在计算机系统中引入数据库后的系统,包括:数据库DB, 数据库管理系统DBMS, 各种开发工具数据库应用系统, 计算机硬件及其他软件数据库管理员DBA (Data Base Administrator), 用户5. 数据处理与数据管理数据处理:对各种数据进行收集、存储、加工和传播的一系列活动的总和.数据管理:对数据进行分类、组织、编码、存储、检索和维护的过程.数据管理是数据处理的核心.6. 数据库系统的特点●数据面向整个组织●数据结构化从一个组织全部应用的角度,全面考虑并集成数据的结构;不仅能反映数据本身,而且还能反映数据之间的联系;数据之间的联系通过存取路径实现.●共享性高,冗余度低,可扩充性强●程序与数据具有较高的独立性数据独立性:数据与应用程序之间相互依赖的程度.三级逻辑结构全局逻辑结构:描述数据库的整体结构局部逻辑结构:描述某一用户观点的数据集合物理结构:描述数据的物理存储两种映象全局逻辑结构与局部逻辑结构映象:逻辑独立性✓在全局逻辑结构与局部逻辑结构之间有一种映象.✓当全局逻辑结构发生变化时,通过修改该映象,可以使局部逻辑结构不改变.✓用户程序是根据局部逻辑结构编写的,所以不必修改用户程序.全局逻辑结构与物理结构映象:物理独立性✓在全局逻辑结构与存储结构之间有一种映象.✓当存储结构发生变化时,通过修改该映象,可以使全局逻辑结构不改变.✓由此不必修改局部逻辑结构,所以不必修改用户程序.●数据管理灵活方便●易于被应用程序使用●安全性和保密性好●数据的算法相对较简单,但数据之间的关系复杂(1) 数据结构化(2) 数据共享性好、冗余度低、易扩充、避免不一致性(3) 数据独立性好(4) 数据由DBMS统一管理和控制DBMS提供了一种机制,保证数据的安全性、完整性、并发控制和数据库恢复等.(5) 数据存取最小单位是数据项第二章数据库系统结构模型对客观事务中感兴趣的内容进行模拟和抽象的工具.建立模型有助于加深对问题的理解数据模型对客观世界中的数据特征进行抽象的工具.数据库的数据模型概念层数据模型对数据应用部门的数据进行建模的工具.对数据库既要表示数据本身,又要表示数据之间的联系.组织层数据模型描述数据库系统内部数据组织结构的工具.数据库是某个组织所涉及的数据的集合.数据库不仅仅能表示数据本身,还能反映数据之间的联系.设计数据库的逻辑结构时,首先需要将现实世界中的信息及其相互联系用概念层数据模型(概念模型,信息模型)表示出来,然后将这种其转换成具体数据库的组织层数据模型(数据模型).1. 三个世界●现实世界(客观世界)客观世界研究的是对象; 对象是具体事务或抽象概念;组成客观世界的细胞称为事务;人们对事务的认识是通过事务的特征进行的.●信息世界对客观世界中的事务进行认识,经过选择、命名、分类后进入信息世界.实体Entity: 具有公共性质的客观存在的并可相互区分的事务.实体可以是具体的人、事、物,也可以是抽象的概念.属性Attribute: 实体所具有的某一特征.一个实体由若干个属性描述.键(码)Key:唯一标识实体的属性集.域Domain:属性的取值范围.属性是个变量,属性值是变量的取值,域是变量的取值范围.实体型Entity Type:用实体名和属性名来抽象和描述实体的框架.实体集Entity Set:同一类型实体的集合.联系Relationship:现实世界中的事务不是独立存在的,而是相互联系的.实体内部各属性之间的联系;实体之间的联系.概念层模型的联系: 指实体之间的联系.●机器世界将信息世界中的概念模型转换成计算机内部表示,就进入了机器世界(数据世界).2. 实体之间的联系●一对一联系(1:1)●一对多联系(1:n)●多对多联系(m:n)3. 概念模型的表示方法实体联系方法:ER 图(Entity Relationship Approach) P.P.S Chen于1976年提出来的一种表示客观世界信息模型的方法ER图的表示方法典型的组织层数据模型●层次模型:用树型结构组织数据只有一个结点无双亲结点,称根结点.除根结点外,其他结点有且只有一个双亲结点.●网状模型:用网状结构组织数据可以有一个以上结点无双亲结点.一个结点可以有多个双亲结点.●关系模型:用二维表结构组织数据用二维表(table)组织管理数据.表中数据及表之间的数据要满足一定的条件约束.●面向对象模型:用复杂表格及其他结构组织数据数据库的数据模型由三部分组成●数据结构:描述数据的组织结构(静态结构)描述数据的类型、性质、取值范围等✓在不同的数据模型中,数据结构的表示方法不同.描述数据之间的联系✓一个实体内部各数据项之间的联系.✓不同实体之间数据的联系.●数据操作:描述数据的操作(动态结构)检索(查询)数据更新数据:插入数据;修改数据;删除数据●数据完整性约束:描述对数据的约束条件——正确性、有效性和相容性.实体完整性;参照完整性;用户定义完整性实体完整性和参照完整性是任何数据库都必须满足的.用户定义完整性是根据用户的具体要求定义的.数据库系统应不仅能设置完整性,还能执行完整性约束.数据库的结构●内部结构(从数据库管理系统角度看数据结构)三级模式(外模式、模式和内模式)●外部结构(从最终用户角度看数据结构)集中式结构分布式结构客户/服务器结构(C/S结构-Client/Server)浏览器/服务器结构(B/S结构-Browser/Server)并行结构……●两层结构C/S:客户层/服务器层●三层结构B/A/S:浏览器/应用程序服务器/数据库服务器1. 数据库系统的三级模式结构●模式Schema用于描述数据库的结构;模式不涉及具体数据值.●要特别注意区分“型”和“值”的概念型是指对数据结构和属性的说明.值是型的具体取值,是数据库的一个实例.●三级模式结构是典型的数据库模式结构尽管实际数据库的软件产品是多种多样的,可以使用不同的语言,建立在不同的操作系统上,存储结构不同,但基本上都采用典型的三级模式结构和两种映象.(1) 模式Schema逻辑模式Logical Schema用于描述数据库的全局逻辑结构,是数据库的总体构架.一个数据库只有一个模式,其主要功能有:定义模式名,定义数据项及类型,定义记录,定义记录间的联系,定义安全性控制要求,定义数据完整性约束条件等.模式用模式数据定义语言Schema DDL(Data Definition Language)编写,称源模式.源模式经翻译后产生目标模式,存放在描述数据库中.(2) 外模式External Schema外模式也叫子模式Subschema或用户模式User Schema,用于描述某一用户观点的数据库的局部逻辑结构.●外模式通常是模式的子集,外模式与某一具体应用有关.同一外模式可以为某一用户的多个应用所使用,但一个用户通常只能使用一个外模式.不同用户的外模式可以互相覆盖.●外模式是由模式映象出来的.二者的功能一致,但有区别:数据项定义可以不同;记录的组成可以不同;可以有不同的密码和不同的使用权限.●外模式用外模式数据定义语言Subschema DDL定义.(3) 内模式Internal Schema●内模式也叫存储模式Storage Schema,是数据库数据的内部表示,用于定义数据的存储方式和物理结构.内模式由数据库管理员DBA使用.一个数据库只有一个内模式.●内模式的功能定义每一个数据项的物理表示方式;定义数据的寻址方法和检索技术;定义数据是否压缩存储,数据是否加密存储;定义数据的物理存储块的大小,溢出处理方法.●内模式用内模式数据定义语言Data Storage DDL描述.2. 数据库系统的组成●硬件——要求:大内存,大硬盘,较高的通道能力.●软件支持数据库的操作系统;数据库管理系统;具有与数据库接口的高级语言及其编译系统;以DBMS为核心的开发工具.●数据库: 具体的数据库应用系统.数据库的数据;数据库的描述.●人员: 数据库管理员、系统分析员、应用程序员和用户.第三章关系数据库1. 域Domain是一组具有相同数据类型的值的集合.2. 笛卡儿积Cartesian Product给定一组域D1,D2,…,Dn(这些域中可以有相同的)D1,D2,…,Dn 的笛卡尔积为:D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di, i=1,2,…,n}其中:(d1,d2,…,dn)叫一个n元组(n-tuple),简称元组di叫一个分量3. 关系RelationD1×D2×…×Dn 的子集叫作在域D1,D2,…,Dn上的关系,表示为: R(D1, D2,…, Dn)其中:R为关系名,n为关系的度(或目),D1, D2,…, Dn为域名由于域名可以相同,为了加以区分,必须为每一列起一个名,称属性Attribute,故关系常表示为:R (A1,A2,…,An )4. 属性到域的映象●若属性名与域名相同,则用域名作属性名.●若属性名与域名不同,则需要指出属性到域的映象.Ai=Dom(Di) 表明:属性Ai来自于域Di5. 数据库关系与数学中关系的区别●关系模型对其数学定义作了适当的扩充:●笛卡尔积可以是一个无限集合,但关系必须是有限集合.在数学意义上, (d1,d2,…,dn)≠(d2,d1,…,dn)列之间不满足交换律,故通过为关系的每一个列加一个属性名,取消关系中列的有序性限制.6. 关系的性质●列是同质的:每一列中的数据类型相同●列名是唯一的:不同的列(属性)可以来自于同一个域,需要指●出属性到域的映象●行的顺序无关:任何两行可以互换●列的顺序无关:任何两列可以互换●任何两行不能完全相同:由主码区分●分量必须是原子量:每一列不可再分割7. 关系的优点与不足●关系模型的优点理论基础扎实:集合论,关系数据理论.概念单一: 实体用关系表示,联系也用关系表示.存取路径对用户是透明的: 用户不必知道存取路径规范化:最基本的要求是每一个属性不可再分割.表示单一: 数据用表表示,查询结果也用表表示.●关系模型的缺点效率不如非关系模型,因此需要进行查询优化, 增加了DBMS自身的开发难度.计算机处理速度的提高,数据库优化算法的改善,使关系数据库的效率仍远高于其他数据模型 关系模型是通过满足一定条件的二维表来表示实体集合及数据之间联系的一种数据模型.具有坚实的数学基础和较严密的理论,使用灵活方便,得到了迅速发展,80年代以后的数据库系统几乎都支持关系模型.●关系的逻辑数据结构实体和联系都用关系表示.从用户的观点看,关系是一张二维表.●关系的存储结构每个表可对应一个文件.也可以将多个表存储在一个文件中.8. 关系的术语●关系模式Relation Schema:关系的型,是对关系的描述,即关系的框架●关系Relation:关系模式的一组具体取值●关系数据库模式Relation Database Schema:关系模式的集合●关系数据库Relation Database:关系的集合●元组Tuple:关系中的一行●属性Attribute:由于域可以相同,为了区分,必须为每个列取一个名字,称为属性●域Domain:属性的取值范围●超码(键)Super Key:能唯一标识一个元组的属性组●候选码(键)Candidate Key:能唯一标识一个元组的最小属性组●主码(键)Primary Key:若候选码有多个,选择其中的一个作主码例:学号,身份证号●主属性Primary Attribute:候选码中的属性●非主属性Non-primary Attribute:不包含在任何候选码中的属性●全码All Key: 全部属性都是主属性9. 关系操作分类●关系代数:通过对关系的运算表示查询方式●关系演算:用谓词表示查询方式元组关系演算:谓词变元的基本对象是元组域关系演算:谓词变元的基本对象是域●结构化查询语言SQL10. 关系代数运算包括两大类●传统的集合运算:从行的角度进行运算.并∪, 交∩,差—,广义笛卡儿积×●专门的关系运算:从行和列两种角度进行运算.选择σ,投影π,连接⋈,除÷●在各种运算中,使用下列运算符比较运算符: <, ≤, =, >, ≥, ≠逻辑运算符:¬(非),∧(与),∨(或)11. 关系的完整性约束:关系中的所有数据必须满足的约束条件三类完整性——实体完整性、参照完整性、用户定义完整性●实体完整性规则——若属性A是基本关系R的主属性,则A不能取空值. 主健必须唯一. 关系模型的表分为基本表(基本关系),查询表和视图.基本表:实际存在的表查询表:查询结果表视图:定义的虚表空值与零值不同——空值:没有值,但不是0——零值:其值为0●参照完整性实体之间的联系是通过外健(外部码)进行的.定义: 外键Foreign Key设F是基本关系R的一个或一组属性,但F不是R的主健.若F与基本关系S的主健Ks相对应,则称F是基本关系R的外健(R可以与S是同一关系).称R 为参照关系,S为被参照关系或目标关系.例如:在学生(学号,姓名,性别,专业,班长学号)中班长学号是也是一个学号,必须与学号出自同一个域,故班长学号也是外健.●参照完整性规则——若属性或属性组F是基本关系R的外健,则: F在R中取空值;若F在R中非空则其在S中必须存在.●用户定义完整性:根据用户的具体要求定义的完整性.第四章SQL Server 数据库系统基础●SQL Server数据库的特点●SQL Server数据库的版本:企业版,标准版,个人版,开发版●SQL Server 的安装:软硬件环境、安装过程●SQL Server 数据库服务管理器的启动与登录:启动服务器管理器、登录企业管理器、登录查询分析器●SQL Server 的工具与实用程序●SQL Server 的系统数据库●SQL Server 的主要数据类型●数据库及基本表的创建第五章结构化查询语言SQL 0.1. SQL的特点(1) 一体化(2) 高度非过程化(3) 面向集合的操作方式(4) 两种使用方式、统一的语法结构自含式语言能独立地在联机方式下使用(命令方式),用户可以在终端键盘上直接输入SQL命令对DB进行操作.嵌入式语言嵌入到高级语言(VB、PB、Java等)程序中,利用主语言(高级语言)进行计算处理、利用DB语言进行数据管理.同一条命令在两种操作方式中的语法结构基本一致. (5) 语言简捷、易学易用0.2. SQL支持三级模式结构外模式●外模式对应于视图View和部分基本表Base Table ●用户可以用SQL语言对基本表和视图进行操作●从用户的观点看基本表和视图是一样的模式●模式对应于基本表●基本表是独立存在的表●每个基本表对应一个关系内模式●内模式对应于存储文件●存储文件是在计算机存储介质中存放的文件形式●一个或若干个基本表对应一个存储文件视图●视图是从一个或几个基本表或其他视图导出的表●视图并不存放实际的数据,仅保存视图的定义●使用视图时,根据视图定义,从基本表中取数据●因此,视图实际上是一个虚表1.3. 删除基本表2.1. 插入数据(3) 插入应注意的问题对于表Student和SC若在SC 中插入的记录的Sno 在Student 不存在,则系统不允许插入. 2.2. 修改数据对满足条件的元组中的指定列用相应的表达式的值修改.(4)修改应注意的问题对于表Student 和SC 若修改Student 中的Sno,而未修改SC 中对应记录的Sno.若修改SC 中的Sno,而未修改Student 中对应的Sno. 2.3. 删除数据一个学生的各种数据可能存放在多个表中,但一个删除语句只能对一个表进行删除,这样可能会引起数据不一致问题.3. 查询功能是数据库系统的核心.其中:● SELECT :表示查询● ALL :显示所有满足条件的元组 ● DISTINCT :消除重复元组 ● *:所有列● 目标列表达式:查询结果,可以有函数运算 ● FROM :从哪些表或视图中查询 ● WHERE :查询条件 ● GROUP BY:按指定的列分组,例如,计算每个学生平均成绩时,要按学号分组● HA VING :GROUP BY 分组的条件 ● ORDER BY :输出时按指定列排序 ● ASC :升序(缺省值) ● DESC :降序3.1. 单表查询 (1)查询指定列(2) 按用户要求的顺序查询指定列 (3) 查询全部列(6) 查询满足条件的元组(7) 对查询结果排序● 统计元组个数:COUNT([DISTINCT|ALL]|*)● 统计一列中值的个数:COUNT([DISTINCT|ALL]<列名>)● 对一列求和:SUM([DISTINCT|ALL]<列名>) ● 对一列求平均值:A VG([DISTINCT|ALL]<列名>) ● 求一列中最大值:MAX([DISTINCT|ALL]<列名>) ● 求一列中最小值:MIN([DISTINCT|ALL]<列名>) DISTINCT: 消除重复元组 ALL: 所有元组,缺省值 (9) 对查询结果分组分组方法——用GROUP BY 子句将查询结果按某一列或多列值分组,值相等的为一组.若分组后还要按一定条件进行筛选, 可以用HA VING 短注意WHERE 与HAVING 语句的区别● WHERE :作用于基本表或视图,选择满足条件的元组● HA VING :作用于GROUP 分成的子组,选择满足条件的组3.2. 连接查询——若一个查询同时涉及两上或两个以上的表,则称为连接查询. 连接查询的种类连接条件中各属性的值应是可比的. 字段名可以相同,也可以不同.3.3子查询一个SELECT-FROM-WHERE 结构是一个查询块.将一个查询块嵌套在一个WHERE 或HA VING 子句的条件中,称为嵌套查询.● 当内查询返回的值为多个值时,可以通过集合进行. ● 当内查询返回的值为一个值时,可以通过等号比较符进行.● 当内查询返回的值与外查询具有某种比较关系时,可●>ANY 大于某一个值●>ALL 大于所有值●<ANY 小于某一个值●<ALL 小于所有值●>=ANY 大于等于某一个值●>=ALL 大于等于所有值●<=ANY 小于等于某一个值●<=ALL 小于等于所有值●=ANY 等于某一个值●=ALL 等于所有值●!=ANY 不等于某一个值3.5.交运算3.6. 差运算4.1. 索引的概念●索引的意义改善系统性能,加快查询速度.更新基本表时自动修改索引●索引的数量一个基本表可以按需要建立多个索引例如:对Student表对主码要建立索引若经常按姓名查询,则可按姓名建立索引若经常按系名查询,则可按系名建立索引●索引的代价维护索引需要花费时间4.2. 索引的分类●聚簇索引Clustered对数据记录进行物理排序一个基本表只有一个聚簇索引一般对主码建立聚簇索引●非聚簇索引NonClustered对于需经常查询、计算、更新的属性可建立非聚会簇索引索引信息单独存放在另一个索引名中●惟一索引也是一种非聚簇索引索引的属性不包含重复值4.4. 删除索引索引建立后,由系统进行维护,不需用户干预.频繁增、删、改数据,将花费系统的时间维护索引,因此,●T-SQL的概念T-SQL是Microsoft对标准SQL的扩展.T-SQL语言是一种交互式查询语言.直接使用SQL语句将SQL语句嵌入到高级语言中T-SQL有自己的数据类型、表达式、关键字和语句结构.SQL语句在查询分析器中执行.●常量,变量,数据类型,运算符与表达式(2) 变量变量名变量的分类全局变量——系统提供的变量,作为函数引用——格式: @@变量名局部变量——用户定义的变量,存放单个值——格式:@变量名●流程控制语句——条件、case、循环、注释●函数聚合函数:聚合函数用于对一组值执行计算并返回一个值.数学函数:三角函数、幂函数、符号函数、其他数学函数●SQL语句简介。
目录1绪论 (1)1.1项目简介 (1)1.2设计目的 (1)1.3设计内容 (1)1.4应用范围 (1)2需求分析 (1)2.1数据需求 (1)2.2事务需求 (2)2.3详细功能分析 (2)2.4数据字典 (2)2.5开发运行环境 (3)2.6安全保障 (3)3概念设计 (3)3.1实体及联系抽象 (3)3.2E-R图 (4)3.3关系模式 (5)4逻辑设计 (5)4.1各表功能 (5)4.2各表结构 ...................................................................... 错误!未定义书签。
4.3表关系图 (11)5物理设计 (11)5.1物理存储 (11)5.2完整性约束 (11)5.3视图设计 ...................................................................... 错误!未定义书签。
5.4触发器设计 .................................................................. 错误!未定义书签。
6系统实现与维护 (13)6.1模块1 (13)6.2模块2 (17)6.3模块3 ........................................................................... 错误!未定义书签。
7总结 (1)7.1系统实现程度 (1)7.2问题及难点 (1)7.3收获与体会 (1)1绪论1.1项目简介近年来,中国医药行业迅速发展,药店企业多业态经营,仓储式大型超市、中等规模超市、便利连锁综合发展。
随着规模的扩大,传统的医药管理已经不能适应发展的需要,很难在激烈的竞争中生存。
通过对从事医药产品的零售、批发等工作企业的深入调查,发现其业务主要包括企业药品销售、出入库管理、企业的财务、人事管理等。