SQL SERVER 数据库应用基础 练习题一、单项选择。(10*2=20分)1、E—R模型中的要素是( ) A、实体、键、联系 B、实体、属性、实体集 C、实体、属性、联系 D、实体、域、后选键2、关系模型中,一个码是( ) A 可以由多个任意属性组成 B 由一个或多个属性组成,其值能够唯一标识关系中的一个元组[1] C 至多由一个属性组成 D 以上都不是3、查找employee表中姓“李”的员工的姓名的语句( ) A select * from employee like name ‘李%%’ B select * from employee like name ‘_ _ 李%’ C select * from employee where name like ‘李_ _’ D select * from employee where name like ‘李%’4、删除student表的所有记录语句是( )A、DELETE student B、DROP studentC、DELETE FROM student D、DELETE * 5、在以下T-SQL语句中,使用INSERT命令添加数据,若需要添加一条数据应使用( )语句。 A、INSERT……..VALUES B、INSERT……….SELECT C、INSERT………DEFAULT D、A B C均可6、要删除学生表中的列“年龄”,数据类型[2]为Varchar(10),应该使用一下的哪条语句?( )A、ALTER TABLE student DELETE (Age varchar(10)) B、ALTER TABLE student DROP COLUMN AgeC、ALTER TABLE student DROP (Age varchar(10) D、ALTER TABLE student DELETE Age7、查看数据库的属性可以用系统存储过程[3]( )A、SP_HELP B、SP_HELPDBC、SP_HELPTEXT D、SP_DBOPTION8、为了实现某个特定任务,以一个存储单元[4]的形式存储在服务器上的一组T—SQL语句的集合,这种数据库对象指( )A、存储过程 B、视图C、数据库 D、触发器[5]9、在学生成绩表中的列score用来存放某学生某门课程的考试成绩(0-100分,没有小数),用下面哪种数据类型最节省空间?( )A、smallint B、intC、float D、decimal(3,0)10、实现数据的域完整性,可以用下面的( )约束。A、UNIQUE&NOT NULL B、CHECKC、FOREIGN KEY D、PRIMARY KEY四、综合题(50分)某学校学生成绩管理系统数据库(CJGL),学生和课程之间是多对多的联系;班级和学生是一对多的联系,一个学生可以选修多门课程,一门课程也可以由多名同学学习,假设学生实体(student)有学号(stuno)、姓名(stuname)、性别(sex)属性,课程实体(course)有课程号(couno)、课程名(couname)、开课学期(term)属性,班级实体(class)有班级号(clano)、班级名称(claname)、所属系(department)、班级人数(number)属性,请完成以下各题。1.根据以上描述,试设计出学生成绩管理系统的实体—联系(E--R)模型 (8分)2、 将上题中的E—R模型转换[6]为对应关系模型 (6分)3、完成对数据的检索(字段来源于上边第三题中你的设计)a>查询姓名为“李四”的基本情况。(4分);b>查询课程号为‘01’并且成绩小于80分的信息(4分);c>将成绩表按升序排列,并显示所有信息。(6分)d>从cjgl数据库的student表中返回前三行数据。(4分)e>查询“计算机系”学生的人数。(6分)f>查询选修了“数据库”课程的学生的学号、姓名和成绩。(6分)h>查询每位同学选修的所有课程的平均成绩。 (6分)
SQL SERVER 数据库应用基础 练习题
一、单项选择。(10*2=20分)
1、E—R模型中的要素是( )
A、实体、键、联系 B、实体、属性、实体集
C、实体、属性、联系 D、实体、域、后选键
2、关系模型中,一个码是( )
A 可以由多个任意属性组成 B 由一个或多个属性组成,其值能够唯一标识关系中的一个元组[1]
C 至多由一个属性组成 D 以上都不是
3、查找employee表中姓“李”的员工的姓名的语句( )
A select * from employee like name ‘李%%’ B select * from employee like name ‘_ _ 李%’
C select * from employee where name like ‘李_ _’ D select * from employee where name like ‘李%’
4、删除student表的所有记录语句是( )
A、DELETE student B、DROP student
C、DELETE FROM student D、DELETE *
5、在以下T-SQL语句中,使用INSERT命令添加数据,若需要添加一条数据应使用( )语句。
A、INSERT……..VALUES B、INSERT……….SELECT
C、INSERT………DEFAULT D、A B C均可
6、要删除学生表中的列“年龄”,数据类型[2]为Varchar(10),应该使用一下的哪条语句?( )
A、ALTER TABLE student DELETE (Age varchar(10)) B、ALTER TABLE student DROP COLUMN Age
C、ALTER TABLE student DROP (Age varchar(10) D、ALTER TABLE student DELETE Age
7、查看数据库的属性可以用系统存储过程[3]( )
A、SP_HELP B、SP_HELPDB
C、SP_HELPTEXT D、SP_DBOPTION
8、为了实现某个特定任务,以一个存储单元[4]的形式存储在服务器上的一组T—SQL语句的集合,这种数据库对象指( )
A、存储过程 B、视图
C、数据库 D、触发器[5]
9、在学生成绩表中的列score用来存放某学生某门课程的考试成绩(0-100分,没有小数),用下面哪种数据类型最节省空间?( )
A、smallint B、int
C、float D、decimal(3,0)
10、实现数据的域完整性,可以用下面的( )约束。
A、UNIQUE&NOT NULL B、CHECK
C、FOREIGN KEY D、PRIMARY KEY
四、综合题(50分)
某学校学生成绩管理系统数据库(CJGL),学生和课程之间是多对多的联系;班级和学生是一对多的联系,一个学生可以选修多门课程,一门课程也可以由多名同学学习,假设学生实体(student)有学号(stuno)、姓名(stuname)、性别(sex)属性,课程实体(course)有课程号(couno)、课程名(couname)、开课学期(term)属性,班级实体(class)有班级号(clano)、班级名称(claname)、所属系(department)、班级人数(number)属性,请完成以下各题。
1.根据以上描述,试设计出学生成绩管理系统的实体—联系(E--R)模型 (8分)
2、 将上题中的E—R模型转换[6]为对应关系模型 (6分)
3、完成对数据的检索(字段来源于上边第三题中你的设计)
a>查询姓名为“李四”的基本情况。(4分);
b>查询课程号为‘01’并且成绩小于80分的信息(4分);
c>将成绩表按升序排列,并显示所有信息。(6分)
d>从cjgl数据库的student表中返回前三行数据。(4分)
e>查询“计算机系”学生的人数。(6分)
f>查询选修了“数据库”课程的学生的学号、姓名和成绩。(6分)
h>查询每位同学选修的所有课程的平均成绩。 (6分)
题目解答
答案
解析
1. E-R模型中的要素是实体、属性、联系。实体表示现实世界中的对象,属性描述实体的特征,联系表示实体之间的关系。
2. 关系模型中的一个码是由一个或多个属性组成,其值能够唯一标识关系中的一个元组。
3. 查找employee表中姓“李”的员工的姓名的语句应使用LIKE操作符,且使用‘李%’来匹配姓“李”的员工。
4. 删除student表的所有记录语句是DELETE FROM student。
5. 在T-SQL语句中,使用INSERT命令添加数据,若需要添加一条数据应使用INSERT……..VALUES语句。
6. 要删除学生表中的列“年龄”,数据类型为Varchar(10),应使用ALTER TABLE student DROP COLUMN Age语句。
7. 查看数据库的属性可以用系统存储过程SP_HELPDB。
8. 为了实现某个特定任务,以一个存储单元的形式存储在服务器上的一组T—SQL语句的集合,这种数据库对象指存储过程。
9. 在学生成绩表中的列score用来存放某学生某门课程的考试成绩(0-100分,没有小数),用smallint数据类型最节省空间。
10. 实现数据的域完整性,可以用CHECK约束。
步骤 2:综合题解析
1. 设计出学生成绩管理系统的实体—联系(E--R)模型,包括学生实体、课程实体、班级实体以及它们之间的联系。
2. 将E—R模型转换为对应关系模型,包括学生表、课程表、班级表以及选课表。
3. 完成对数据的检索,包括查询姓名为“李四”的基本情况、查询课程号为‘01’并且成绩小于80分的信息、将成绩表按升序排列并显示所有信息、从cjgl数据库的student表中返回前三行数据、查询“计算机系”学生的人数、查询选修了“数据库”课程的学生的学号、姓名和成绩、查询每位同学选修的所有课程的平均成绩。