北大 数据库设计与实践 作业 参考答案
北大数据库原理上机考题练习及参考答案 练习六(班级、学生、系)
题目:设学校环境如下:一个系有若干个专业,每个专业一年只招一个班,每个班有若干个学生。
现要建立关于系、学生、班级的数据库,关系模式为:班CLASS (班号,专业名,系名,入学年份,人数)学生STUDENT (学号,姓名,年龄,班号)系DEPARTMENT (系号,系名)试用SQL语言完成以下功能:1 建表,在定义中要求声明:(1)每个表的主外码。
(2)每个班级的人数不能超过30人。
(3)学生的年龄介于15到40岁之间。
(4)学生姓名不能为空。
2 插入如下数据CLASS(101,软件,计算机,1995,20;102,微电子,计算机,1996,30;111,无机化学,化学,1995,29;112,高分子化学,化学,1996,25;121,统计数学,数学,1995,20;131,现代语言,中文,1996,20;141,国际贸易,经济,1997,30;142,国际金融,经济,1996,14;)STUDENT (8101,张三,18,101;8102,钱四,16,121;8103,王玲,17,131;8105,李飞,19,102;8109,赵四,18,141;8110,李可,20,142;8201,张飞,18,111;8302,周瑜,16,112;8203,王亮,17,111;8305,董庆,19,102;8409,赵龙,18,101;8510,李丽,20,142 )DEPARTMENT(001,数学;002,计算机;003,化学;004,中文;005,经济;)3 完成以下查询功能(1)找出所有姓李的学生。
(2)列出所有开设超过两个专业的系的名字。
(3)列出人数大于等于2的系的编号和名字。
4 学校又新增加了一个物理系,编号为006。
5 学生张三退学,请更新相关的表。
/*******************************************2CreateDB.sql 创建第二个题目的数据库。
*******************************************/Create database pku2/************************************************ 2CreateTB.sql 分别创建下列三个表:班CLASS (班号,专业名,系名,入学年份,人数)学生STUDENT (学号,姓名,年龄,班号)系DEPARTMENT (系号,系名)并用SQL语言完成以下功能:1 建表,在定义中要求声明:(1)每个表的主外码。
数据库作业及参考答案(最新版)【优质】
数据库一、单选题:1.数据库系统的核心是()。
A编译系统 B 数据库 C 操作系统 D 数据库管理系统2.数据库是在计算机系统中按照一定的数据模型组织、存储和应用的()。
A文件的集合 B 数据的集合 C 命令的集合 D 程序的集合3.数据库DB、数据库系统DBS、数据库管理系统DBMS这三者之间的关系是():A DBS包括DB和DBMSB DBMS包括DB和DBSC DB包括DBS和DBMSD DBS就是DB,也就是DBMS4.数据库管理系统能实现对数据库中数据的查询、插入、修改和删除,这类功能称为()。
A数据定义功能 B 数据管理功能 C 数据操纵功能 D 数据控制功能5.在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特性的是()。
A外模式 B 内模式 C 存储模式 D (概念)模式6.在数据库系统中,当总体逻辑结构改变时,通过改变(),使局部逻辑结构不变,从而使建立在局部逻辑结构之上的应用程序也保持不变,称之为数据和程序的逻辑独立性。
A应用程序 B 模式到内模式的映像C 存储结构D 外模式到概念模式的映像7.按照数据模型分类,数据库系统可以分为三种类型,正确的是():A大型、中型和小型 B 西文、中文和兼容C 层次、网状和关系D 数据、图形和多媒体8.数据模型指的是数据库的组织形式,数据模型的三要素是()。
A数据库文件、二维表、记录 B 字段、类型、宽度C 数据结构、数据操作、完整性约束D 数据定义、数据存储、数据通信9.所谓概念模型,指的是()。
A客观存在的事物及其相互联系 B 将信息世界中的信息进行数据化C 实体模型在计算机中的数据化表示D 现实世界到机器世界的一个中间层次,即信息世界10.在数据库设计中用关系模型来表示实体和实体之间的联系。
关系模型的结构是()。
A层次结构 B 二维表结构 C网络结构D封装结构11.ER图是数据库设计的工具之一,它一般适用于建立数据库的()。
数据库设计综合练习题及答案
数据库设计综合练习题及答案1、有一课程管理系统,有如下特点:一个系可开设多门课程,但一门课只在一个系部开设,一个学生可选修多门课程,每门课可供若干学生选修,一名教师只教一门课程,但一门课程可有几名教师讲授,每个系聘用多名教师,但一个教师只能被一个系所聘用,要求这个课程管理系统能查到任何一个学生某门课程的成绩,以及这个学生的这门课是哪个老师所教的。
(1)请根据以上描述,绘制相应的e-r图,并直接在e-r图上注明实体名、属性、联系类型;(2)将E-R图转换为关系模型,绘制相应的数据库模型图,并解释主键和外键。
(3)分析了这些关系模式中包含的函数依赖关系。
根据这些函数依赖关系,分析了相应的关系模式,得出了相应的范式。
将这些关系模式标准化。
1.参考答案:1系部11聘用开设n课程n开设n教师2.假设一家汽车运输公司的数据库中有三个实体集。
首先是“车队”实体集,其属性包括车队编号、车队名称等;第二,“车辆”的实体集,其属性包括车牌号、制造商、制造日期等;第三个是“驱动”实体集。
属性包括司机号码、姓名、电话等。
车队与司机之间存在“聘用”联系,每个车队可聘用若干司机,但每个司机只能应聘于车队与车辆之间存在“拥有”联系,每个车队可拥有若干车辆,但每辆车只能属于一个车队;驾驶员和车辆之间存在“使用”关系。
司机在车队中使用带有“使用日期”和“公里”的车辆。
车队雇佣具有“雇佣开始时间”和“雇佣期”的司机;k1n选修mn选修n属于学生m属性,每个驾驶员可以使用多辆车,并且每辆车可以由多个驾驶员使用。
(1)请根据以上描述,绘制相应的e-r图,并直接在e-r图上注明实体名、属性、联系类型;(2)将E-R图转换为关系模型,绘制相应的数据库模型图,并解释主键和外键。
(3)分析了这些关系模式中包含的函数依赖关系。
根据这些函数依赖关系,分析了相应的关系模式,得出了相应的范式。
将这些关系模式标准化。
2、参考答案:(1) E-R图的设计如下:车队号车队名1车队聘用开始时间1聘期拥有n车辆m使用聘用nn司机牌照号厂家出厂日期司机编号姓名电话使用日期从公里数(2)转换的关系模型应具有四种关系模式:车队(车队号,车队名)车辆(车牌号、制造商、生产日期、车队号)司机(司机编号,姓名,电话,车队号,聘用开始时间,聘期)使用(司机编号,车辆号,使用日期,公里数)3.假设一个企业集团的数据库中有三个实体集。
数据库实习答案
数据库实习答案1、E-R图向关系模式的转化。
最终答案:职工(职工号,姓名,性别,工资,职称,简历,部门号);部门(部门号,名称,地址,领导人职工号);工程(工程号,工程名,参加人数,预算,部门号,负责人职工号);办公室(编号,地点,电话,部门号);参加(职工号,工程号,日期,具体职务);(红色部分为主键,绿色部分为外键)。
2、SQL查询语句练习。
/******************************************************* 实验3 数据库的简单查询实验答案******************************************************/【例3.1】查询全体学生的学号与姓名SELECT Sno,Sname FROM Students【例3.2】查询全体学生的学号、姓名、性别、年龄、所在系。
SELECT Sno,Sname,Sname Ssex,Sage,Sdept FROM Students【例3.3】查询全体学生的选课情况,即学号、课程号、成绩,成绩值都加5SELECT Sno,Cno,Grade+5 FROM Enrollment【例3.4】查询全体学生的学号、姓名,并为原来的英文列名设置中文列别名。
以下三种方法等价。
SELECT Sno '学号' , Sname '姓名' FROM StudentsSELECT Sno AS '学号' ,Sname AS '姓名' FROM StudentsSELECT '学号'=Sno , '姓名'=Sname FROM Students【例3.5】查询全体学生的选课情况,其成绩列值都加5,并为各列设置中文的别名SELECT Sno '学号',Cno '课程号',Grade+5 '成绩' FROM Enrollment 【例3.6】显示所有选课学生的学号。
北大15春《数据库管理系统》作业答案答案
作业ID:986021.(教材第十章)下面用E-R图来表示学校里班级、学生、课程、教师之间关系的概念模型。
学校里设计的实体有:(1)班级属性有:班级号、班级名、专业、人数(2)课程属性有:课程号、课程名、课时、学分(3)教师属性有:编号、职称、姓名、年龄、性别(4)学生属性有:学号、姓名、性别、年龄这些实体之间的联系如下:一个班级由多个学生组成。
一个学生可以选修多门课程,学生选课取得课程成绩;一门课程可以被多个学生选修。
一个教师可以担任多门课程老师,一个课程可以由多个教师同时讲授。
答案在下面2.(教材第四章)有商品供应关系数据库如下:供应商S(SNO,SNAME, STA TUS, CITY)零件P(PNO, PNAME, COLOR, WEIGHT)工程J(JNO, JNAME, CITY)供应关系SPJ(SNO, PNO, JNO, QTY)(注:l S表示供应商,SN为供应商编码,SNAME为供应商名字,CITY为供应商所在城市;l P表示零件,PN为零件编码,PNAME为零件名字,COLOR为零件颜色,WEIGHT为零件重量;l J表示工程,JN为工程编码,JNAME为工程名字,CITY为工程所在城市;l SPJ表示供应关系,QTY表示提供的零件数量。
)(1)用SQL语句建立上述四个表。
(2)完成以下查询:A、求供求工程J1零件的供应商号码SNO;πSNO (σJNO=‘J1’(SPJ)) 结果:{S1,S2,S3,S4,S5}B、求供应工程J1零件为红色的供应商号码SNO。
πSNO (σJN O=‘J1’∧PNO=‘P1’(SPJ)) 结果:{S1,S3}。
《数据库设计与实践》期末复习题及答案2
《数据库设计与实践》期末复习题及答案22008-2009学年度第一学期《数据库设计与实践》模拟试题及答案(2)1. 如果对函数依赖X→Y的定义加以扩充,X和Y可以为空属性集,用?表示空集,那么X→?, ?→Y, ?→? 的含义是什么?答: X→?的含义是:属性集X无论为?还是非空属性集,它都能函数地决定空属性集。
→Y的含义是:空属性集如果能函数地决定Y属性集,那么Y一定为空属性集。
→?的含义是:空属性集可以函数地决定空属性集。
2. 关系模式规范化的目的是什么?答:在关系数据库设计中,要考虑怎样合理地设计关系模式, 如设计多少个关系模式、一个关系模式要由哪些属性组成等, 这些问题需要利用关系规范化理论去解决。
通常, 关系模式必须满足第一范式, 但有些关系模式还存在插入异常、删除异常、修改异常以及数据冗余等各种异常现象。
为了解决这些问题,就必须使关系模式满足更强的约束条件,即规范化为更高范式, 以改善数据的完整性、一致性和存储效率。
3.下面的说法正确么?为什么?(1)任何一个二目关系都是3NF的。
(2)任何一个二目关系都是BCNF的。
(3)当且仅当函数依赖A→B在R上成立, R(ABC)等于其投影R1(AB)和R2(AC)的连接。
(4)若A→B, B→C,则A→C成立。
(5)若A→B, A→C,则A→BC成立。
(6)若BC→A, 则B→A,C→A成立。
答:(1)正确。
因为在任何一个二目关系中, 属性只有两个,不会产生非主属性对候选键的部分函数依赖和传递函数依赖, 所以是3NF的。
(2)正确。
因为在任何一个二目关系中,属性只有两个, 不会产生主属性或非主属性对候选键的部分函数依赖和传递函数依赖, 所以是BCNF的。
(3)不正确。
因为当A→C时, R(ABC)也等于R1(AB)和R2(AC)的连接。
(4)正确。
(根据Armstrong推理规则的传递律)(5)正确。
(根据Armstrong推理规则的合并规则)(6)不正确。
北大数据库原理上机考题练习及参考答案 练习二(商品顾客购买)
题目:现有一个商店的数据库,记录顾客及其购物情况,由下面三个表组成:商品(商品号,商品名,单价,商品类别,供应商);顾客(顾客号,姓名,住址);购买(顾客号,商品号,购买数量);试用SQL语言完成下列功能:1 建表,在定义中要求声明:(1)每个表的主外码;(2)顾客的姓名和商品名不能为空值;(3)单价必须大于0,购买数量必须再0到20之间;2 往表中插入数据:商品(M01,佳洁士,8.00,牙膏,宝洁;M02,高露洁,6.50,牙膏,高露洁;M03,洁诺,5.00,牙膏,联合利华;M04,舒肤佳,3.00,香皂,宝洁;M05,夏士莲,5.00,香皂,联合利华;M06,雕牌,2.50,洗衣粉,纳爱斯M07,中华,3.50,牙膏,联合利华;M08,汰渍,3.00,洗衣粉,宝洁;M09,碧浪,4.00,洗衣粉,宝洁;)顾客(C01,Dennis,海淀;C02,John,朝阳;C03,Tom,东城;C04,Jenny,东城;C05,Rick,西城;)购买(C01,M01,3; C01,M05,2;C01,M08,2; C02,M02,5;C02,M06,4; C03,M01,1;C03,M05,1; C03,M06,3;C03,M08,1; C04,M03,7;C04,M04,3; C05,M06,2;C05,M07,8;)商品有9 条,顾客有5条,购买有5条3 用SQL语句完成下列查询:(1)求购买了供应商"宝洁"产品的所有顾客;(2)求购买的商品包括了顾客"Dennis"所购买商品的顾客(姓名);(3)求牙膏卖出数量最多的供应商。
4 将所有的牙膏商品单价增加10%。
5 删除从未被购买的商品记录。
参考答案:create table product(productno char(10) not null,productname char(15) not null,price float(15),sort char(10),supplier char(20),primary key (productno),check (price > 0))create table customer(customerno char(10) not null,customername char(15) not null,address char(10),primary key (customerno))create table buy(customerno char(10) not null,productno char(10) not null,num smallint,primary key (customerno,productno),foreign key (customerno) references customer (customerno),foreign key (productno) references product (productno),check (num between 0 and 20))insert into product values ('M01','佳洁士',8.00,'牙膏','宝洁');insert into product values('M02','高露洁',6.50,'牙膏','高露洁');insert into product values('M03','洁诺',5.00,'牙膏','联合利华') ;insert into product values('M04','舒肤佳',3.00,'香皂','宝洁') ;insert into product values('M05','夏士莲',5.00,'香皂','联合利华');insert into product values('M06','雕牌',2.50,'洗衣粉','纳爱斯');insert into product values('M07','中华',3.50,'牙膏','联合利华') ;insert into product values('M08','汰渍',3.00,'洗衣粉','宝洁') ;insert into product values('M09','碧浪',4.00,'洗衣粉','宝洁') ;insert into customer values ('C01','Dennis','海淀') ;insert into customer values('C02','John','朝阳') ;insert into customer values('C03','Tom','东城') ;insert into customer values('C04','Jenny','东城');insert into customer values('C05','Rick','西城') ;insert into buy values ('C01','M01',3);insert into buy values('C01','M05',2);insert into buy values('C01','M08',2);insert into buy values('C02','M02',5);insert into buy values('C02','M06',4);insert into buy values('C03','M01',1);insert into buy values('C03','M05',1);insert into buy values('C03','M06',3);insert into buy values('C03','M08',1);insert into buy values('C04','M03',7);insert into buy values('C04','M04',3);insert into buy values('C05','M06',2);insert into buy values('C05','M07',8);(1)求购买了供应商"宝洁"产品的所有顾客;select c.customerno,c.customername from product p,customer c, buy b where p.productno = b.productno and c.customerno = b.customerno and supplier = '宝洁'(2)求购买的商品包括了顾客"Dennis"所购买商品的顾客(姓名);参考书本p126select distinct c.customername from buy as x , customer c where not exists(select * from buy as y where y.customerno in (select customerno from customer where customername = 'Dennis' )and not exists (select * from buy as z where z.customerno = x.customerno and z.productno = y.productno))and x.customerno = c.customerno(3)求牙膏卖出数量最多的供应商。
数据库大作业(全·参考答案)
《数据库原理与应用》综合设计任务书前言《数据库原理与应用》课程的重点知识模块包括:1)数据库设计、2)用SQL实现建库、建表、查询、更新、和创建视图、3)存储过程和触发器设计。
针对这三个应用能力,用一个案例作为背景,布置三次大作业。
在校大学生都能理解“图书管理系统”的应用场合和业务流程。
因此,以图书管理系统作为案例来布置作业,可以降低业务分析难度,让学生将主要精力放在知识消化与技术应用上。
本文档包括四个部分。
第一部分描述系统的需求,第二部分提出E-R模型设计和关系模型设计的任务;第三部分提出在SQL Server中,用SQL语句来建库、建表、查询、更新数据、创建视图的任务;第四部分,根据应用需求、安全需求和数据完整性要求,提出设计存储过程和触发器的任务。
每个任务之前,都给出了完成任务所需要掌握的关键知识点,学生可以在对这些知识点进行复习的基础上完成任务,每个任务是一次大作业。
第一部分案例的需求描述本部分描述“图书管理系统”的需求,学生通过阅读本部分内容,了解系统的功能要求、运行环境,对系统所需的数据有总体认识,作为三次作业的基础。
1.2 需求分析1)功能需求图1-1:功能需求示意图教师信息管理:用于教师基本资料的增删改查。
图书信息管理:用于图书基本信息的增删改查,分类统计图书册数和价值。
借书登记:记录借书时间、所借图书、借书人、办理人。
还书登记:记录还书时间、所还图书、还书人、办理人。
催还:查询借阅逾期的借书信息,给借书人发电子邮件,给借书人的部门打电话。
2)运行环境要求图1-2:运行环境拓扑图系统采用C/S模式,有两台PC和一台服务器,联成一个局域网。
PC上安装图书管理软件的客户端,服务器上安装DBMS,服务器也可由两台PC中的一台来代替。
第二部分作业1——E-R模型与关系模型设计(满分8分)本部分的任务是:在需求分析的基础上,进行E-R图设计,然后将E-R模型转换为关系模型。
任务:1)根据需求描述,绘制E-R图。
数据库实验二作业及答案
数据库实验二作业及答案实验2 SQL Server 数据库的管理一、实验目的1.了解SQL Server数据库的逻辑结构和物理结构的特点。
2.学会使用企业管理器对数据库进行管理。
3.学会使用Transact-SQL语句对数据库进行管理。
二、实验准备1.确定能够创建数据库的用户是系统管理员,或是被授权使用CREATE DATABASE语句的用户。
2.确定要创建的数据库名、所有者(即创建数据库的用户)、数据库大小(最初的大小、最大的大小、是否允许增长即增长的方式)和存储数据的文件。
3.了解常用的创建数据库方法。
三、实验内容及步骤1.在企业管理器中创建studentsdb数据库。
(1)运行SQL Server管理器,启动企业管理器,展开服务器“(LOCAL)(Windows NT)”。
(2)右击“数据库”项,在快捷菜单中选择“新建数据库”菜单项。
在新建数据库对话框的名称文本框中输入学生管理数据库名studentsdb。
2.选择studentsdb数据库,在其快捷菜单中选择“属性”菜单项,查看“常规”、“数据文件”、“事务日志”、“文件组”、“选项”和“权限”页面。
3.打开studentsdb数据库的“属性”对话框,在“数据文件”选项卡中修改studentsdb数据文件的“分配空间”大小为2MB。
指定“最大文件大小”为5MB.在“事务日志”选项卡中修改studentsdb数据库的日志文件的大小在每次填满时自动递增5%。
4.启动查询分析器,在查询分析器中使用Transact-SQL语句CREATE DATABASE创建studb数据库。
然后通过系统存储过程sp_helpdb查看系统中的数据库信息。
CREATEdatabase studbON(NAME=studb,FILENAME='C:\database')exec sp_helpdb5.在查询分析器中使用Transact-SQL语句ALTER DATABASE修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小文1MB。
北京大学《数据仓库与数据挖掘》试题答案整理
《数据仓库与数据挖掘》试题与答案整理2013级智能系高飙1.名词解释5x4(1)主题主题(Subject):宏观分析领域所涉及的分析对象。
是在较高层次上将企业信息系统中的数据进行综合、归类和分析利用的一个抽象概念,每一个主题基本对应一个宏观的分析领域。
面向主题的数据组织方式:在较高的层次上对分析对象的数据的一个完整、一致的描述。
(2)事实(P联机分析)事实是数值度量的;存储一个多维数据,表达期望分析的主题(目的、感兴趣的事情、事件或者指标等);具有一定的粒度,粒度的大小与维层次相关;一个事实中通常包含一个或者多个度量一个事实的两个组件:数字型指标、聚集函数(3)数据归约(P数据预处理)在可能获得相同或相似结果的前提下,对数据的容量进行有效的缩减数据归约的方法:1数据立方体聚集:聚集操作作用于立方体中的数据2减少数据维度(维归约):可以检测并删除不相关、弱相关或者冗余的属性或维3数据压缩:使用编码机制压缩数据集4数值压缩:用替代的、较小的数据表示替换或估计数据5数据离散化以及概念层次的建立:属性的原始值用区间值或较高层的概念予以替换(4)兴趣度(P数据挖掘)一个数据挖掘系统的挖掘结果可能会产生成千上万个模式,但是并不是所有的模式都有意义。
兴趣度度量用于将不感兴趣的模式从知识中分开。
他们可以用于指导挖掘过程,或在挖掘之后,评估发现的模式。
不同类型的数据需要不同的兴趣度量。
兴趣度的度量:一个模式是否感兴趣,取决于它是否容易被用户所理解,是否有效可信,是否潜在有用,是否新颖等兴趣度的度量:客观的度量: 从模式的角度出发,基于模式结构的某些统计的结果,如:支持度(support)、置信度(confidence)等。
主观的度量:从用户的角度出发,对模式的信任程度,如:新颖性、可操作性等。
(5)数据分区(片)(P数据仓库设计)把逻辑上统一的数据分割成较小的、可以独立管理的物理单元(分片)进行存储。
可按时间、按地区、按业务类型进行数据分片(6)数据挖掘数据挖掘是识别数据中有效的、新颖的、潜在有用的和最终可被理解的模式(Pattern)的非平凡过程。
北大“数据库原理”上机实践题目总结(14)
/*3 A、列出销售了所有颜⾊为“Red”的商品的部门名 */ select 部门。
部门名 from 销售记录,部门,商品 where 销售记录。
商品号=商品。
商品号 and 销售记录。
部门号=部门。
部门号 and 商品。
商品颜⾊='red' group by 部门。
部门名 /* B、列出每个供应商供应给每个部门的商品总数量,并按总量由⼤到⼩排列。
*/ select 供应商。
供应商名,部门。
部门名,sum(供应记录。
商品数量)as 总供应量 from 供应记录,供应商,部门where 供应记录。
部门号=部门。
部门号 and 供应商。
供应商号=供应记录。
供应商号 group by 供应商。
供应商名,部门。
部门名 order by 总供应量 desc /* C、列出销售商品的总量排在第⼀位的部门名称 */ select 部门。
部门名 from 销售记录,部门 where 销售记录。
部门号=部门。
部门号 group by 部门。
部门名 having sum(销售记录。
数量)>=all (select sum(销售记录。
数量) from 销售记录 group by 部门号) 以上程序在“SQL Server 2000”中调试运⾏成功! 某个学⽣运动会⽐赛信息的数据库原理上机练习及答案 有某个学⽣运动会⽐赛信息的数据库,保存了如下的表: 运动员(运动员编号,运动员姓名,运动员性别,所属系号) 项⽬(项⽬编号,项⽬名称,项⽬⽐赛地点) 成绩(运动员编号,项⽬编号,积分) athlete(a#,aname,sex,dno) project(p#,pname,address) grade(a#,p#,jf) DROP TABLE W193_GRADE DROP TABLE W193_PROJECT DROP TABLE W193_ATHLETE 请⽤SQL语句完成如下功能: 1. 建表,注意满⾜如下要求: W193 a)表名必须加⾃⼰的帐号作前缀,⽐如“d1*******运动员”, b)定义各个表的主码外码约束 c)运动员的姓名和所属系别不能为空值。
15春北京大学《数据库原理》作业答案
鼓励独立完成作业,严惩抄袭。
请同学们按照题目顺序答题,然后以doc文档的文件形式上传。
(一)写出关系型数据库的第一、第二、第三标准形式的各自要求。
答:①第一标准形式:由原子值和主键值组成,数据表中的每一个字段都不可以再分。
(同一数据表中同类字段不允许重复出现,在一个字段内也不允许放置多个数据项)②第二标准形式:要求所有的非关键字段完全依赖于主键。
③第三标准形式:每一个非主键字段列中没有可传递的的依赖性。
(一个非主键列不能依赖于另一个非主键列)(二)简述数据库设计过程的各个阶段上的设计描述。
答:各阶段的设计要点如下:(1)需求分析:准确了解与分析用户需求(包括数据与处理)。
(2)概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
(3)逻辑结构设计:将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。
(4)数据库物理设计:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。
(5)数据库实施:设计人员运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
(6)数据库运行和维护:在数据库系统运行过程中对其进行评价、调整与修改。
(三)学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授每人各带若干研究生。
每个班有若干学生,每个学生选修若干课程,每门课程可由若干学生选修。
用E-R图画出该学校的概念模型。
答:对应的E-R图如图23所示。
各实体的属性如下:系:系名,系主任号,系地址,系电话班级:班号,班长,人数教研室:教研室名,地址,电话学生:学号,姓名,性别,年龄,籍贯,入学年份,专业本科生:已修学分,平均成绩研究生:研究方向,导师姓名教员:姓名,年龄,性别,职称,专长正副教授:科研项目,研究方向。
数据库设计习题参考答案
数据库设计习题参考答案(总3页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--第6章数据库设计习题参考答案1.数据库的设计过程。
(P205页)答:按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下六个阶段需求分析.概念结构设计.逻辑结构设计.物理结构设计.数据库实施 .数据库运行和维护 .2.试述数据库设计过程的各个阶段上的设计描述.(P207页)答: A.需求分析阶段进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。
需求分析是整个设计过程的基础,是最困难、最费时的一步。
作为地基的需求分析是否做得充分与准确,决定了在其上构建数据库的速度与质量。
需求分析做得不好,甚至会导致整个数据库设计返工重做。
B.概念结构设计阶段概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
C.逻辑结构设计阶段逻辑结构设计是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。
D. 数据库物理设计阶段数据库物理设计是为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。
E.数据库实施阶段在数据库实施阶段,设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
F.数据库运行和维护阶段数据库应用系统经过试运行后即可投入正式运行。
在数据库系统运行过程中必须不断地对其进行评价、调整与修改。
4.试述数据库设计的特点。
(P204页)答: A、数据库建设是硬件、软件和干件的结合。
B、数据库设计应该和应用系统设计相结合。
5.需求分析阶段的设计目标是什么(补充)调查的内容是什么(210页)答: 需求分析阶段的设计目标是对系统的整个应用情况作全面的、详细的调查,确定企业组织的目标,收集支持系统总的设计的基础数据和对这些数据的要求,确定用户的需求,并把这些要求写成用户和数据库设计者都能接受的文档。
数据库实验报告实验二参考答案[最终版]
数据库实验报告实验二参考答案[最终版]第一篇:数据库实验报告实验二参考答案[最终版]1.你的老板要求你创建一个数据量为20G的数据库,但是你现在的硬盘上没有一个这么大空闲容量的分区,只有3个空闲容量为8G的分区,请问,你该如何完成这个任务?答:为该数据库创建3个数据文件,每个数据文件只需保存小于8G的数据,将这3个数据文件分别存储在不同的硬盘分区即可。
注:数据库中的数据都保存在该数据库的若干数据文件中,而非日志文件!2.你想创建一个初始大小为2MB的数据库,但是你却发现你创建的数据库的初始大小是5MB,而且不能小于这个值,请问是什么原因?答:系统数据库中的model数据库为用户创建数据库提供模板,也就是说,在创建数据库时,数据库引擎首先通过复制 Model 数据库中的内容来创建数据库的第一部分,然后再用空页填充新数据库的剩余部分。
因此,用户创建的数据库的初始大小不能小于model数据库的大小。
该问题的原因在于model数据库数据文件的初始大小被设定为5MB。
/***************************SQL语言部分*****************************/ /*创建数据库student*/create database studenton(name=student_data,filename='C:DATAstudent_data.mdf', size=3,maxsize=unlimited,filegrowth=1)log on(name=student_log,filename='C:DATAstudent_log.ldf',size =1,maxsize=20,filegrowth=10%)/*修改数据库student--添加数据文件*/alter database student add filegroup studata /*先增加一个文件组studata*/ goalter database studentadd file(Name=student_data1,filename='D:DATAstudent_data1.nd f',Size=50,Maxsize=500,Filegrowth=30%)to filegroup studata /*删除数据库student */ drop database student第二篇:SQL数据库实验报告实验二实验2SQL Server数据库的管理1.实验目的(1)了解SQL Server 数据库的逻辑结构和物理结构的特点。
数据库实验及作业部分参考答案
实验三关系查询与连接首先,将sales表中tot_amt的值计算出来。
update sales set tot_amt=0goselect order_no,tot=sum(qty*unit_price)into aa1from sale_itemgroup by order_nogoselect * from aa1goupdate sales set tot_amt=totfrom sales,aa1where aa1.order_no=sales.order_nogo1、查找所有经理的姓名、职称、薪水。
select emp_name ,title,salaryfrom employeewhere title='经理'2、查找出姓“王”并且姓名的最后一个字为“功”的员工。
select *from employeewhere emp_name like '王%功'//3、添加一条记录至employee表(用INSERT…..INTO)。
insert into employee(emp_no,emp_name,sex,dept,title,date_hired,salary)values('E0025','彭江','M','业务','职员',1900/01/21,43200)//4、将每个员工的薪水上调3%。
update employeeset salary=salary*1.03select *from employee3、查找住在上海或北京的女员工,并显示其姓名、所属部门、职称、住址select emp_name,dept,title,addrfrom employeewhere (addr='上海市' or addr= '北京市')and sex='F'4、在表sales中挑出销售金额大于等于10000元订单select *from saleswhere tot_amt>=10000.005、选取订单金额最高的前10%的订单数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系统为每篇论文分配一个唯一的标识符,并且通过标题、摘要以及包含此 论文的电子文件名来描述。
一篇论文可能有多个作者,但是其中的一个作者被设计作为联系作者。 论文的评委由电子邮件地址唯一标识。同时记录每名审稿人的名、姓、电
话号码、附属关系,以及所关心的主题。 每篇论文分配给两到四个评委。评委按照送审论文的技术特点、可读性、
题目二: 1. 考虑研究人员提交他们的研究论文的 CONFERENCE_REVIEW 数据库。 审稿人的评审意见在论文的评审过程中都要保留下来,已备选择论文时参 考。数据库为审稿人提供了最基本的服务,审稿人为每篇论文记录评估问 题的答案,并对这篇论文提出接受或拒绝的建议。数据需求总结如下: 论文的作者由电子邮件唯一标识。论文的作者的姓和名也同时被记录。
其差即为所求校验码的值。
设计函数 CheckIDCode(ID_code),计算身份证的校验码。 身份证前 17 位是本体码,最后一位是校验码,它的生成过程如下: 一、对前 17 位数字本体码加权求和: S = SUM ( Ai *Wi ),i = 1,2,2,17 ,其中 Ai 表示第 i
位置上的身份证号码数字值,Wi 表示第 i 位置上的加权因子,依次为 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2。
实习一:ER 设计
题目一: 已知有如下关系模式:E1(a1, a2, a3),E2(a3, a4),E3(a5, a6),E4(a3, a5, a7),
其中带下划线的属性标识为所在关系模式的主码。试画出相应的 E-R 图,使 得可以从该 E-R 图推导出上述关系模式。 注:以下设计题目中的 er 图均需要用数据建模工具 ERWin 来完成设计 (把设 计好的 ER 图粘贴到 word 文档中)。
创新性以及论文主题与会议的相关性这四个原则,对分配给他的论文在 1~10 这 10 个等级范围内进行分级。最后每个评委对每篇论文做出总的评 价。 每个评审包括两个书面意见:一个是仅供评委委员会参考的,另一个是反 馈给作者的。
参考答案二:
2. 下面是一张采购订单的票据,根据上面列出的信息,给出其实体联系模型。
实习五:关系规范化
(答案参见“实习五参考作业.pdf”)
• 题目一:
R(ABCDE), F = {AB→C, B→D, C→E, CE→B, AC→B}。 – 给出其候选码 – 判断范式级别 – 分别给出保持无损连接和函数依赖的分解
• 题目二:
R(ABCDE), 给出下面函数依赖集在 S(ABCD)上的投影。 – F={AB → D,AC → E,BC → D,D → A, E → B}
题目三: 现在安排你来设计一个学校的信息管理系统。请仔细考察学校的各个部门
活动(至少三个部门),类似图书馆、院系、后勤、体育馆等,给出学校 ER 的设计图。 (只要自圆其说即可,略)
实习二:关系代数
S(SNO, SNAME, STATUS, CITY) P(PNO, PNAME, COLOR, WEIGHT, CITY) J(JNO, JNAME,CITY) SPJ(SNO, PNO, JNO, QTY) S 表示供应商,各属性依次为供应商号,供应商名,供应商状态值,供应商所在城市; P 表示零件,各属性依次为零件号,零件名,零件颜色,零件重量,零件存放的城市; J 表示工程,各属性依次为工程号,工程名,工程所在城市; SPJ 表示供货关系,各属性依次为供应商号,零件号,工程号,供货数量。 试用关系代数完成下面查询
实现一个触发器,每当插入一条记录,检查是否可以成交,成交的条件是买入价大于等 于卖出价,并且最老的标的优先成交。成交时如果一方(A)的标的数量小于另一方(B),则从 表中删除 A 的记录,保留 B 的记录并且修改 B 的标的数量。同时要求显示成交的相关信息, 包括成交的买卖方、股票号、价格、数量以及时间等。
6. 求供应了所有红色零件的供应商姓名。
7. 求最大的 QTY 值。 8. 列出恰好供应了相同零件的供应商对。Fra bibliotek习三:基本 SQL
安装 AdventureWorks2012_Database,基于该数据库自己设计至少 10 个查询,要求覆盖各种查询类型,同时把查询结果也粘贴到作业 文档中。(自圆其说即可,略)
OrderChar(‘database’)=aaabdest GroupChar(‘datadata’)={(a,4),(d,2),(t,2)}
(三) 下面两个函数二选一实现 设计函数 CheckBarCode(bar_code),计算条形码的校验码。 下面是条形码的校验码的计算过程(位置序号由右至左,校验码位置序号为 1): 一、从条形码位置序号 2 开始,所有偶数位的数字码求和。 二、将步骤一的和乘以 3。 三、从条形码位置序号 3 开始,所有奇数位的数字码求和。 四、将步骤二与步骤三的结果相加。 五、用大于或等于步骤四所得结果且为 10 最小整数倍的数减去步骤四所得结果,
二、计算模:Y = MOD(S, 11) 。 三、通过模得到对应的校验码,Y = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,分别对应着校验码 1, 0, X, 9, 8, 7, 6, 5, 4, 3, 2。
3. 触发器
StockBid(stock_id, cust_id, flag, date, price, amount), 存储股票买入和卖出的标的,分别 代表股票号,客户号,flag 用来标识是买入还是卖出,标的日期,标的价格,以及标的数量。
实习四:存储过程、函数、触发器
(参见“实习四参考作业.pdf”)
1. 存储过程
(一)要求:创建一个 delete_one 存储过程,每次它删除表 T 中重复元组中的一个。例如 假定表 T={1, 2, 2, 3, 3, 3, 4, 4, 4, 4};对其执行一次 delete_one,T={2, 3, 3, 4, 4, 4}, 再执行一次 delete_one,T={3, 4, 4}。
(二)编写存储过程 MySum(n),计算从 1 到 n 的和,要求 n 不超过 30,利用递归来实现, 也即 MySum(n)= MySum(n-1)+n, MySum(1)=1。
2. 用户定义函数
(一) 设计函数 IntersectDistinct()以及 IntersectAll(),计算表 R(A)和 S(A)之间的交。 (二) 设计函数 OrderChar(string)或者 GroupChar(),它们各自的功能如下:
• 题目三:
分别写出关系代数和 SQL 语句,验证关系 R(ABC)上 A→B 和 A→→B 是否成立。
1. 求没有供应 p1 和 p2 两种零件的供应商姓名。
2. 列出所有供应商的信息,包括供应商姓名、所供应的零件名(没有供应零件的供应 商也要列出,最后结果中不要出现重复元组)
3. 求只向与自己位于不同城市的工程供应零件的供应商姓名。
4. 求只向与自己位于相同城市的工程供应零件的供应商姓名。
5. 求供应了所有零件的供应商姓名。