2017电大数据库基础与应用考试小抄
电大数据库基础与应用
一、单项选择题,把合适的选项编号填写在括号内。(每小题2分,共20分)
1.域是实体中相应属性的( A )。
A. 取值范围
B. 值
C. 名称
D. 描述
2.把保存关系定义的关系称为对应数据库的( B )。
A. 一般关系
B. 元关系
C. 特定关系
D. 正常关系3.在一个关系R中,若存在X→Y和X→Z,则存在X→(Y,Z),称此为函数依赖的( C )规则。
A. 传递性
B. 分解性
C. 合并性
D. 增广性
4. 设一个关系为R(A,B,C,D,E,F),它的最小函数依赖集为FD={A →B,A→C,D→E,D→F},则该关系的候选码为(D )。
A. (A,B)
B. (A,C)
C. (A,E)
D. (A,D)
5.在SQL中,对基本表进行插入和修改记录的命令为( D )。
A. insert和delete
B. update和delete
C. delete和select
D. insert和update
6.Access2000数据库是( C )型数据库。
A.层状 B.网状 C.关系 D.树状
7.如果字段内容为声音文件,可将此字段定义为( C )类型。A.文本 B.查询向导 C.OLE对象 D.备注8.在建交叉表查询的过程中,最多可以选择( B )个行标题字段。
A.2 B.3 C.4 D.5
9.若要退出Microsoft Access,则应使用的操作是( C )。A.Exit B.Return C.Quit D.Revoke
10.显示包含警告信息或其他信息的消息框,应该使用的操作是( D )。
A.Echo B.Message C.Warn D.MsgBox
1.设D1,D2和D3域的基数分别为2,3和4,则D1?D2?D3的元组数为( B )。
A. 9
B. 24
C. 10
D. 20
2.若一个关系为R(学生号,姓名,性别,年龄),则( A )适合作为该关系的主码。
A. 学生号
B. 姓名
C. 性别
D. 年龄
3.设一个集合A={3,4,5,6,7},集合B={1,3,5,7,9},则A和B的并集中包含有( C )个元素。
A. 10
B. 8
C. 7
D. 6
4. 在一个关系R中,若存在X→(Y,Z),则也隐含存在X→Y和X →Z,称此为函数依赖的( B )规则。
A. 传递性
B. 分解性
C. 合并性
D. 增广性
5.在SQL的查询语句中,order by选项实现对结果表的( D )功能。
A. 分组统计
B. 求和
C. 查找
D. 排序6.Access2000数据库文件的扩展名是( D )。
A.dbf B.dbt C.mdf D.mdb
7.在下面所给的属性中,( D )属性适宜作为主关键字。A.基本工资 B.职称 C.姓名 D.身份证号码8.下列( C )图标是Access中表对象的标志。
A .
B .
C .
D .
9.Access中包含有( B )种数据类型。
A.9 B.10 C.7 D.8
10.可以通过Internet进行数据发布的对象是( D )。
A.窗体 B.报表 C.查询 D.数据访问页
1.设一个关系A具有a1个属性和a2个元组,关系B具有b1个属性和b2个元组,则关系A?B具有(B )个元组。
A. a1+b1
B. a2?b2
C. a1+b2
D. a2?b1
2.在一个关系R中,若X能够函数决定关系R中的每个属性,并且X的任何真子集都不能函数决定R中的每个属性,则称X为关系R的一个( A )。
A. 候选码
B. 外码
C. 超码
D. 属性组
4.设一个关系为R(A,B,C,D,E),它的最小函数依赖集为FD={A→B,C→D,C→E},该关系只满足第一范式,若要规范化为第二范式,则将被分解为( C )个关系。
A. 1
B. 2
C. 3
D. 4
5.由概念设计进入逻辑设计时,原来的( C )联系通常都需要转换成对应的基本表。
A. 一对一
B. 一对多
C. 多对多
D. 多对一6.ACCESS 2000数据库文件中至少包含有( A )对象。
A.表 B.查询 C.窗体 D.模块
8.下列( D )是主键的标志。
A .
B .
C .
D .9.Access中字段的“小数位”属性被用来指定( A )型数据的小数部分的位数。
A.货币和数字 B.货币和备注 C.文本和数字D.数字和备注
10.创建数据访问页,将生成一个单独的( A )文件,此文件不包括在Access2000数据库中。
A.HTML B.MDB C.MDF D.MDT 1.设一个学生关系为S(学生号,姓名),课程关系为C(课程号,课程名),选课关系为X(学生号,课程号,成绩),则至少选修了课程号为’001’或’002’课程的全部学生信息所对应的运算表达式为( C ) Π学生号(δ课程号=’001’∨课程号=’002’(X))。
A. X
B. C
C. S
D. Π学生号(S)
2. 设一个关系为R(A,B,C,D,E),它的最小函数依赖集为FD={A→B,B→C,B→D,D→E},则该关系的候选码为( A )。
A. A
B. B
C. C
D. D
3.在SQL的查询语句中,group by选项实现( D )功能。A. 排序 B. 求和 C. 查找 D. 分组统计4.设一个集合A={3,4,5,6,7},集合B={1,3,5,7,9},则A减B的差集中包含有( D )个元素。
A. 10
B. 5
C. 3
D. 2
5.在SQL中,alter table为( B )数据库中基本表结构的命令。
A. 建立
B. 修改
C. 删除
D. 查询
6.如果某一字段数据类型为文本型,字段大小为8,该字段中最
.
多可输入( B )个汉字。
A.8 B.4 C.16 D.32
7.创建表之间的关系时,正确的操作是( B )。
A.关闭当前打开的表 B.打开要建立关系的表C.关闭所有打开的表 D.关闭与之无关的表8.Access是( A )办公套件中的一个重要组成部分。A.Office B.Word C.Excel D.Lotus 9.下列( D )图标是Access中新建报表的标志。
A
.B
.C
.
D
.
10.下列( B )图标是Access中模块对象的标志。
A
. B . C . D .
9.在Access2000数据库系统中,总共包含有( D )种不同类型的数据库操作对象。
A.10 B.9 C.8 D.7
5.若一个关系的任何非主属性都不部分依赖于任何候选码,则称该关系最高达到了( B )范式。
A. 第一B.第二C.第三D.BC
6.Access数据库中的“一对多”指的是( D )。
A. 一个字段可以有许多输入项B.一个数据库可以有多个表C.一个表可以有多个记录D.一条记录可以与不同表中的多条记录相联系
7.文本型字段最多可以存放( D )个字符。
A.250 B.252 C. 254 D.255
9.Access中的字段说明用于对字段作进一步的描述,当光标处于该字段内时其字段说明被显示在( A )上。
A.状态栏B.工具栏 C. 菜单栏D.标题栏
10.Access 2000中数据访问页有两种视图,它们是设计视图和( C )视图。
A.浏览B.显示C.页面D.预览
5.在SQL中,对基本表进行插入和删除记录的命令为( A )o A.insert和delete B.update和delete C.delete和select D.insert和update
6.在SQL中,createtable为( A )数据库中基本表结构的命令o A.建立.B.修改C. 删除D.查询
7.在Access数据库中,基本数据保存在( D )对象中o
A.窗体B.查询 C. 报表D.表
8.下列( B )图标是Access中查询对象的标志。
9.在一个宏中要打开一个报表,应该使用的操作是( B )o A.OpenForm B.OpenReport C.OpenTable D.OpenQuery
10.宏的英文名称是( A )。
A.Macro B.View C.Form D.Page
三、填空题,把合适内容填在横线上。(每空1分,共30分) 6.数据库系统具有(数据结构化)、(数据共享)、数据独立性、数据粒度小、独立的
数据操作界面、由DBMS统一管理等优点。
1. 数据库处理技术依次经历了人工管理、___文件管理__、___数据库管理_、以及分布式数据库管理等四个发展阶段。、
2.关系数据模型包括____关系数据结构__、__关系完整性规则_和关系运算三个方面。
3.学生关系中的班级号属性与班级关系中的班级号主码属性相对应,则__班级号__属性为___学生___关系中的外码。
4.一个关系若存在___部分__函数依赖和___传递__函数依赖,则必然会造成数据冗余和操作异常。
5.在新版的SQL中,查询所涉及到的表及表之间的连接是在from选项中实现的,表之间的连接共有三种方式,分别称为中间连接、__左连接___和__右连接____。
6.Access中的表间关系有1对1、__1对多__和___多对多__三种。
7.一个Access数据库对应于操作系统中的__1_____个文件,其文件扩展名为__mdb ___。
8.查询可以作为___窗体___、__报表__和数据访问页的数据源。
9.报表由___报表页眉___、__页面页眉__、主体、页面页脚和报表页脚等5节组成。
10. __宏_是由一条或多条操作命令组成的集合,其中每条命令用来实现相应的功能。使用_条件表达式__可以确定按条件执行宏。
11. SQL Server 2000中的整数类型包括bigint、_int _、___smallint _和tinyint 四种。
12. SQL Server 2000主要通过__查询分析器__和__企业管理器_这两种工具来完成数据库的管理工作。
13. 当指定基本表中某一列或若干列为主码时,则系统将在这些列上自动建立一个_唯一值__、__聚集__和非空的索引。
14. 定义局部变量的语句关键字为__ DECLARE _,被定义的各变量之间必须用_逗号_字符分开。
15. 每个存储过程可以包含_多__条Transact-SQL语句,可以在过程体中的任何地方使用_RETURN __语句结束过程的执行,返回到调用语句后的位置。
三、填空题,把合适内容填在横线上。(每空1分,共30分)
13.、 14.、 15.
1.在__文件__系统中,数据没有独立的操作界面,在___数据库_系统中,数据具有独立的操作界面。
2. 关系数据库系统具有__数据结构__单一、采用_集合运算_、数据完全独立、数学理论支持等优点。
3.在数据库体系结构中,两级数据映象分别是指_外模式和模式___之间的数据映象以及__模式和内模式_之间的数据映象。
4. 设一个关系为R(A,B,C,D,E,F,G),它的最小函数依赖集为FD={A→B,C→D,B→E,E→F},则该关系的候选码为___(A,C,G)_____,该候选码含有___3___属性。
5.在SQL中,主码约束的关键字为__primary key ___,外码
.
约束的关键字为__foreign key _。
6.Access2000的用户操作界面由__标题栏_、_菜单栏_、工作区、工具栏、状态栏等五个部分组成。
7.在Access数据库系统中,定义表中的字段就是确定表的结构,即确定表中字段的_名称_、_类型_、属性和说明等内容。
8.查询可以作为____窗体___、_报表___和数据访问页的数据源。
9. Access为用户提供了多种数据库安全措施,包括设置用户__密码___和___权限__。
10.模块窗口中的代码编辑窗口由_对象列表框___、__代码编辑区__和过程事件列表框等三部分组成。
11. SQL Server 2000支持两种形式的变量,即___局部__变量和___全局__变量。
12. 在SQL Server 2000中,每个程序块的开始标记为关键字__BEGIN _,结束标记为关键字_END _。
13. 打开和关闭游标的语句关键字分别为_ OPEN ___和__CLOSE _____。
14. 建立一个存储过程的语句关键字为_ CREATE PROC _,执行一个存储过程的语句关键字为__EXEC _。
15. 在SQL Server2000中,通常不需要用户建立索引,而是通过使用_主码___约束和__唯一值_约束,由系统自动建立索引。
三、填空题,把合适内容填在横线上。(每空1分,共30分)
11.、(次序无先后) 12.、(次序无先后)
13.、 14.、(次序无先后) 15.、(密码)(次序无先后)
1.实体之间的联系类型有三种,分别为1对1、___1对多_____和__多对多_____。
2.数据库系统的三级模式结构和两级数据映象确保了数据的____逻辑___独立性和__物理___独立性。
3.在候选码中的每个属性被称为__主_属性,不在任何候选码中的每个属性被称为__非主__属性。
4. 在SQL中,单值约束的关键字为___unique____,检查约束的关键字为__check___。
5.一个数据库应用系统的开发过程大致相继经过__需求分析___、__概念设计__、逻辑设计、物理设计、机器实现、运行维护等六个阶段。
6.Access2000数据库包含有__表__ 、 ___查询__ 、窗体、报表、页、宏、模块等7种数据库对象。
7.在Access2000的表结构设计窗口中,其上半部分的“表设计器”是由___字段名称_、_数据类型_和说明等三列所组成。
8.在Access2000中,模块被分为____类模块____和_____标准模块____两种类型。
9.在Access2000中,标准模块包含的两种过程是____通用过程__和____常用过程___。
10. SQL Server2000版本一般包括企业版、__标准版__、___个人版___、开发版和评估版等。
11. SQL Server2000中的数据类型主要包括数值、__字符___、__日期时间__、二进制、位和双字节等类型。
12. 索引可以由系统根据约束条件自动建立,也可以由用户通过命令或菜单方式建立,但它的__打开、___重建_和关闭将根据需要由系统自动实现,无须用户过问。
13. 在一个存储过程定义的AS关键字前可以定义该过程的_参数_,AS关键字之后为该过程的_过程体_。
14. 索引的存在会减慢对基本表的___插入__、___删除___和修改等操作的速度。
15. 要访问SQL Server2000数据库服务器,用户必须提供正确的___登录帐号___和__口令___。
三、填空题,把合适内容填在横线上。(每空1分,共30分)
1.在文件系统中,存取数据的基本单位为__记录___,在数据库系统中,存取数据的基本单位为___数据项____。
2.数据库的逻辑数据模型依次有层次、网状、__关系___和___对象__等四种。
3.数据库体系结构中包含的三级模式为_全局模式___、__外模式___和内模式三种。
4.设一个关系为R(A,B,C,D,E),它的最小函数依赖集为FD={A →B,A→C,A→D,D→E},该关系满足__第二_范式,若要规范化为高一级的范式,则将得到__ 2______个关系。
5.在SQL中,根据基本表建立一个视图时,包括建立了该视图的__结构___和___内容__两个方面。
6.Access2000“表”结构设计窗口分为两半部分,上半部分是_表设计器_,下半部分是_字段属性__。
7.在Access2000中,“货币”型数据最长为__8__个字节,“自动编号”型数据最长为__4__个字节。
8.在Access 2000报表中有____设计__和__预览____视图,而没有数据表视图。
9.模块窗口由_____工程资源____管理器、___模块属性______窗口和代码编辑窗口三部分组成。
10.Access2000中的窗体由__页眉____、___主体__ 和页脚等三个部分组成。
11. SQL Server2000提供的最常用的管理工具是____企业管理器_____和___查询分析器____。
12. 在SQL Server2000中,前后相邻的语句之间可以使用__空格__、__分号__或回车换行符分开。
13. 在SQL Server2000中,为局部变量赋值的语句是_select___和___set________。
14. 对表中记录的维护主要有增加、___删除___和_修改___操作。
15. 数据库的安全管理问题归结为对____琐__和__钥匙______的管理问题。
二、是非判断题,若叙述正确则在题目后括号内打“√”否则打“×”(每小题2分,共20分)
1.当建立和删除一个视图时,对相应的基本表没有影响。(√)2.由概念设计进入逻辑设计时,原来的1对1或1对多联系通常都需要被转换为对应的基本表。(×)
3.概念设计也要贯彻概念单一化原则,即一个实体中的所有属性都是直接用来描述码的。(√)
4.在对象数据模型中,对象既不能够继承,也不能够嵌套。(×)5.设一个学生关系为S(学生号,姓名),课程关系为C(课程号,课程名),选课关系为X(学生号,课程号,成绩),求出所有选课的学生信息的运算表达式为 学生号(X)与S的自然连接。(√)
.
6. 索引不是一种改善数据库性能的技术。(×)
7. 声明游标语句的关键字为DECLARE CURSOR,该语句不一定带有SELECT查询子句。(×)
8. 在收回用户访问权限的语句中,所给表名选项以关键字ON开始,所给用户名选项以关键字FROM开始。(√)
9. 用于配置客户端网络连接的工具是客户端网络实用工具。(√)
10. 同聚集索引相比,非聚集索引需要更少的存储空间。(×)
二、是非判断题,若叙述正确则在题目后括号内打“√”否则打“×”(每小题2分,共20分)
( √)1.当建立和删除一个视图时,对相应的基本表没有影响。(X )2.由概念设计进入逻辑设计时,原来的1对1或1对多联系通常都需要被转换为对
应的基本表。
( √)3.概念设计也要贯彻概念单一化原则,即一个实体中的所有属性都是直接用来描述
码的。
( X )4.在对象数据模型中,对象既不能够继承,也不能够嵌套。( √)5.设一个学生关系为S(学生号,姓名),课程关系为C(课程号,课程名),选课关
( √)9.用于配置客户端网络连接的工具是客户端网络实用工具。
S的自然连接。
( √)6.SQLServer 2000中的整数类型包括bigint、int、smallint 和tinyint四种。
( X )7.SQLServer 2000不能通过查询分析器和企业管理器这两种工具来完成数据库的
管理工作。
( √)8.当指定基本表中某一列或若干列为主码时,则系统将在这些列上自动建立一
( X )10.局部变量的开始标记为@@,全局变量的开始标记为@。
个唯一值、聚集和非空的索引。
系为X (学生号,课程号,成绩),求出所有选课的学生信息的运算表达式为与
1.在文件管理阶段程序和数据在存储位置上是分开存放的。(√)
2.若一个关系的一些非主属性可能部分依赖于候选码,则称该关系达到了第二范式。×
3.在SQL中建立和删除数据库模式的命令分别为create schema和drop schema。√
4.对于较复杂的系统,概念设计阶段的主要任务是:首先根据系统的各个局部应用画出各自对应的局部ER图,然后再进行综合和整体设计,画出整体ER图。√
5.由概念设计进入逻辑设计时,原来的实体不需要转换成对应的基本表或视图。×
6.机器实现阶段的任务是在计算机系统中建立数据库模式,装入数据,并针对各种处理要求编写出相应的应用程序。√
7. 常见的SQL Server2000的版本只包括标准版、个人版、开发版和评估版。×
8. 数据库备份和恢复的Transact-SQL语句分别对应为Restore Databas和Backup Database。×
9. SQL Server 2000中引入索引主要是为了加速查询速度,并可以保证数据的惟一性。√
10. 对于记录较少的基本表,或者需要频繁更新的基本表应尽量创建索引。×
二、是非判断题,根据叙述正确与否在题目开始的括号内打对号“√”或叉号“×”(每小题2分,共20分)
(√)1.在人工管理和文件管理阶段,程序设计依赖于数据表示。
(√)2.在一个关系中,不同的列可以对应同一个域,但必须具有不同的列名。
(√)3.设一个学生关系为S(学生号,姓名),课程关系为C(课程号,课程名),选课关系为X(学生号,课程号,成绩),则姓名为变量K的值的学生所选修的全部课程信息所对应的运算表达式为C 课程号(X (δ姓名=K(S)))。
(×)4.若一个关系的任何非主属性都不部分依赖和传递依赖于任何候选码,则该关系还没有达到第三范式。
(√)5. 在SQL中,每个视图中的列可以来自不同的表,每个视图是在原有表的基础上建立的逻辑意义上的新关系。
(×)6. 在SQL Server 2000中,主数据文件、次数据文件和事务日志文件的默认扩展名依次为ldf、ndf和mdf。
(√)7. 定义为varchar数据类型的字段或变量能够自动去掉尾部空格以节省存储空间。
(×)8. 在一个已存在数据的表中增加一列时,可以把所增加的列定义为非空值。
(×)9. SQL Server2000数据库应用的处理过程只需要在服务器上进行。
(√)10. 一个局部变量的作用范围局限于一个批处理内,即两个GO语句之间的那一部分。
二、是非判断题,根据叙述正确与否在题目开始的括号内打对号“√”或叉号“×”(每小题2分,共20分)
(×)1.DBMS只提供数据定义语句,不提供数据操纵语句供用户使用。
(×)2.在一个关系R中,若X→Y,并且X的任何真子集都不能函数决定Y,则称X→Y为部分函数依赖,
(√)3.基本表属于全局模式中的表,它是实表,而视图则属于局部模式中的表,它是虚表。
(×)4.当修改一个视图时,不会对相应的基本表产生任何影响。
(√)5. 当指定基本表中某一列或若干列为UNIQUE约束时,则系统将在这些列上自动建立一个唯一值索引。
(√)6. SQL Server2000数据库应用的处理过程分布在客户机和服务器上。
(×)7. 安装SQL Server2000时,不必以系统管理员的身份登录操作系统。
(√)8. SQL Server2000的datetime或smalldatetime数据类型主要用来存储日期和时间的组合数据。
(×)9. 索引一经创建既可以由SQL Server2000系统又可以
.
由用户使用和维护。
(√)10. 触发器是一种特殊的存储过程,它可以在对一个表进行插入、删除或修改操作时被自动调用执行。
二、是非判断题,根据叙述正确与否在题目后面的括号内打对号“√”或叉号“X”。(每小题2分,共20分)
1.在文件系统中,不容易做到数据共享,而在数据库系统中,容易做到数据共享。( √)
2.在一个关系R中,若属性集X函数决定属性集Y,则记作为X →Y,称X为决定因素。( √)
3。已知“职工号→性别”成立,则“(职工号,性别)→性别”是平凡函数依赖,但不是部分函数依赖。( X )
4.在SQL中,通过使用视图,能够使在关系规范化时被分解的关系重新连接起来,能够增强数据库的安全性。( √)
5.需求分析阶段的主要目标是画出数据流图和建立数据字典,不需要编写需求说明书。( X )
6.在进行数据库应用系统调试时,要有意地使用各种不同的数据和进行各种不同的操作,去测试系统中的所有方面。( √) 7.在SQLServer2000中,不适合使用bit数据类型来表示逻辑数据。( X )
8.在SQLServer2000中,聚集索引比非聚集索引的查询速度要慢。( X )
9.在SQLServer2000中,多行注释的开始标记为(‘/*”,结束标记也为“/*”o(X )
10.每执行一次使用游标的取数、修改或删除操作的语句时,都只能对表中的单个记录进行操作。( √)
四、根据主教材第四章所给的商品库和教学库,按照下列前三小题的每条SQL查询语句写出相应的功能,或者按照下列后两小题的每种功能写出相应的SQL查询语句。在名称为商品库的数据库中包含有商品表1和商品表2,它们的定义分别为:
商品表1(商品代号 char(8),分类名 char(8),单价 float,数量int)
商品表2(商品代号 char(8),产地 char(6),品牌 char(6),) 1.从商品库中查询出每种商品的商品代号、单价、数量和产地。select 商品表1.商品代号,单价,数量,产地
from 商品表1,商品表2
where 商品表1.商品代号=商品表2.商品代号
2.select x.商品代号,分类名,数量,品牌
from 商品表1 x,商品表2 y
where x.商品代号=y.商品代号
从商品库中查询出每一种商品的商品代号、分类名、数量和品牌等信息。
3.从商品库中查询出数量大于10的商品种数。
select count(*)
from 商品表1
where 数量>10
4.从商品库中查询出比所有商品单价的平均值要高的全部商品。select *
from 商品表1
where 单价>all(select avg(单价)
from 商品表1
5.select distinct 产地
from 商品表2
从商品库中查询出所有商品的不同产地
6.从商品库中查询出数量在10和20之间的所有商品。
select *
from 商品表1
where 数量 between 10 and 20 (或where 数量>=10 and 数量<=20)
7.从商品库中查询出数量最多的一种商品。
select *
from 商品表1
where 数量=some(select max(数量)
from 商品表1
8.select distinct 品牌
from 商品表2
从商品库中查询出所有商品的不同品牌
9.从商品库中查询出每类(即分类名相同)商品的最高单价。select 分类名,max(单价) as 最高单价
from 商品表1
group by 分类名
10.从商品库中查询出同一类商品多于一种的所有分类名。select distinct 分类名
from 商品表1
group by 分类名 having count(*)>1
11.selec x.商品代号,分类名,产地,品牌
From 商品表1 x,商品表2 y
Where x.商品代号=y.商品代号 and (品牌=‘熊猫’or 品牌=‘春兰’)
从商品库中查询出品牌为熊猫或春兰的所有商品的商品代号、分类名、产地和品牌。
12.从商品库中查询出每类(即分类名相同)商品的总数量。select分类名,sum(数量) as 总数量
from 商品表1
groupby分类名
13.从商品库中查询出每种商品的总价值,并按降序排列出来。
Select *,单价*数量as总价值
from 商品表1
order by 总价值desc
在名称为教学库的数据库中包含有学生、课程和选课三个表,它们的定义分别为:
学生(学生号 char(7),姓名 char(6),性别 char(2),出生日期datetime,
专业 char(10),年级 int)
课程(课程号 char(4),课程名 char(10),课程学分 int
选课(学生号 char(7),课程号 char(4),成绩 int)
1.select distinct x.*
from 学生 x, 选课 y
where x.学生号=y.学生号
.
从教学库中查询出选修了课程的所有学生信息
2.select *
from 学生
where exists (select *
from 选课
where 学生.学生号=选课.学生号
group by 选课.学生号 having count(*)=3
从教学库中查询出同时选修了3门课程的全部学生信息
3.select x.*,课程名,课程学分,成绩
from 学生 x,课程 y,选课 z
where x.学生号=z.学生号 and y.课程号=z.课程号
order by x.学生号,z.成绩
从教学库中查询出每个学生选课的全部情况,并依次按学生号和成绩排序
4.select *
from 学生
where 学生号 in (select 学生号
from 选课
group by 学生号 having count(*)=2
从教学库中查询出选修2门课程的全部学生
5.select 课程.课程号,课程名,count(课程.课程号) as 人数
from 课程,选课
where 课程.课程号=选课.课程号
group by 课程.课程号,课程名
order by 人数
从教学库中查询出每门课程被选修的学生人数,并按所选人数的升序排列出课程号、课程名和选课人数。
6.select x.学生号,y.学生号,y.课程号
from 选课 x,选课 y
where x.学生号=@s1 and y.学生号=@s2
and x.课程号=y.课程号
从教学库中查询出学生号为@s1的学生和学生号为@s2的学生所选修的共同课程的课程号
7.select *
from 课程
where 课程号 in (select 课程号
from 选课
group by 课程号 having count(*)>5
从教学库中查询出被5个以上学生选修的全部课程
8.select 专业,count(*) as 专业人数
from 学生
group by 专业
order by 专业人数 desc
从教学库中查询出每个专业的学生人数,并按人数多少降序排列。9.select 课程号,count(课程号)as 学生人数
From 选课
Group by 课程号
从教学库中查询出每门课程被选修的学生人数
10.Select *
Form 课程
Where not exists (select *
Form 选课
Where 课程.课程号=选课.课程号
)
从教学库中查询出所有未被学生选修的课程信息。
11.Select 专业,性别,count(*) as 人数
From 学生
Group by 专业,性别
Order by 专业
从教学库中查询出每个专业每种性别的学生人数,并按专业升序排列。
五、根据下面所给的AAA数据库,写出每小题所能实现的功能。(每小题5分,共10分)
假设使用名称为AAA的数据库,它包括:
Students(学号 char(8),姓名 varchar(8),年龄 int,专业varchar(20),入学日期 DateTime)和
Score(学号 char(8),课程名 varchar(10),成绩 numeric(5,2))两张表。
1. declare @a numeric(5,2),@b numeric(5,2)
set @a=(select max(成绩) from score)
set @b=(select min(成绩) from score)
print @a-@b
求出score表中最高成绩与最低成绩的分数之差
2. create procedure xxk2
as
begin
select x.学号,x.姓名,x.专业,count(*) as 门数
from students x,score y
where x.学号=y.学号
group by x.学号,x.姓名,x.专业
end
显示出AAA库中每个学生的学号、姓名、专业等信息及选课门数1.create procedure xxk3
as
begin
select 学号,avg(成绩) as 平均成绩
from score
group by 学号
end
显示出AAA库中每个学生的平均成绩
1. declare @a char(8)
set @a='计算机'
select count(*) as 计算机专业人数
from students
where left(专业,3)=@a
从students表中统计出专业名开头为@a的值(即“计算机”)的所有学生人数
2.create procedure xxk4
.
(
@a char(8),@b varchar(10),@c numeric(5,2)
)
as
begin
update score
set 成绩=@c
where 学号=@a and 课程名=@b
end
修改score表中学号为@a的值、课程名为@b的值的学生的成绩为@c的值
1. select year(入学日期) as 入学年份,count(*) as 人数
from students
group by year(入学日期)
从Students表中分组统计出每个年份入学的学生人数。
2. declare @a numeric(5,2)
set @a=(select avg(成绩) from score)
select *
from score
where 成绩>=@a
从Score表中查询出大于等于平均成绩的所有记录。
0.select ‘学生号’,’课程号’,isnull(cast(null as char(6)),’无成绩’)
学生号课程号无成绩
0.create procedure xxk4
(
@a,char(8),@b,varchar(10),@c,numeric(5,2)
)
As
Begin
Update score
Set 成绩=@c
Where 学号=@a and 课程名=@b
End
修改score表中学号为@a的值,课程为@b的值的学生的成绩为@c的值。
0.显示出students表中所有学生记录的学号列的前四个字符Selext left (学号,4)
From students
2.create procedure xxkl
as
begin
select *
from students x,score y
where x.学号=y.学号
end
显示出AAA库中所有学生的记录信息及选课成绩。
数据库应用考试必备小抄数据库系统:由硬件系统,数据库管理系统,数据库,数据库应用程序,数据库系统相关人员等构成的人-机系统
三级模式:外模式(用户视图,用户能看到和使用的数据库)1模式(概念级数据库,用户视图最小并集)1内模式(物理级数据库,描述数据的实际存储组织,内部试图)
外模影像:当模式改变时。由DBA对各个外/模映像做改变,使外模式保持不变,应用程序是依据外模式编写,无需改变保证了数据与程序的逻辑独立性
模/内映像:唯一,义数据库全剧逻辑结构和存储结构的对应关系,存储结构改变时,模式不改,应用程序不该保证了数据与程序的物理独立性。
C/S:客户机有应用程序,速度快,功能完备,B/S:维护升级简单,响应速度慢,功能不全
数据模型三个要素数据结构、数据操作、数据完整性约束。
关系数据库设计阶段:1需求分析2概念模式设计:通过对用户需求进行综合,归纳,抽象,形成一个独立于具体DBMS的概念模式e-r用一种数据模型来实现对显示世界的抽象表达3逻辑模式设计(RDBMS)4 数据库实施5 数据库运行和维护
Master数据库记录了SQL Server系统的所有信息
Model数据库是所有用户数据库和Tempdb数据库的模板数据库Msdb数据库是代理数据库,主要用于SQL Server Agent,为其警报、任务调度和记录操作员的操作提供存储空间
Tempdb临时数据库由整个系统的所有数据库使用。它为所有的临时表、临时存储过程及其它临时操作提供存储空间
Pubs数据库: 提供一个样本数据库作为学习工具。
Northwin d数据库:提供一个样本数据库作为学习工具
SQL三部分组成,包括数据定义语言DDL、数据操作语言DML、数据控制语言DCL
存储过程是存放在服务器上的预先编译好的一组完成特定功能的Transact-SQL语句集。
使用存储过程可以减少网络数据流量。增强代码的重用性和共享性。存储过程可以被多个应用程序多次调用,实行代码的重用性和共享性。使用存储过程可以加快系统的运行速度。存储过程提高了数据的安全性。
SQL数据完整性:实体完整性、域完整性、参照完整性、用户定义完整性
使用规则,触发器,约束实现完整性控制
事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的整体。
事务的特性原子性,一致性,隔离性,持久性
.NET开发平台的特点
支持多种语言编程环境,可以开发多种应用程序,使用同一个基础类库,公共语言运行时库。
对象三要素的属性、事件和方法
应用程序创建:建立新项目,建立用户界面的对象,对象属性设置,对象事件过程及编程,保存和运行程序
引用名称空间方法:项目引用,直接引用,imports语句
错误:语法错误,运行时,逻辑
https://www.360docs.net/doc/f115588849.html,数据库访问过程:1创建sqlconnection对象,建立数据库连接接2通过sqlcommand创建sqldataa对象,建立数据库和数据集之间的桥3建立数据集dataset,通过数据库与dataset 之间的桥sqldataad,编写程序代码用于填充数据集和更新数据集4在https://www.360docs.net/doc/f115588849.html,窗体中添加控件,并设置其属性和dataset对象中的表和属性列之间的关系,应用程序针对dataset进行数据检索和数据更新操作
数据库访问方法:通过sqlcommand直接访问2通过数据绑定3通过dataadapter和dataset对象进行
Private sub form1_load(…)handles mybvase.load
Dim myconn as sqlconnection=new sqlconnection(“data source=local;integrated security=sspi;initial catalog=tjdb”)
.
Dim mycmd as new sqlcommand
Mycmd.connection=myconn
https://www.360docs.net/doc/f115588849.html,mandtext=”select * from s…”
Dim myadapter as sqldataadapter=new sqldataadapter(mycmd)
Dim mydataset as new dataset
Myadapter.fill(mydataset,”s”)
Me.datagrid1.datasource=mydataset.tables(“s”)
End sub
Private sub form1_load()handles mybase.load
Dim sum as integer=0
Dim count as integer=0
Dim mysql as string =”select * from sc”
Dim myconnstr as string+”initial catalog=学生选课;data source=local;intergrated security=sspi;”
Dim myconn as new sqlclient.sqlconnetion(myconnstr)
Dim mycomm as sqlclient.sqlcommand=new sqlclient.sqlcommand(mysql,myconn)
Myconn.open()
Dim mydatareader as sqlclient.sqldatareader Mydatareader=mycomm.executereader()
Do while mydatareader.read()
Sum=sum+mydatareader.item(2)
Count=count+1 Loop Mydatareader.close() Myconn.close)
Sum=sum/count Msgbox(sum) End sub
数据库系统:由硬件系统,数据库管理系统,数据库,数据库应用程序,数据库系统相关人员等构成的人-机系统
三级模式:外模式(用户视图,用户能看到和使用的数据库)1模式(概念级数据库,用户视图最小并集)1内模式(物理级数据库,描述数据的实际存储组织,内部试图)
外模影像:当模式改变时。由DBA对各个外/模映像做改变,使外模式保持不变,应用程序是依据外模式编写,无需改变保证了数据与程序的逻辑独立性
模/内映像:唯一,义数据库全剧逻辑结构和存储结构的对应关系,存储结构改变时,模式不改,应用程序不该保证了数据与程序的物理独立性。
C/S:客户机有应用程序,速度快,功能完备,B/S:维护升级简单,响应速度慢,功能不全
数据模型三个要素数据结构、数据操作、数据完整性约束。
关系数据库设计阶段:1需求分析2概念模式设计:通过对用户需求进行综合,归纳,抽象,形成一个独立于具体DBMS的概念模式e-r用一种数据模型来实现对显示世界的抽象表达3逻辑模式设计(RDBMS)4 数据库实施5 数据库运行和维护
Master数据库记录了SQL Server系统的所有信息
Model数据库是所有用户数据库和Tempdb数据库的模板数据库Msdb数据库是代理数据库,主要用于SQL Server Agent,为其警报、任务调度和记录操作员的操作提供存储空间
Tempdb临时数据库由整个系统的所有数据库使用。它为所有的临时表、临时存储过程及其它临时操作提供存储空间
Pubs数据库: 提供一个样本数据库作为学习工具。
Northwin d数据库:提供一个样本数据库作为学习工具
SQL三部分组成,包括数据定义语言DDL、数据操作语言DML、数据控制语言DCL
存储过程是存放在服务器上的预先编译好的一组完成特定功能的Transact-SQL语句集。
使用存储过程可以减少网络数据流量。增强代码的重用性和共享性。存储过程可以被多个应用程序多次调用,实行代码的重用性和共享性。使用存储过程可以加快系统的运行速度。存储过程提高了数据的安全性。
SQL数据完整性:实体完整性、域完整性、参照完整性、用户定义完整性
使用规则,触发器,约束实现完整性控制
事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的整体。
事务的特性原子性,一致性,隔离性,持久性
.NET开发平台的特点
支持多种语言编程环境,可以开发多种应用程序,使用同一个基础类库,公共语言运行时库。
对象三要素的属性、事件和方法
应用程序创建:建立新项目,建立用户界面的对象,对象属性设置,对象事件过程及编程,保存和运行程序
引用名称空间方法:项目引用,直接引用,imports语句
错误:语法错误,运行时,逻辑
https://www.360docs.net/doc/f115588849.html,数据库访问过程:1创建sqlconnection对象,建立数据库连接接2通过sqlcommand创建sqldataa对象,建立数据库和数据集之间的桥3建立数据集dataset,通过数据库与dataset 之间的桥sqldataad,编写程序代码用于填充数据集和更新数据集4在https://www.360docs.net/doc/f115588849.html,窗体中添加控件,并设置其属性和dataset对象中的表和属性列之间的关系,应用程序针对dataset进行数据检索和数据更新操作
数据库访问方法:通过sqlcommand直接访问2通过数据绑定3通过dataadapter和dataset对象进行
Private sub form1_load(…)handles mybvase.load
Dim myconn as sqlconnection=new sqlconnection(“data source=local;integrated security=sspi;initial catalog=tjdb”) Dim mycmd as new sqlcommand
Mycmd.connection=myconn
https://www.360docs.net/doc/f115588849.html,mandtext=”select * from s…”
Dim myadapter as sqldataadapter=new sqldataadapter(mycmd)
Dim mydataset as new dataset
Myadapter.fill(mydataset,”s”)
Me.datagrid1.datasource=mydataset.tables(“s”)
End sub
Private sub form1_load()handles mybase.load
Dim sum as integer=0
Dim count as integer=0
Dim mysql as string =”select * from sc”
Dim myconnstr as string+”initial catalog=学生选课;data source=local;intergrated security=sspi;”
Dim myconn as new sqlclient.sqlconnetion(myconnstr)
Dim mycomm as sqlclient.sqlcommand=new sqlclient.sqlcommand(mysql,myconn)
Myconn.open()
Dim mydatareader as sqlclient.sqldatareader Mydatareader=mycomm.executereader()
Do while mydatareader.read()
Sum=sum+mydatareader.item(2)
Count=count+1 Loop Mydatareader.close() Myconn.close)
Sum=sum/count Msgbox(sum) End sub
.