数据库作业 2
哈尔滨理工大学数据库大作业2SQL查询数据库表

哈尔滨理工大学
数据库大作业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 凭证类别子表。
福师《数据库应用》在线作业二

A. 视图保存在项目文件中
B. 视图保存在数据库中
C. 视图保存在表文件中
D. 视图保存在视图文件中
正确答案:B
17. 在Visual FoxPro中,删除数据库表S的SQL命令是( ) (满分:2)
C. 级联和限制
D. 限制和忽略
正确答案:D
38. "项目管理器"中的"文档"选项卡用于显示和管理( ) (满分:2)
C. 选择和投影
D. 自然连接和选择
正确答案:C
19. “项目管理器”的“运行”按钮用于执行选定的文件,这些文件可以是( ) (满分:2)
A. 查询、视图或表单
B. 表单、报表和标签
C. 查询、表单或程序
D. 以上文件都可以
A. 3456
B. 34567
C. 7654
D. 76543
正确答案:D
13. 在Visual FoxPro某数据表中有一个数值型字段,要求有4位整数,2位小数,其值可能为负值,它的宽度应为( ) (满分:2)
A. 6
B. 7
A. UPDATE产品SET单价=单价+单价*8%FOR ALL
B. UPDATE产品SET单价=单价*1.08 FOR ALL
C. UPDATE产品SET单价=单价+单价*8%
D. UPDATE产品SET单价=单价*1.08
正确答案:D
26. 以下所列各项属于命令按钮事件的是( ) (满分:2)
C. 加快数据库表的更新速度
D. 加快数据库表的查询速度
数据库作业第二章第三章

第二章一、思考题1.什么是PSW,它有何作用?psw:操作系统将程序运行时的一组动态信息会聚在一起,称为程序的状态字作用:实现程序状态的保护和恢复3.为什么要把机器指令分成特权指令和非特权指令?应用程序在执行有关资源管理的机制指令时易于导致系统混乱,造成系统或用户信息被破坏,因此在多道程序设计环境中,从资源管理和控制程序执行的角度出发,必须把指令系统中的指令分成这两类。
4.试分别从中断事件的性质、来源和实现角度对其进行分类从中断事件的性质和激活的手段来说,可以分成两类:(1)强迫性中断事件强迫性中断事件不是正在运行的程序所期待的,而是由于某种事故或外部请求信息所引起的,分为:机器故障中断事件。
程序性中断事件。
外部中断事件。
输入输出中断事件。
(2)自愿性中断事件自愿性中断事件是正在运行的程序所期待的事件。
按事件来源和实现手段分类:(1)硬中断;硬中断分为外中断(中断、异步中断)和内中断(异常、同步中断);(2)软中断;软中断分为信号和软件中断。
9.什么是系统调用?试述API、库函数及系统调用间的关系。
叙述系统调用执行流程。
由操作系统实现的所有系统调用所构成的集合即程序接口或应用编程接口(Application Programming Interface,API)。
系统调用是一种API,是应用程序同系统之间的接口。
库函数是语言本身的一部分,可以调用多个系统调用;系统调用(函数)是内核提供给应用程序的接口,属于系统的一部分,可以认为是某种内核的库函数;操作系统API是有系统调用(函数)的集合(也就是将许多的系统调用封装在了一起)。
一是编写系统调用服务例程;二是设计系统调用入口地址表,每个入口地址都指向一个系统调用的服务例程,有的还包括系统调用自带的参数个数;三是陷阱处理机制,需要开辟现场保护区,以保存发生系统调用时应用程序的处理器现场。
应用程序执行系统调用,产生中断指向内核态,进入陷阱处理程序,它将按功能查询入口地址表,并转至对应服务例程执行,完成后退出中断,返回应用程序断点继续运行。
数据库作业2 (1)

刘文玲41304289一、查询学生-课程数据库1.查询目前年龄大于19岁的学生信息:学号、姓名和出生年份。
SELECT SNO,NAME,2015-AGEFROM StudentWHERE AGE>192.查询每门课程的最高分,要求得到的信息包括课程号和分数。
SELECT CNO,MAX(GRADE)FROM SCGROUP BY CNO3.统计只有2名以下(含2名)学生选修的课程情况,统计结果包括课程号、课程名和选修人数,并按选课人数降序排列。
SELECT O,CNAME,COUNT(SNO)FROM SC,CourseWHERE O=OGROUP BY(O,AME)HAVING COUNT(SNO)<=2ORDER BY COUNT(SC.SNO) DESC4.查询选修了信息系统和数据库的学生的名字。
(2种方法)●SELECT DISTINCT NAMEFROM Student,Course,SCWHERE Student.SNO=SC.SNO AND O=O ANDCNAME IN('数据库','信息系统')●SELECT NAMEFROM StudentWHERE SNO IN(SELECT SNOFROM SCWHERE CNO IN(SELECT CNOFROM CourseWHERE CNAME IN('数据库','信息系统')))5.查询每门课程的间接先修课程(即先修课程的先修课),输出课程和间接先修课程的课程号及学分。
SELECT O,S1.CREDIT,S2.CPNOFROM Course S1,Course S2WHERE O=O;SELECT S2.CPNO,S2.CREDITFROM Course S1,Course S2WHERE S2.CPNO=O二、P130:5 (1),(4),(6)(2种方法),(7),(9),(10),(11)(1)SELECT SNAME,CITYFROM S(4)SELECT P.PNAME,QTYFROM SPJ,PWHERE SPJ.PNO=P.PNO AND SPJ.JNO=’J2’(6)SELECT JNAMEFROM S,SPJ,JWHERE S.NO=SPJ.SNO AND S.CITY=’上海’ AND SPJ.JNO=P.JNOSELECT JNAMEFROM SPJ,JWHERE SPJ.JNO=P.JNO AND SNO IN(SELECT SNOFROM SWHERE CITY=’上海’)(7)SELECT JNOFROM S,SPJWHERE S.NO=SPJ.NO AND S.CITY NOT IN(‘天津’) (9)UPDATE SPJSET SNO=’S3’WHERE JNO=’J4’ AND PNO=’P6’ AND SNO=’S5’(10)DELETEFROM SWHERE SNO=’S2’ ;DELETEFROM SPJWHERE SNO=’S2’(11)INSERTINTO SPJVALUES(‘S2’,’J6’,’P4’,’200’)三、预习1.视图(1)视图与基表的区别与联系答:区别:视图是一个虚表,数据库中只存放视图的定义,而不存放视图对应的数据,这些数据存放在对应的基本表中;而基本表真实存在,数据存在其中。
东大14秋学期《数据库技术》在线作业2答案

D.独立于DBMS
?
正确答案:A
B. ON DELETE CASCADE
?
正确答案:B
3.在数据库的三级模式结构中,内模式有
A. 0个
B. 2个
C. 1个
D.任意多个
?
正确答案:C
4. SQL Server的中的文件位置可以很灵活,可以将数据文件存储在不同的地方,然后把他们作为一个单元来管理,完成这种功能的是。
A.事务日志文件
B.文件组
?
正确答案:A
7.在标准SQL中,索引的撤消可以用
A. DROP VIEW命令
B. DROP INDEX命令
?
正确答案:B
8.在第一个事务以排他锁方式读写数据A时,其他事务对数据A可以是
A.实现排他锁的读
B.读写等待
?
正确答案:B
9. DB是
A.数据库
B.数据库管理系统
C.数据处理
D.数据库系统
?
正确答案:A
A. Enterprise Manager
B. Profiler
?
正确答案:B
16.在DB技术中“脏数据”是指
A.未回退的数据
B.未提交随后又被撤消的数据
?
正确答案:B
17.利用日志文件恢复事务时,对尚未结束的事务,应
A.进行UNDO处理
B.进行REDO处理
?
正确答案:A
18.用树形结构表示记录与记录之间的联系的数据模型是
C.
D.
?
正确答案:B
5.现要查找缺少学习成绩(G)的学生学号(S#)和课程号(C#),相应的SQL语句是SELECT S#.C# FROM SC WHERE ( )
数据库设计 大作业 2

数据库设计大作业 2## 简介本文对公司的数据库设计进行了详细的介绍,旨在为管理者提供一个有效的数据库应用程序,以管理企业的销售、经营和市场推广信息,并提供在线支持管理功能。
本文首先详细阐述了数据库系统的总体架构,包括系统模块,模块之间的联系,数据库对象和数据访问以及安全访问控制等内容;其次,介绍了数据库中模型定义的各种数据元素;最后,介绍了本系统的文档支持。
总之,本文给出的数据库设计可满足企业的访问需求,提供有效的管理系统,有助于提升企业的效果管理和发展。
## 信息系统总体架构数据库系统架构以企业主要业务模块划分,包括销售管理、经营管理、市场推广以及在线支持等模块,模块之间存在层次关系,需要建立良好的数据管理与访问系统,以便有效协调各模块关系,实现统一的数据管理体系。
数据库对象和数据访问的构建,主要采用Relational Database ManagementSystem(RDBMS)的基本结构和特性,如MySQL等,利用其基本特性实现数据管理、访问和维护的功能,以保证数据的安全、一致性和可靠性。
安全访问控制将通过不同业务模块进行控制,以确保企业的数据安全,并为客户提供可信赖的数据。
## 模型定义数据元素模型定义根据企业业务模块划分,每模块定义相应的数据元素。
销售管理模块需要定义关于销售订单、商品以及物流状态等数据,以捕获企业的销售信息;市场推广模块需要定义关于促销活动、客户满意度和优惠活动等数据,以更好地分析企业市场推广信息;在线支持模块需要定义关于问题反馈、技术指导和客户信息等数据,以更好地管理企业的在线支持信息。
## 文档支持系统为了保证数据库的正常运行,企业需要建立一套文档安全支持系统,包括数据库定义、维护和操作的细则、用户权限的定义和安全访问的控制、数据的备份、恢复和安全存储等内容。
其中用户权限的定义及安全访问控制非常重要,需要将用户访问权限限定在自己负责的部门范围内,访问越权需要经过专业人员审核,以确保数据库安全操作。
数据库实验二作业及答案

数据库实验二作业及答案实验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。
南开24秋学期《数据库技术与程序设计》作业参考二

24秋学期《数据库技术与程序设计》作业参考1.某数据库表的结构中含有年龄字段,选择下列哪种类型最合适()。
选项A:整型选项B:长整型选项C:日期型选项D:字节型参考答案:D2.某一学校规定学生宿舍标准是:本科生4人一间,硕士生是2人一间,博士生是1人一间,学生与宿舍之间形成的住宿关系是( )。
选项A:一对一的联系选项B:一对四的联系选项C:一对多的联系选项D:多对多的联系参考答案:C3.关于创建索引文件,以下说法错误的是()。
选项A:应该为所有表的所有字段创建索引选项B:数据库的数据量大的时候,能大大加快数据的检索速度选项C:当数据量不大的时候,创建索引是毫无意义的选项D:当数据进行增、删、改操作时,索引会降低这些操作的速度参考答案:A4.VBA中用实际参数a和b调用过程f(m,n)的正确形式是___。
选项A:f a, b选项B:Call f(a, b)选项C:Call f(m, n)选项D:Call f m, n参考答案:B5.可以计算当前日期所处年份的表达式是___。
选项A:Day(Date)选项B:Year(Date)选项C:Year(Day(Date))选项D:Day(Year(Date))参考答案:B6.Sub过程和Function过程最根本的区别是___。
选项A:Sub过程可以使用Call语句或直接使用过程名,而Function 过程不能选项B:两种过程参数的传递方式不同选项C:Sub过程的过程名不能返回值,而Function过程能通过过程名返回值选项D:Function过程可以有参数,Sub过程不能有参数参考答案:C7.下列横线中填入哪个函数可以使得D的值为2016-2-25:D=___(“February 25,2016”)选项A:Date选项B:DateValue选项C:Time选项D:Now参考答案:B8.数据库系统的核心是()。
选项A:数据模型选项B:数据库管理员选项C:数据库选项D:数据库管理系统参考答案:D9.以下SQL语句和其他三条执行结果不一样的是()。
南开24年秋季《数据库应用系统设计》作业参考二

24秋学期《数据库应用系统设计》作业参考1.在R(U)中,如果Y函数依赖于X,并且存在X的一个真子集X',使得Y函数依赖于X',则Y是X的()选项A:部分函数依赖选项B:完全函数依赖选项C:非平凡函数依赖选项D:平凡函数依赖参考答案:A2.( )是指数据以何种组织形式进行存储,例如是顺序存储、链式存储还是哈希存储。
选项A:存储模式选项B:外模式选项C:概念模式选项D:模式参考答案:A3.在数据管理技术的三个发展阶段中,数据冗余度最小、数据共享度最高的是()阶段选项A:文件系统选项B:数据库选项C:人工管理选项D:数据库管理系统参考答案:B4.在数据库管理系统中,通过()语言来定义模式、子模式和内模式选项A:数据定义选项B:数据操纵选项C:数据控制选项D:数据管理参考答案:A5.要查看数据库参数设置在应用程序中的代码表示形式,应选择DatabaseProfile Setup对话框中的()标签选项A:Connection选项B:Transaction选项C:Syntax选项D:Preview参考答案:D6.数据库应用系统维护阶段最主要的工作是()选项A:应用程序维护选项B:数据维护选项C:编码维护选项D:硬件设备维护参考答案:A7.关系模型中,实体完整性是指( )。
选项A:实体不允许是空实体选项B:实体的主码不允许是空值选项C:实体的外键值不允许是空值选项D:实体的属性值不能是空值参考答案:B8.多个事务并发执行时,一个事务的执行不应影响其他事务的执行,该特性称为事务的( )。
选项A:原子性选项B:一致性选项C:隔离性选项D:持久性参考答案:C9.DBMS是指( )。
数据库系统概论形成性考核册第2次作业答案

数据库系统概论作业2答案1、答:CREATE TABLE Movie(Title CHAR(30),Year INT,Length INT);CREATE TABLE Actor(Name CHAR(20),Address V ARCHAR(30),Gender CHAR(1),Birthdate DATE);CREATE Acts(MovieTitle CHAR(30),MovieYear INT,ActorName CHAR(20));2、答:1)SELECT A VG(Length),MIN(Length)FROM MovieWHERE Year=1999;2)SELECT ActorNameFROM ActsWHERE MovieYear=1999;3)SELECT M1.Title,M1.Year,M2.YearFROM Movie AS M1,Movie AS M2WHERE M1.Title=M2.Title AND M1.Year<M2.Year; 4)INSERT INTO Actor(Name,Gender)V ALUES(‘秀兰·邓波儿’,’F’);5)UPDATE Movie SET Length=109WHERE Title=’我的世界’;6)DELETE FROM MovieWHERE Year<1940;DELETE FROM ActsWHERE MovieYear<1940;3、答:ALTER TABLE MovieADD MovieDirector CHAR(20);4、答:1)SELECT Cno,CnameFROM CourseWHERE Teacher LIKE ‘刘%’;2)SELECT Sno,SnameFROM StudentWHERE Sage<22 AND Ssex=’F’;3)SELECT SnameFROM Student,SC,CourseWHERE Student.Sno=SC.Sno AND o=o AND Teacher LIKE ‘刘%’;4)SELECT SnameFROM Student,SC,CourseWHERE Student.Sno=SC.Sno AND o=o AND Cname=’程序设计’ AND Grade>90;5)SELECt SnameFROM StudentWHERE NOT EXISTS( SELECT *FROM SCWHERE Sno=Student.Sno AND Cno=’C3’);6)SELECT X.SnoFROM SC AS X,SC AS YWHERE X.Sno=Y.Sno AND o=’C1’ AND o=’C2’;5、答:1)SELECT Cno,A VG(Grade)FROM SC,CourseWHERE o=o AND Teacher LIKE ‘孙%’GROUP BY Cno;2)SELECT Cno,COUNT(*)FROM SCGROUP BY CnoORDER BY COUNT(*) DESC,Cno;6、答:1)INSERT INTO StudentV ALUES(990012,’梅立松’,20,’女’);2)DELETE FROM SCWHERE Sno IN( SELECT SnoFROM StudentWHERE Sname=’夏秋雨’);3)UPDATE SC SET Grade=1.1*GradeWHERE Cno IN( SELECT CnoFROM CourseWHERE Cname=’英语’);7、答:1)CREATE VIEW Myear ASSELECT *FROM movieWHERE Year>=1990 AND Year<=1999;2)SELECT Title,actorNameFROM Myear,ActsWHERE Acts.MovieTitle= Myear. Title AND Length>120;8、答:1)πStudentNameσCourse.CourseName=’数据库原理’ AND StudentCourse.Score>90Student StudentCourse2)a)σCourse.CourseName=’数据库原理’ AND StudentCourse.Score>90σCourse.CourseName=’数据库原理’和σStudentCourse.Score>90b)σCourseName=’数据库原理’Coursec)σScore>90StudentCourse3)原始语法树:πStudentNameσCourse.CourseName=’数据库原理’ AND StudentCourse.Score>90σStudent.StudentNo=StudentCourse.StudentNo ANDCourse.CourseNo=StudentCourse.CourseNo╳╳CourseStudent StudentCourse优化语法树(Student简写为S,Course简写为C)πSNameσS.SNo=SC.SNo╳πS.SNo,SName πSC.SNoS σo=o╳πSC.SNo,o πoσScore>90 σCName=’数据库原理’SC C9、答:事务T1可以分解为以下三个操作:1.读B2.运算B*23.运算结果写入A事务T2可以分解为以下三个操作:1.读A2.运算A+13.运算结果写入B两个事物的并发实际上就是以上两个事务中的六个操作的排列,因此有6!种调度方法,但不是每一种调度方法都有实际意义,例如:运算B*2的操作排列在读B的操作之前就没有意义。
南开24秋学期《数据库基础与应用》作业参考二

24秋学期《数据库基础与应用》作业参考1.当关系模式R(A,B)已属于3NF,下列说法正确的是()选项A:一定消除了插入和删除异常选项B:仍存在一定的插入和删除异常选项C:一定属于BCNF选项D:A和C都是参考答案:B2.在数据仓库中,“数据的数据”是指()选项A:元数据选项B:粒度选项C:维度选项D:样本数据参考答案:A3.设计性能较优的关系模式称为规范化,规范化主要的理论依据是()选项A:关系规范化理论选项B:关系运算理论选项C:关系代数理论选项D:数理逻辑参考答案:A4.关系运算中花费时间可能最长的运算是()选项A:投影选项B:选择选项C:笛卡尔积选项D:除参考答案:C5.在数据库设计中,在概念设计阶段可用E-R方法,其设计出的图称为()选项A:实物示意图选项B:实用概念图选项C:实体表示图选项D:实体联系图参考答案:D6.在SQL语言中,模式对应于()选项A:视图和部分基本表选项B:基本表选项C:存储文件选项D:物理磁盘参考答案:B7.规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常和( )选项A:数据的不一致性选项B:结构不合理选项C:冗余度大选项D:数据丢失参考答案:C8.在数据库系统中,数据库管理系统(DBMS)和操作系统(OS)的关系是()选项A:相互调用选项B:DBMS调用OS选项C:OS调用DBMS选项D:并发运行参考答案:B9.数据库并发操作可能带来的问题包括()选项A:丢失更新选项B:数据独立性会提高选项C:非法用户的使用选项D:增加数据冗余度参考答案:A。
数据库管理与应用作业二答案

《数据库管理与应用》练习2答案一、选择题二、填空题1.对于非规范化的模式,经过________①转变为1NF,将1NF经过________②转变为2NF,将2NF经过________③转变为3NF。
2.在一个关系R中,若每个数据项都是不可再分割的,那么R一定属于_________。
3.若关系为1NF,且它的每一非主属性都_____候选关键字,则该关系为2NF。
4.若关系为2NF,且它的每一非主属性都_____候选关键字,则该关系为3NF。
5.在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的依赖关系和____。
《数据库管理与应用》练习2答案二、填空题1、答案:①使属性域变为简单域②消除非主属性对主关键字的部分依赖③消除非主属性对主关键字的传递依赖2、答案:1NF3、答案:不部分函数依赖于4、答案:不传递函数依赖于5、答案:无损连接福建师大网络教育学院《数据库管理与应用》练习2一、选择题1.关系模型中,一个关键字是____。
A.可由多个任意属性组成B.至多由一个属性组成C.可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成D.以上都不是2.在一个关系中如果有这样一个属性存在,它的值能惟一地标识关系中的每一个元组,称这个属性为____。
A.关键字B.数据项C.主属性D.主属性值3.同一个关系模型的任两个元组值____。
A.不能全同 B.可全同 C.必须全同 D.以上都不是4.在通常情况下,下面的关系中不可以作为关系数据库的关系是____。
A.R1(学生号,学生名,性别)B.R2(学生号,学生名,班级号)C.R3(学生号,学生名,宿舍号)D.R4(学生号,学生名,简历)。
5.一个关系数据库文件中的各条记录____。
A.前后顺序不能任意颠倒,一定要按照输入的顺序排列B.前后顺序可以任意颠倒,不影响库中的数据关系C.前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果就可能不同D.前后顺序不能任意颠倒,一定要按照关键字段值的顺序排列6.关系数据库用_____来表示实体之间的联系。
数据库原理第二次大作业

3.作业2——用SQL语句建库建表、增删改查数据、创建视图任务:1)根据关系规范化的要求,在第一部分得到的图书管理系统关系模式需要进行规范化吗?如果需要,请写出写出符合3NF的关系模式。
2)在得到3NF的图书管理系统关系模式的基础上,将每个关系转换为SQL Server支持的表结构,用表格形式表示出表结构。
类型表列名类型约束类型名NChar(10)Pk借阅期限Tinyint Not null图书表列名类型约束ISBN Char(20)Pk书名Nchar(10)Not null作者Nchar(4)Not null出版社Nchar(10)Not null出版时间Datetime单价Money Not null类型名NChar(10)FK references类型表(类型名)状态NChar(2)检查约束管理员表列名类型约束管理员名Nchar(4)Pk性别Nchar(1)检查约束口令Nchar(10)Not null部门表列名类型约束部门名Nchar(10)PK电话char(11)Not null教师表列名类型约束教师工号Char(10)Pk姓名Nchar(4)Not null性别Nchar(1)检查约束Email char(20)Not null部门名Nchar(10)FK references 部门表(部门名)借还表列名类型约束借还业务编号Int PKISBN Char(20)FK references 图书表(ISBN)教师工号Char(10)Fk references教师表(教师工号)借办代理人Nchar(4)Not null借出日期Datetime Not null还办代理人Nchar(4)归还日期Datetime催还表列名类型约束催还业务编号Int PkISBN Char(20)FK references图书表(ISBN)教师工号Char(10)FK references教师表(教师工号)办代理人Nchar(4)Not null催还日期Datetime Not null使用SQL语句,创建数据库,数据库名为BookStore,在数据库中创建表,设定表的主键约束、外键约束、检查约束、默认约束、非空约束、唯一约束。
数据库作业2答案

SQL作业:第三章:课后习题2:(1)select sno,sname from student where height>1.80(2)select cno,credit from course where semester='秋' and cno like 'CS%';(3)select sname,o,credit,grade from student s,course c,scwhere s.sno=sc.sno and o=o and o like 'CS%' and sex='男'and semester='秋'and grade is not null(4)select sname from student s,scwhere s.sno=sc.sno and cno like 'EE%' and sex='女'or:select sname from student s,scwhere s.sno=sc.sno and cno like 'EE%' and sex='女'group by s.sno,sname having count(cno)>=1(5)select sno,count(cno),avg(grade) from scwhere grade is not nullgroup by sno(6)select cno,count(sno),max(grade),min(grade),avg(grade) from scwhere grade is not nullgroup by cno(7)select s.sno,sname from student s,scwhere s.sno=sc.sno and s.sno not in(select sno from sc where grade is null)and grade is not nullgroup by s.sno,sname having min(grade)>=80(8)select sname,o,credit from student s,course c,scwhere s.sno=sc.sno and o=o and grade is null(9)select sname from student s,course c,scwhere s.sno=sc.sno and o=o and credit>=3 and grade<70or:select sname from student s,course c,scwhere s.sno=sc.sno and o=o and credit>=3group by sc.sno,sname having min(grade)<70(10)select sname,avg(grade),sum(credit) from student s,course c,scwhere s.sno=sc.sno and o=o and year(bdate) between 1974 and 1976group by sc.sno,sname习题3:delete from Studentswhere SNO LIKE '91%'delete from SCwhere SNO LIKE '91%'习题4:INSERT INTO Students(SNO,SNAME,SEX,BDATE,HEIGHT)VALUES ('9409101','何平','女','1977-03-02',1.62)INSERT INTO Students(SNO,SNAME,SEX,BDATE,HEIGHT)VALUES ('9408130','向阳','男','1976-12-11',1.75)习题5:UPDATE CoursesSET CREDIT=3,LHOUR=60WHERE CNAME='CS-221'补充题:试写出下述查询的SELECT命令1.1查c4比c16成绩好,但比c9成绩差的课程及其成绩;select course-name,gradefrom student s4,sc sc4,course cou4,student s16,sc sc16,course cou16,student s9,sc sc9,course cou9where s4.sno=sc4.sno and o=o and s4.sname='c4' and s16.sno=sc16.sno and o=o and s16.sname='c16' ands9.sno=sc9.sno and o=o and s9.sname='c9' and ando=o and o=osc4.grade>sc16.grade and sc4.grade<sc9.grade1.2查修过计算机系课程,但未修过电机系课程的学生的数量;select count(distinct sno)from sc,coursewhere o=o and cname like 'cs%' andsno not in (select sno from sc,course where o=o and cname like 'ee%')1.3 列出学生张学友不比学生李连杰成绩高的课程名及其成绩;select ame,z.grade from (select cno,grade from sc sc1,student s1where sc1.sno=s1.sno and s1.sname='张学友') as z(cno,grade), (select cno,grade from sc sc2,student s2where sc2.sno=s2.sno and s2.sname='李连杰')as l(cno,grade),course cwhere o=o and z.grade<=l.grade and o=o下面的题目要利用db2中的sample数据库employee(eid,ename,dept_id,salary);manager(eid,dept-id);sale(eid,district,sale-year,sale-month,sale-goods,sale-amount);2.寻找一个部门中,工资数额多于本部门一半人的工资数额的雇员的名字和工资和部门编号.select ename, salary, dept-idfrom employee ewhere (select count(*) from employee where dept_id=e.dept_id)/2 <=(select count(*) from employee where dept_id=e.dept_id and salary<e.salary) 3寻找职员和经理有相同名字的部门select dept_idfrom manager,employee ewhere manager.eid=employee.eid andexists (select enamefrom emplyeewhere eid!=e.eid and e.dept_id=dept.id and e.ename=ename)4找有相同职员数的部门名对select d1.dept_id, d2.dept_idfrom employee d1, employee d2where d1.dept_id>d2.dept_id and(select count(*) from emplyee where dept_id=d1.dept_id)=(select count(*) from emplyee where dept_id=d2.dept_id)5分别按年月,按区域和销售人员统计( 最大)销售额.select sum(sale-amount)from sale sgroup by distirct, sale-year,sale-month, eidhaving sum(sale-amount) >= all (select sum(sale-amount)from sale s1where s1.district=s.district and s1.sale-year=s.sale-year and s1.sale-month=s.sale-monthgroup by distirct, sale-year,sale-month, eid)附sample数据库模式employee(eid,ename,dept_id,salary);manager(eid,dept_id);sale(eid,district,sale-year,sale_month,sale-goods,sale-amount).6 用SQL命令产生如下的关系模式:供应者supplier(sno, sname, city),主键是sno部件part(pno,pname,color,weight), 主键是pno工程job(jno,jname,city),主键是jno供应数量spj(sno,pno,jno,quantity),主键是(sno pno jno)各个字段的类型自行定义,但需满足如下的约束:a part中的weight应大于100;b supplier中的city取值范围是(上海西安南京);c spj中如果quantity小于10,则删除该记录;d spj中的sno、pno、jno分别和supplier.sno、part.pno、job.jno相关联,并且如果supplier、part或job中的记录被删除,则spj的相关记录也被删除。
数据库技术平时作业二

1.在SQL SERVER中,从游标中读取记录使用FETCH语句2.在客户/服务器结构的数据库中,在数据库中还可以存放程序,因为这种程序以数据库对象的形式存储在数据库中,所以称为存储过程。
存储过程可以避免在网络上传输大量无用的信息或原始数据,只需要传输调用存储过程的指令和数据库服务器返回的处理结果;把完成某一数据库处理的功能设计为存储过程,则可以在各个程序中反复调用,从而减轻程序的编写工作量;可以利用存储过程间接实现一些安全控制功能。
在存储过程中不可以使用创建数据库对象的语句(数据定义语言,如CREATE TABLE等各种CREATE 语句)3.触发器是一类特殊的存储过程,它在满足某个特定条件时自动触发执行。
分为DML(数据操作语言)触发器、DDL(数据定义语言)触发器和LOGIN触发器。
4.DML触发器分为插入触发器、删除触发器和更新触发器三类。
触发器的三个要素:表、触发的事件、采取的动作。
5.当在某些表上发生数据操作时可以及时在线提示或发送电子邮件给用户,以引起用户的关注;触发器可以通过级联的方式对相关的表进行修改。
例如,对父表的修改,可以引起对子孙表的一系列修改,从而保证数据的一致性和完整性(简单的可以通过参照完整性的级联功能完成);触发器可以禁止或撤消违反数据完整性的修改(一般可以用参照完整性约束完成);触发器可以强制定义比CHECK约束更加复杂的约束,特别是跨表的约束则只能使用触发器来实现。
6.安全性措施的层次:物理层、人员层、操作系统层、网络层、数据库系统层。
7.数据库管理系统的身份识别的3个层次:系统登录、数据库访问、数据操作。
8.数据库用户的分类:系统管理员用户、数据库管理员用户、数据库对象用户、一般用户。
9.事务(Transaction)是数据库应用的基本性质之一,是管理数据库运作的一个逻辑单位。
多个用户的应用要同时正确运行,需要用事务来控制(并发控制);为了保证不丢失数据,也需要事务来控制(恢复控制)。
Oracle数据库-作业2-答案

Oracle数据库-作业2-答案第二次书面作业答案(作业在2013.5.15之前交,使用学院统一的作业封面,题目可以打印,答题内容必须手写)一、填空题1.PL/SQL程序块主要包括3个主要部分:声明部分、执行部分和异常处理部分。
2.使用显式游标主要包括4个步骤:声明游标、打开游标、提取数据、关闭游标。
3.在PL/SQL中,如果SELECT语句没有返回任何记录,则会引发NO_DATA_FOUND 异常。
4.查看操作在数据表中所影响的行数,可通过游标的%ROWCOUNT 属性实现。
5.在下面程序的空白处填写适当的代码,使该函数可以获取指定编号的员工薪金。
CREATE OR REPLACE FUNCTION get_sal(P_ID varchar2) return number isv_sal number;beginselect sal into v_sal from emp where empno= P_ID ;returen v_sal;exceptionwhen no_data_found thendbms_output.put_line('无法找到该编号的员工!');when others thendDms_output.put_line('发生其他错误!');end get_sal;6.ROWID实际上保存的是记录的物理地址,因此通过ROWID 来访问记录可以获得最快的访问速度。
7.完成下面的语句,使其可以为EMPLOYEES表的EMPNO列添加一个名为PK_EMPNO的主键约束。
ALTER TABLE EMPLOYEES ADD CONSTRAINT PK_EMPNOPRIMARY KEY EMPNO ;8.B树索引可以是惟一的或者不惟一的,惟一的B树索引可以保证索引列上不会有重复的值。
9.Oracle数据库提供的对表或索引的分区方法有5种,分别为:范围分区、散列分区、列表分区、组合范围散列分区和组合范围列表分区。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据库技术与管理》上机实验报告
班级:工程管理1101班
姓名:
学号:
实验报告一
absent char(4),--缺勤类型
absent char(20) --缺勤理由
)
第二步:保存建好的表
可以通过SELECT语句查看建好的表
第三部:按照上述步骤,建立其他的表
create table qqxl
(
sab char(4) primary key,--缺勤类型(主键)
sname char (8) not null,--缺勤名称
absent char(20) --缺勤描述
)
实验结果
表1.
表2.
表3.
表4.
图1.
图2.
实验报告二
在Data上点击鼠标右键,选择新建数据库
数据库中数据文件的设置
数据库中事务日志的设置
(2) 使用SQL语句创建数据库
CREATE DATABASE YGKQnew
ON
(NAME=YGKQnew_data,
FILENAME='C:\Program Files\SQL Server\MSSQL\Data\YGKQnew_data.mdf ', /*此处的文件位置参考企业管理器创建数据库时默认的文件位置*/
SIZE=10MB,
MAXSIZE=50MB,
FILEGROWTH=5%
)
LOG ON
(NAME=YGKQ_log,
FILENAME=' C:\Program Files\SQL Server\MSSQL\Data\YGKQnew_log.ldf ', /*此处的文件位置参考企业管理器创建数据库时默认的文件位置*/
SIZE=2MB,
MAXSIZE=5MB,
FILEGROWTH=1MB
)
2.在企业管理器删除数据库和数据表
3.在企业管理器中分别创建表JBQK和QQLX。
3.在查询分析器中创建数据库和数据表
(1)用T-SQL语句创建数据库YGKQ。
第一步:打开事件分析器,输入SQL语句
CREATE TABLE JBQK
(
员工号char(4) PRIMARY KEY, --员工号(主键) 姓名char(8) NOT NULL, --姓名
缺勤时间datetime(8), --缺勤时间
缺勤天数int(4), --缺勤天数
缺勤类型char(4), --缺勤类型
缺勤理由char(20), --缺勤理由
)
CREATE TABLE QQLX
(
缺勤类型int(4), --缺勤类型(主键) 缺勤名称char(4), --缺勤名称
缺勤描述char(20), --缺勤描述
)
点击F5运行SQL语句
实验报告三
自己随意编写员工情况,对数据库YGKQ中的各表进行数据的插入、修改和删除至少各5条记录。
插入
删除
INSERT INTO YGKQ
VALUES('006','李平','2012-11-22',2 ,’3’,'旷工’)
实验报告四
(4)求各缺勤类别的人数。
(5)将各职工的考勤情况按缺勤天数由高到低排序。
3. 尝试将教材中的作业在计算机上完成
需要先建立与作业相对应的数据库(或表),然后进行数据的插入,最后才能执行查询命令。
实验结果实验四
1.
(1)
SELECT ID,Name,Day
FROM JBQK
(2)
Select Name,Day
FROM JBQK
WHERE ID=’001’
(3)
Select ID,Result
FROM JBQK
WHERE Name like ‘李%’
(4)
Select ID
FROM JBQK
WHERE Day>=2 AND Day <= 3
2
(1)
Select ID,Name
FROM JBQK
WHERE Result = ‘病假’
(2)
Select JBQK.ID,
FROM JBQK,QQLX
WHERE JBQK.Type=QQLX.Type AND JBQK.Day=2
(3)
Select COUNT(Type) AS 事假的总人数FROM JBQK
WHERE Type=’1’
(4)
Select COUNT(Result) AS 事假人数FROM JBQK
WHERE Result=’事假’
Select COUNT(Result) AS 病假人数FROM JBQK
WHERE Result=’病假’
Select COUNT(Result) AS 事假人数FROM JBQK
WHERE Result=’旷工’
(5)
Select *
FROM JBQK
ORDER BY Day DESC
3.
实验报告五
实验结果
实验五
1 CREATE VIEW V_计算机系学生(sno,sname,sex,native,birthday,dno,spno,
classno,entime)AS
SELECT sc.sno,sname,sex,native,birthday,dno,spno,classno,entime
FROM student AS st,student_course AS sc
WHERE sc.tcid=2 and sc.sno =st.sno
WITH CHECK OPTION
2
Select sno,sname,sex,native,birthday,dno,spno,classno,entime,home,tel FROM V_计算机系学生
WHERE classno=’0202’
3.
exec sp_rename ‘V_计算机系学生’,‘V_计算机系男生’
4.
5.
实验报告六
实验报告七
YGKQAmd。
2.
2. 禁止账号YGKQAmd登录,然后再进行恢复。
3. 为实验二创建的数据库YGKQ创建用户YGKQAmd,然后修改用户名为YGAmd。
4.为数据库用户YGAmd设置权限:对于数据库表JBQK和QQLX具有SELECT、INSERT、
UPDATE、DELETE权限。