T-SQL语句练习题(2)

2020-06-03 13:02

CREATE DATABASE 英才大学学生管理 create table 系

(系编号 char(4) primary key, 系名称 char(20) not null, 系主任 char(6), 班级个数 smallint, )

create table 班级

(班级编号 char(8) primary key, 班级名称 char(12) unique, 班级人数 smallint, 班长姓名 char(6), 专业 char(20),

系编号 char(4) references 系(系编号) )

create table 学生 (学号 char(6) primary key, 姓名 char(6),

性别 char(2) check(性别='男' or 性别='女'), 出生年月 datetime, 籍贯 varchar(50),

班级编号 char(8) references 班级(班级编号)

)

二、根据T-SQL语句写出执行结果

对上题所创建的表添加记录后如图所示,请详细写出下面的SQL语句的执行结果。

1、select * from 系

where 班级个数 between 14 and 17

2、select 班长姓名 from 班级

where 班级人数<26 or 专业='计算机网络技术'

3、select 姓名,系名称 from 学生,班级,系

where 学生.班级编号=班级.班级编号 and 班级.系编号=系.系编号 and 籍贯='山东'

4、select sum(班级个数) as 班级数 from 系

5、select 籍贯,count(*) as 人数 from 学生,班级

where 学生.班级编号=班级.班级编号 and 班级名称='网ZG092' group by 籍贯

三、对第一题中的表用T-SQL语句完成如下操作。 1、在班级表中查询班级人数最多的班级名称和人数。

select 班级名称,班级人数 from 班级

where 班级人数 = (select max(班级人数) from 班级) 2、查询姓王的学生的姓名和所在班级。

select 姓名,班级名称 from 学生,班级

where 学生.班级编号 = 班级.班级编号 and 姓名 like'王%' 3、在班级表中删除系部是“管理系”的记录。

delete 班级 where 系编号=(select 系编号 from 系 where 系名称='管理系') 4、显示比管理系班级人数最少的班级的人数还少的班级名称和专业。

select 班级名称,专业 from 班级

where 班级人数 < all(select 班级人数 from 班级,系

where 班级.系编号=系.系编号 and 系名称='管理系') 5、为系表创建一个触发器,实现一次最多只能删除2条记录。

create trigger tr01 on 系 for delete as

if (select count(*) from deleted )>2 begin rollback tran end

一、根据要求用T-SQL语句创建数据库和表。 创建数据库“英才大学教师管理”。

分别创建三个表,具体的表名、字段名如下:

系(系编号,系名称,系主任,教研室个数) 其中系名称字段非空 教研室(教研室编号,教研室名称,教师人数,系编号)

教师(教师编号,姓名,性别,职称,教研室编号) 其中性别字段只能为“男”或“女” 带下划线的字段为主键,表之间的外键关联参考下图,各字段的数据类型应尽量合理。

CREATE DATABASE 英才大学教师管理 create table 系

(系编号 char(4) primary key, 系名称 char(20) not null, 系主任 char(6), 教研室个数 smallint, )

create table 教研室


T-SQL语句练习题(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:皮肤科试题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: