SQL练习题

更新时间:2023-11-27 22:55:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

练习1

一 单选题()

1( )是位于用户和操作系统之间的一层数据管理软件。数据库在建立,使用和维护时由其统一管理,统一控制。 A DBMS(数据库管理系统) B DB(数据库) C DBS(数据库系统) D DBA(数据库管理员)

2在概念设计阶段可用E-R图,其中矩形表示实体,( )表示实体联系 A 圆形框 B 椭圆形框 C 箭头 D 菱形框 3 不同实体间可以有( )

A 只有一种联系 B 可以有多种联系 C 不能有联系 D 只有多对多联系

4 下列哪一个数据库不是SQL 2005 的系统数据库( ) A master数据库 B msdb数据库 C pubs数据库 D model数据库 5 下列四项中说法不正确的是( )

A 数据库减少了数据冗余 B 数据库中的数据可以共享 C 数据库避免了一切数据的重复 D 数据库具有较高的数据独立性

6 学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授各带若干研究生,每位研究生均只有一名导师,每个班有若干学生,每个学生选修若干课程,每门课可以由若干学生选修。请选出一下描述中符合该关系描述的描述组合( ) 1) 学校和系之间是一对多的联系 2) 班级和教研室之间是多对多的联系 3) 教员和研究室之间是多对多联系 4) 学生和选修课之间是多对一联系 5) 教研室和教员之间是一对多联系 6) 系和教研室之间是一对多联系

A 1) 2) 3) B 2) 3) 4) C 1) 2) 5) 6) D 以上均是 7 以下不是SQL数据定义语言的是( )

第 1 页 共 9 页

A CREATE B DROP C DELECT D ALTER 8 SQL语言允许使用通配符进行字符串匹配的*作,其中‘%’可以表示( ) A 零个字符 B 1个字符串 C 多个字符串 D 以上都 9 如何在已经创建好的表上添加一个外键( )

A Alter table 表名add foreign key(键名)reference 关联表(关联键名) B Alter table 表名add Primary key(键名)reference 关联表(关联键名) C Alter 表名add foreign key(键名)reference 关联键名) D Alter 表名add Primary key(键名)reference 关联表(关联键名) 10 要修改表名为Table1的字段Field1长度,原为Char(10)要求用SQL增加长 为char(20),以下语句那个正确( )

A Alter table Table1 Alter Field1 char(20) B Alter Table1 Alter column Field1 char(20) C Alter table Table1 Alter column Field1 char(20) D Alter column Field1 char(20)

11 下面聚集函数中哪个只能用于计算数值类型的数据( )

A COUNT( ) B MIN( ) C MAX( ) D SUM( ) 12 以下哪个关键字用来定义记录在某属性上的约束条件( ) A DEFAULT B DISTINCT C UNIQUE D CHECK 13 欲往表中增加一条记录,应该用哪一条SQL语句( ) A ALTER TABLE B INSERT INTO TABLE C CREATE TABLE D DROP TABLE 14 以下哪一个不是逻辑运算符( )

A NOT B AND C OR D IN

15 在创建表的过程中,哪个关键字用来定义默认值( )

A DISTINCT B UNIQUE C CHECK D DEFAULT

二 判断题()

1 默认值绑定到列上后,该列上的值将固定不能改变 ( )

第 2 页 共 9 页

2 一张表允许有多个主键,但只能有一个外键 ( ) 3 可以通过SQL语句修改数据库名称及表的名称 ( )

4 聚集函数SUM( )与AVG( )可以用来操作任何类型的数据 ( ) 5 要删除一条记录使用DROP指令( )

6 在空串处理语句中,IS NULL用来判断属性值是否为空,在此IS是关键字,不是标准的逻辑运算符( ) 7 在模糊查询中可以使用LIKE结合通配符一块儿实现,其中%代表单个字符 ( ) 8 在查询语句中,若要把记录进行降序排列应使用ORDER BY 字段名 DESC ( ) 9 在创建表的过程中,如果一属性是DATETIME类型需要指定长度 ( ) 10 在关系数据库的设计过程中,允许在设计后对表结构进行修改 ( )

三 综合题()

现在要为学校建立一个数据库,设学校的环境如下:一个系有若干个专业,每个专业一年只招一个班,每个班有若干个学生,现要建立关于系、学生、班级的数据库,关系模式为:

学生表STUDENT(学号,姓名,性别,班级,生源地,高考成绩,出生日期) 班级表CLASS(班级名,专业名,系号,入学年份) 系表 DEPARTMENT(系号,系名) 使用SQL语句完成一下功能:

1 建立表STUDENT(学号,姓名,性别,班级,生源地,高考成绩,出生日期)要求: (1)表要有主键

(2)学生的性别只能取‘男’或者‘女’ (3)学生姓名不能为空

create table student -- 学生表定义 (

学号 char(10) primary key , -- 主键为学号 姓名 varchar(20) not null , -- 姓名不能为空值 性别 char(4) default '男' , -- 性别默认为男性 班级 varchar(20),

第 3 页 共 9 页

生源地 varchar(12) , --生源地 高考成绩 int, 出生日期 datetime ,

check((性别= '男') or (性别= '女')) -- 性别必须为男性或女性 )

2 在student表中插入一条记录:(学号:8101,姓名:张三,性别:男,生源地:山东) insert into student(学号,姓名,性别,生源地) values('8101','张三','男','山东') 3通过对学生信息表的查询,查询出所有学生的学号,姓名和性别 select 学号,姓名,性别 from student

4通过对学生信息表的查询,查询来自福建的学生的记录 select * from student where 生源地= '福建' 5用模糊查询出姓钱的女生记录

select * from student where 姓名like '钱%'

6在查询语句中使用聚合函数计算出所有学生总数(起别名为学生人数) select count(*) as '学生人数' from student 7更新学号为8103的这位学生的姓名为张玲

update student set 姓名= '张玲' where 学号= '8103' 8查找出学号在8101到8108的学生信息

select * from student where 学号between '8101' and '8108' 9删除姓名为李飞的学生记录

delete from student where 姓名= '李飞' 10删除数据表STUDENT drop table student

11查询高考成绩最高的前5条学生记录

Select top 5 * from student order by 高考成绩 desc

第 4 页 共 9 页

12在学生表中统计班级列表及各班级的人数

Select 班级,count(*) from student group by 班级 13在学生表中查询班级人数大于50人的班级名和班级人数

Select 班级,count(*) from student group by 班级 having count(*)>50 14查询生源地在北京、上海、甘肃、苏州、广东、陕西的学生信息

Select 学号,姓名,专业名 from 学生表,班级表 where 学生表.班级=班级表.班级名 and 高考成绩 between 90 and 100 15查询名字里含有‘莉’的学生的学号、姓名、班级、生源地、系名

select 学号,姓名,学生表.班级,生源地,系名 from 学生表,班级表,系表 where 姓名 like ‘%莉%’ and 学生表.班级=班级表.班级名 and 班级表.系号=系表.系号

练习2

一、选择题()

1.下列数据库不属于SQL Server 2005系统数据库的是( ) A.master B. model C.msdb D.AdventureWorks

2.下列窗口不属于Microsoft SQL Server Management Studio集成环境的是( ) A.已注册的服务器 B.属性 C.对象资源管理器 D.查询编辑器

3.数据文件分成主数据文件和次数据文件两种形式,其中主数据文件名称的默认后缀是( ) A.mdf B.ndf C.ldf D.dbf 4.下列语句中,不属于DDL的是( )

A.CREATE B. ALTER C. DELETE D. DROP 5.下列缩写中,是数据操纵语言的是( ) A. DDL B. DML C. DCL D. TML

6.下列数据类型中,表示可变长度字符串的是( )。 A.VARCHAR B. CHAR C. TEXT D. NCHAR

7. 数据库的第一次备份应该是( ),这种备份内容为其他备份方法提供了一个基线。

第 5 页 共 9 页

本文来源:https://www.bwwdw.com/article/a04t.html

Top