数据库应用系统设计理论复习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库应用系统设计(SQL)理论复习题
一.单项选择题
1.限制输入到一列或多列值的范围,使用( )约束。
A·CHECK B·PRIMARYKEYC·FOREIGNKEY D·UNIQUE
2.规则对象在使用上与()约束类似。
A·CHECK B.PRIMARYKEYC·FOREIGNKEY D·UNIQUE
3.选项中删除表的语句是( ).
A·DROP B·ALTERC·UPDATE D·DELETE
4.要修改表的结构,应使用SQL语言的命令( ).
A·UPDATETABLE B·MODlFY TABLEC·ALTERTABLE D·CHANGETABLE
5.下列SQL Server的语句中出现语法错误的是( ).
A·DECLARE @MyvarINT B.SELECT*FROM AAA
C·CREATEDATABASE AAA D·DELETE*FROM AAA
6.选项中关于视图的说法错误的是( ).
A·视图是一种虚拟表 B·视图中也保存有数据
C·视图也可由视图派生出来 D·视图的内容来源于一个SQL的SELECT查询
7.若Dl={al,a2,a3},D2={1,2,3},则Dl * D2集合中共有元组()个。
A·6 B·8C,9 D·l2
8.以下触发器是对[表1]进行()操作时触发。
Create Triggerabcon表l
For insert,Update,delete
As……
A·修改、更新、插入 B·插入、索引、删除C·修改、插入 D.修改、插入、删除
9.选项中查询毕业学校宅称与"清华"有关的记录应该用()。
A·SELECT*FROM学习经历 WHERE毕业学校 LIKE' *清华*'
B·SELECT*FROM学习经历 WHERE毕业学校 = ' %清华%’
C·SELECT*FROM学刀经历WHERE毕业学校LlKE'?清华?’
D·SELECT*FROM学习经历WHERE毕业学校LIKE' %清华%’
10.关系数据库中,元组的集合称为关系,能惟一标识元组的属性集的值称为( ).
A·关键字 B·字段C·索引 D.属性
11.自然联接是构成新关系的有效方法。一般当对关系R和S自然联接时,要求R和S含有一个或者多个共有的( ).
A·记录 B·行C·属性 D·元组
12.主索引可确保字段中输入值的( )性。
A·多样 B·重复C·唯一 D·安全
13.下列SQL语句中,()不是数据定义语句。
A·CREATETABLE B·DROPVIEWC·CREATEVIEW D·GRANT
14.在SELECT语句中,使用GROUPBYSNO时,SNO必须( ).
A·在WERE中出现 B·在FROM中出现C·在SELECT中出现 D·在HAVING中出现
二、判断题
1.删除表时,表中的触发器被同时删除。
2.主键字段允许为空。
3.触发器主要是通过表操作事件进行触发而被执行的。
4.在创建表时,不能指定将表放在某个文件上,只能指定将表放在某个文件组上。如果希望将某个表放在特定的文件上,那么必须通过创建文件组来实现。
5.信息和数据是相对的,有时是可以互相转换的。
6·数据库的名称一旦建立就不能重命名。
7.创建存储过程必须在企业管理器中进行。
三、填空题
1.语句 selectupper(beautiful'),ltrim(' 我心中的太阳')的执行结果是:()和()。
2.SQLServer数据库的体系结构也是三级模式结构,但术语与传统的关系模式不同,在SQLServer中,( )对应于视图、()对应于基本表、()对应于存储文件。
3.SELECTDATEADD(day,l0,'2008-12-22')输出的结果是().
4.( )是已经存储在SQLServer服务器中的一组预编译过的Transact-SQL语旬。
5.对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的( ).
6.SQLServer2O00局部变量名字必须以()开头,而全局变量名字必须以()开头。
7.SQLServer中的触发器分为两类。分别是()和().
四、简答题
1.使用游标的基本步骤有几种.
2.什么是数据完整性。
五、设计题
数据如下:
数据库名:医院数据库
医生表(医生编号,医生姓名,医生性别,出生日期,职称)
病人表(病人编号,病人姓名,病人性别,民族,身份证号)
病历表(ID,病人编号,医生编号·病历描述)
请用SQL语言实现下列功能.
1.写出创建上述三表的建库、建表代码.
要求使用:主键(医生表医生编号,病人表.病人编号)、外键(病历表.医生编号,病历表.病人编号)、非空(职称,医生姓名,病人姓名)、检查(性别),自动编号(ID)。(字段长度根据下面小题设置)
2.写出将下列医生信息添加到医生表的代码。
医生编号医生姓名性别出生日期职称
1001 陈医生女1960-5-10副主任医师
1002 李医生女1970-7-20副主任医师
1003 张医生男1980-9-30医师
修改医生编号为1002的医生职称为“主任医师”
删除医生编号为1003的医生信息
3.写出创建医疗表视图(医生编号,医生姓名,病人姓名,病历描述)的代码
4.写出所有病人编号、病人姓名、病历描述以及病人所对应的医生编号的查询语句
5.写出查询有病人的医生信息的语句
6.创建一个默认,并将其绑定到医生表的职称列上,默认值为"医师”。