数据库练习题要点_第1页
数据库练习题要点_第2页
数据库练习题要点_第3页
数据库练习题要点_第4页
数据库练习题要点_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、填空选择类练习题、填空题1 系统自动创建的索引有_unique (唯一索弓丨)禾口 primary_ (主键索弓丨)_。2、 SQL语言支持关系数据库的三级模式结构分别是外模式 、内模式 、_ 模式。3、 主数据文件的扩展名为.mdf 。4、 主键约束是非空 和 唯一的组合。5、 数据库文件有主数据文件(.mdf)、辅助数据文件(.ndf)、 日志文件(df)。6、 SQL语言支持关系数据库的三级模式结构分别是外模式 、内模式、模式。7、 视图的查询不可以包含compute / compute by 、 order by 禾廿 into关键字。8、 数据库领域常用的数据模型有层次模式_、网状模

2、式 、关系模式 、面向对象。9、 在一个表中只能设置 _1个主键约束,可以定义 多_个唯一性约束。二、选择题1、 次数据文件用于存储不能存在主数据文件中的数据,默认扩展名为(A )。A. .ndf B . .mdfC. .log D . .dat2、关系模型中数据的逻辑结构是一张二维表,它由(A)组成。A .行和列 B .行 C .关系 D .列3、一个查询的结果成为另一个查询的条件,这种查询被称为(D )。A .连接查询B .内查询C.自查询 D .子查询4、 SELECT语句中,下列(B)子句用于对数据按照某个字段分组?(A )子句用于对分 组统计进一步设置条件。A . HAVING 子句

3、B . GROUP BY 子句C. ORDER BY 子句 D . WHERE 子句5、在SELECT语句中,下列子句用于对搜索的结果进行排序( C)。A . HAVING 子句B . GROUP BY 子句C. ORDER BY 子句 D . WHERE 子句6、修改视图时,使用( A )选项,可以对 CREATE VIEW 的文本进行加密。A . WITH ENCRYPTION B . WITH CHECK OPTIONC . VIEW .METADATA D . AS SQL 语句7、与 WHERE AGE BETWEEN 18 AND 23 完全等价的是(D )。A . WHERE A

4、GE > 18AND AGE V 23 B . WHERE AGE > = 18AND AGE V 23C . WHERE AGE > 18AND AGE V= 23 D. WHERE AGE >= 18AND AGE V= 23一、填空题1、在查询编辑器窗口输入的_.sal_ _。2、数据库领域常用的数据模型有面向对象。SQL语句,可以被保存或重新打开,SQL文件的扩展名为层次模式网状模式关系模式mdf.ndf3、数据库文件有4、主数据文件的扩展名为5、 主键约束是非空 和 唯一的组合。mdf 。df 。6、 在一个表中只能设置1_个主键约束,可以定义_多_个唯一性约

5、束。7、 视图的查询不可以包含 compute /compute by 、 order by禾廿into 关键字。8 系统自动创建的索引有unique 和 primary 。9、游标包含 _结果集_和位置两部分。二、选择题1创建视图命令是(A )。A . CREATE VIEW B. DROP VIEW C . CREATE TABLE D . CREATE RULE2、 在SELECT语句中,如果想要返回的结果集中不包含相同的行,应该使用关键字(C )。A . TOP B . AS C . DISTINCT D . JOIN3、在SELECT语句中,下列子句用于将查询结果存储在一个新表中(B

6、 )。A . SELECT 子句 B . INTO 子句 C . FROM 子句 D . WHERE 子句4、 为了对表中的各行进行快速访问,应对此表建立(C )。A .约束 B.规则 C .索引 D .视图5、通过CREATE TABLE语句或者其他方法创建了一个表后,可以使用( B )语句在表中 添加记录。A . DELETE B . INSERT C . UPDATE D . INSEATER6、( B )在定义列时,它可以为表中的指定列提供。A . FOREIGN约束(外码)B . DEFAULT 约束( 默认值)C . UNIQUE约束(唯一性)D . CHECK (域完整性)7、单

7、击【查询编辑器】窗口中的任意位置。按( A )命令,可以在全屏显示模式和常规显 示模式之间进行切换。A . Shift+Alt+E nterB . Shift +En terC . Shift+Alt D . Shift1单击【查询编辑器】窗口中的任意位置。按( A )命令,可以在全屏显示模式和常规显 示模式之间进行切换。A . Shift+Alt+E nterB . Shift +En terC . Shift+Alt D . Shift2、 在查询编辑器窗口输入的SQL语句,可以被保存或重新打开,SQL文件的扩展名为_.SQL。3、关系模型中数据的逻辑结构是一张二维表,它由()组成。A .

8、行和列B .行C .关系 D .列.4、 关系模型的完整性规则是对数据的约束。关系模型提供了三类完整性规则实体、_参照_和_ _自定义_。5、 次数据文件用于存储不能存在主数据文件中的数据,默认扩展名为(B )。A . .ndf B . .mdfC . .log D . .dat6、通常情况,SQL Server 2005主要支持 PRIMARY 约束、UNIQUE约束、CHECK约束、 DEFAULT约束、FOREIGN约束。(B)在定义列时,它可以为表中的指定列提供默认值。A . FOREIGN 约束B . DEFAULT 约束 C . UNIQUE 约束 D . CHECK7、 创建S时

9、,要求约束sex属性只能取值为男或者女,正确的命令是(B )。A . CREATE TABLE S(sex char(2),CHECK( sex in ('男',女')B . CREATE TABLE S(sex char(2),CHECK('男',女')C . CREATE TABLE SD . CREATE TABLE S( (sex char(2),sex in ('男',女')char(2),sex in ('男','女')8、通过CREATE TABLE语句或者其他方法创建了一个表

10、后,可以使用(B)语句在表中添加记录。A . DELETE B. INSERT C. UPDATE D. INSEATER9、一个查询的结果成为另一个查询的条件,这种查询被称为(D )。A .连接查询 B .内查询C.自查询 D .子查询10、 为了对表中的各行进行快速访问,应对此表建立(C )。A .约束 B .规则 C .索引 D.视图11、 SELECT语句中,下列(B)子句用于对数据按照某个字段分组?(A )子句用于对 分组统计进一步设置条件。A . HAVING 子句 B . GROUP BY 子句 C. ORDER BY 子句 D . WHERE 子句12、 在SELECT语句中,

11、下列子句用于将查询结果存储在一个新表中(B)。A. SELECT 子句 B. INTO 子句C. FROM 子句 D . WHERE 子句13、在SELECT语句中,下列子句用于对搜索的结果进行排序( C )。A . HAVING 子句 B . GROUP BY 子句 C. ORDER BY 子句 D . WHERE 子句14、 在SELECT语句中,如果想要返回的结果集中不包含相同的行,应该使用关键字(C )。A . TOP B . AS C . DISTINCT D . JOIN15、与 WHERE AGE BETWEEN 18 AND 23 完全等价的是(D )。A . WHERE AG

12、E > 18AND AGE V 23 B . WHERE AGE > = 18AND AGE V 23C . WHERE AGE > 18AND AGE V= 23 D. WHERE AGE >= 18AND AGE V= 2316、 创建视图命令是(A )。A . CREATE VIEW B . DROP VIEW C . CREATE TABLE D . CREATE RULE17、修改视图时,使用( A)选项,可以对 CREATE VIEW 的文本进行加密。A . WITH ENCRYPTION B . WITH CHECK OPTION C . VIEW _ME

13、TADATA D . AS SQL语句简答类练习题1. 数据库管理系统的构成有哪些?P2数据库系统由数据库、操作系统数据库管理系统应用系统数据库管理员和用户等组成。2. 数据模型有哪些?层次模型、网状模型、关系模型、面向对象3. 实体间的关系有哪几种?一对一、一对多、多对多4. 数据库管理经历了哪 3个阶段?1:程序管理阶段2:文件管理阶段 3:数据库系统管理阶段(人工管理、文件系统和数据库管理系统)5. 数据完整性有哪些?正确性、有效性、相容性(实体完整性约束参照完整性约束 用户自定义完整性)6. 数据库对象有哪些?至少 5个表、视图、索引、约束、触发器、默认值、用户和角色、规则、类型、函数

14、7. 数据库文件有哪 3 类? 主数据文件、辅助数据文件、日志文件8. 关系运算符有哪些? 选择、投影、连接9. 备份的方法有哪些? 完全数据库备份、数据库和事务日志备份、差异备份、数据库文件和文件组备份10. 身份验证模式有哪 2 种? Windows 验证模式、 SQL Server 验证模式表的操作:1、创建 T 表(教师基本情况表)(TNO,TN,SEX,AGE,PROF,SAL,DEPT) 分别表示教师的编号,姓名,性别,年龄,职称,工 资,系别。 TC 表(教师授课表)的结构为 TC(TNO,CNO) 分别表示教师的编号,课程编号USE exampleGOCREATE TABLE

15、t(TNO char(10) NOT NULL PRIMARY KEY,/* 教师编号字段 */ TN char(10) NULL,/* 教师姓名字段 */SEX char(2) NULL,/* 教师性别字段 */ AGE int NULL,/* 教师年龄字段 */ PROF char(20) NULL,/* 教师职称字段 */SAL int NULL,/* 教师工资字段 */ DEPT char(10) NULL,/* 教师所在系别字段 */)GOINSERT INTO t V ALUES('0001',' 张老师 ','男 ',41,'

16、;副教授 ',2200,'电力系 ') GOINSERT INTO t V ALUES('0002',' 张益琳 ','女 ',32,'讲师 ',1500,'动力系 ') GOCREATE TABLE TC(TNO char(10) NOT NULL,/* 教师编号字段 */ CNO char(10) NULL,/* 教师执教课程字段 */)GOINSERT INTO tc V ALUES('0001','C5')GO2、把所有教师的工资提高到平均工资的1.2

17、 倍。update t set sal=sal*1.23、删除张益琳教师的记录。 delete t where Tn=' 张益琳 '4. 增加一个 tel char(20) 列。 ALTER TABLE t ADD tel char(20)5. 将工资字段属性改为 float 型。 ALTER TABLE t ALTER COLUMN sal char(20)6. 删除 tel 字段。 ALTER TABLE t DROP COLUMN tel7. 将张老师的年龄改为 50 岁。 update t set age=50 where Tn=' 张老师 '8. 将张

18、老师的执教课程字段改为 C10. UPDATE tc SET cno='c10' WHERE tno IN (SELECT tno FROM t WHERE tn=' 张老师 ')9. 将 TC 表改为 TC_01 表。 exec sp_rename 'tc','tc_01'10. 将系别字段命名为 sdept. exec sp_rename 't.dept','sdept'11. 删除 TC_01 表 . drop table tc_01查询操作:必考1. 查询 xs 表中所有内容2. 查询 xs

19、 表中学号,姓名3. 查询 xs 表中专业4. 查询 xs 表中专业,过滤掉重复元组。5. 查询 xs 表中学号,姓名,并设置学号为学生学号6. 查询 xs 表中学号,姓名,出生时间,年龄7. 查询 xs 表前 3 条记录8. 查询 xs 表中学号,姓名,性别并把查询内容生成新表 xs_new9. 生成新表xs_newl,使此表的框架和 xs表相同,但表中无记录。10. 查询 xs 表中年龄在 23 岁以下的学生学号,姓名,出生日期。11. 查询 cj 表中选修了 a001 的 j001 学生学号12. 查询 xs 表中姓王的学生13. 查询 xs 表中姓王的女学生14. 查询xs表中的所有学

20、生记录,并按总学分降序排列15. 查询xs表不属于信息管理专业学生记录16. 查询选修了课程的学号,姓名,课程号,成绩xs表学号姓名性别出生时间专业总学分101王林男1988-2-3信息管理20102程明男1988-5-15信息管理20103王燕女1987-8-23信息管理20104李丽女1988-12-22网络工程24105李强男1987-4-5网络工程26cj表学号】田千口 i=r. 课程号成绩101a00189101a00298102j00160102j00270答案:1. select * from xs2. select 学号,姓名 from xs3. select 专业 from

21、xs4. select distinet 专业 from xs5. select学号 as学生学号,姓名from xs6. select学号,姓名,出生时间,datediff(year,出生时间,getdate( ) as 年龄 from xs7. select top 3 * from xs8. select 学号,姓名,性别 into xs_new from xs9. select * into xs_n ew1 from xs where 1>210. select学号,姓名,出生时间 from xs where datediff(year,出生时间,getdate( )<2

22、311. select 学号 from cj where 课程号 in( d001','j001 '12. select * from xs where 姓名 like 王 %'13. select * from xs where 姓名 like 王 % 'and 性别='女'14. select * from xs order by 总学分 desc15. select * from xs where 专业 <> '信息管理'16. select xs.学号,姓名,课程号,成绩 from xs,cj wher

23、e xs.学号=cj.学号假设有basetest数据库的如下关系Stude nt(s no,s name,ssex,sage,sdept) Sc(s no,c no,grade)Course(c no,c name,cp ni,ccredit)Use basetest5. 用 in 和 exists 分别实现下面内容1) 查询选修了高等数学的学号,成绩和课程号2) 查询选修了高等数学的学号,姓名和系别6. 用比较子查询实现查询大于平均年龄的学生信息答案:5.1) select sno,grade,cno from sc where cno in (select cno From course

24、where cname='高等数学'select sno,grade,cnofrom sc where exists(select *from coursewhere eno=o and cname='高等数学 '2) select sno,sname,sdept from student where sno in (select sno from sc where cno in (select cno from course where cname='高等数学') select sno,sname,sdeptfrom studentwhere

25、exists(select *from scwhere sno=student.sno and exists(select *From courseWhere eno=o and cname='高等数学 )6. select * from studentWhere sage>(select avg(sage) from student) select * from student where sdept!= )IS)and sage>all(select sage From studentWhere sdept= 'IS')视图的操作:必考use baset

26、est1、创建 stud_view 视图,显示学生的姓名、选修课程和成绩。 create view stud_viewasselect sname,cno,grade from sc,studentwhere sc.sno=student.sno2、创建 stud_view1 视图,可以查看平均成绩在 80 分以上的学生姓名。 create view stud_view1asselect sname from student where sno in(select sno from scgroup by sno having avg(grade)>80)3、创建 student_view

27、2 视图,可以显示课程名和选修该课程的学生人数。 create view student_view2asselect o,cname,count(sno) 人数 from sc,coursewhere o=ogroup by o,cname5、创建 depart_view 视图查看每个系的学生人数。 create view depart_viewasselect sdept,count(sno) as 人数from studentgroup by sdept6、创建 stud_view2 视图可以查看每个学生的选修课程的门数和平均成绩。 create view stud_view2assele

28、ct sno,count(sno) as 门数 ,avg(grade) as 平均成绩 from scgroup by sno7、在stud_view2视图上查询平均成绩在 80分以下的学生学号。select snofrom stud_view2where平均成绩<80触发器(考)、程序控制(考)、自定义函数、存储过程(二选一):(自定义函数)例5创建一个自定义函数,返回特定学号学生选修课程的平均成绩。USE basetestGOCREATE FUNCTION in fo_stude nt(s no nchar(8)RETURNS FLOATASBEGINDECLARE Grade FL

29、OATSET Grade=(SELECT A VG(grade)FROM scWHERE sn o=s noGROUP BY sno)RETURN GradeEND例10求5的阶乘(程序控制)DECLARE r in t,times intSET r=1SET times=1Iabel1:SET r=r *timesSET times=times+1IF times<=5GOTO label1PRINT'5 的阶乘为:'+str(r)例11求1到100的和(程序控制)DECLARE i int, sum intSET i = 0SET sum = 0WHILE i >

30、;= 0BEGINSET i = i +1IF i > 100BEGINSELECT '1 到 100 的和 ' = sumBREAKENDELSESET sum = sum + iEND例 15 返回女生信息(存储过程)IF EXISTS(SELECT name FROM sysobjects WHERE name='stu_pro' and type='p' ) DROP PROCEDURE stu_proGOCREATE PROCEDURE stu_pro ASSELECT *FROM studentWHERE ssex='

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论