1. 利用T-SQL语句,创建数据库(工资管理数据库),要求如下:
数据库初始大小:3MB;文件大小按兆字节3MB自动增长,增长限制为:15MB;
数据库日志文件初始大小:1MB;
文件大小按百分比5%自动增长,增长限制为:10MB;
设定数据库文件保存路径为D:\gzgl\,其余为默认。 create database 工资管理数据库
on
(name=工资管理数据库,
filename='D:\gzgl\工资管理数据库.mdf',
size=3mb,
maxsize=15mb,
filegrowth=3mb
)
log on
(name=工资管理数据库_log,
filename='D:\gzgl\工资管理数据库_log.ldf',
size=1mb,
maxsize=10mb,
filegrowth=5%
) 2. 利用T-SQL语句,在新建数据库中,创建以下三个表,表结构如下:
表“部门信息表”
列名 数据类型 长度 是否空值 约束
编号 Char    否 主键
名称 varChar 20 否
电话 Char 12 否 use 工资管理数据库
go
create table 部门信息表
(编号 Char(5) primary key not null,
名称 varChar(20) not null,
电话 Char(12) not null
) 表“员工信息表”
列名 数据类型 长度 是否空值 约束
编号 Char 11 否 主键
姓名 nChar 8 否
性别 nChar 1 是 [男,女]
出生日期Datetime 8 是
部门编号char 5 否 外键
电话 Char 12 否 唯一索引
注:部门编号参照’部门信息表.编号’为外键,性别默认值为“男” use 工资管理数据库
go
create table 员工信息表
(编号 Char(11) primary key not null,
姓名 nChar(8) not null,
性别 nChar(1) check(性别='男'or 性别='女') default('男') not null,
出生日期 Datetime not null,
部门编号 char(5) foreign key references 部门信息表(编号) not null,
电话 Char(12) unique not null
) 表“工资表”
列名 数据类型 长度 是否空值 约束
员工编号 Char 11 否 主键
基本工资 Decimal(6,2) 是
奖金 Decimal (6,2) 是
扣除 Decimal (6,2) 是 [0,1000]
说明:设置‘员工编号’参照“员工信息表.编号”为外键约束; use 工资管理数据库
go
create table 工资表
(员工编号 char(11) not null primary key foreign key references 员工信息表(编号),
基本工资 decimal(6,2) not null,
奖金 decimal(6,2) not null,
扣除 decimal(6,2) check(扣除>0 and 扣除<1000) not null
) 3.使用insert 语句向表中插入1条记录 insert into 部门信息表
values ('','刘华奇','')
go 4.使用update语句更新表中的数据 update 工资表 set 基本工资=基本工资*1.2
go
) 5,查找每位教师的信息
select *
from 教师信息表
go 6,查找每位学生的学号,姓名,性别,出生日期
select 学号,姓名,性别,出生日期
from 学生信息表
go 7,查找每位学生的学号,姓名,性别,年龄
select 学号,姓名,性别,'年龄'=year(getdate())-year(出生日期)
from 学生信息表
go 8,查找年龄>30的所有女生的信息, select *
from 学生信息表
where 性别='女' and year(getdate())-year(出生日期)>30
go 9. 计算教学成绩表中每位同学的期末总评=30+分数*0.7 select 学号, '期末总评'=30+分数*0.7
from 教学成绩表
go 10. 列出教学成绩表中所有学生课程的分数在70~90的学号,课程编号和分数 select 学号,课程编号,分数
from 教学成绩表
where 课程编号='' and 分数>=70 and 分数<=90
go 11. 查询学生信息表中籍贯中包含‘山’字符的同学信息 select *
from 学生信息表
where 籍贯 like '%山%'
go ① 查询 yiqi_product 表中 cid 为 16 且 名称中含有 钢结构的信息 SELECT * FROM `yiqi_product` WHERE cid = '116' and name LIKE '%钢结构%' 12、利用T-SQL语句,将员工编号为的员工姓名改为“张三丰”。
update 员工信息表 set 姓名='张三丰'
where 编号=''
go 13、利用T-SQL语句,将工资表中基本工资〈,奖金<2000的扣除项改为.
update 工资表 set 扣除 =1000
where 基本工资<3000 and 奖金<2000
go 14、利用T-SQL语句,删除员工信息表中部门编号为的男性员工的信息。
delete 员工信息表
where 部门编号=''
go 15、查询学生信息表的前条记录
select top 10 percent * from 学生信息表
go 16、将课程的成绩按从大到小排序 (asc:升序, desc:降序 )
select * from 教学成绩表
where 课程编号=''
order by 分数 desc
go 17. 查询各科的平均分>70的课程名称
select 名称, avg(分数)
from 教学成绩表 join 课程信息表
on 教学成绩表.课程编号=课程信息表.编号
group by 名称
having avg(分数)>70 18. 查询每位同学的学号,姓名,课程编号和分数
select 教学成绩表.学号,姓名,课程编号,分数
from 学生信息表 join 教学成绩表
on 教学成绩表.学号=学生信息表.学号 19. 查询每位同学的学号,姓名,课程编号,课程名称和分数
select 教学成绩表.学号,姓名,课程编号,分数,名称
from 学生信息表 join 教学成绩表
on 教学成绩表.学号=学生信息表.学号 join 课程信息表
on 课程信息表.编号=教学成绩表.课程编号 20. 查询参加计算机网络技术考试的学生学号和分数
select 学号,分数
from 教学成绩表 cross join 课程信息表
where 名称='计算机网络技术' 21. 统计每位教师所教课程的平均分(教师姓名,课程名称,平均分)
select 姓名,名称,'平均分'=AVG(分数)
from 教学成绩表 join 课程信息表
on 教学成绩表.课程编号=课程信息表.编号
join 教师信息表
on 教师信息表.编号=教学成绩表.教师编号
group by 姓名,名称 22. 建立索引 IX_name,按照学生信息表的姓名查询时,提升查询速度
create index IX_name
on 学生信息表(姓名) 23.创建存储过程,名称为pr_1
create procedure pr_1
as
select *
from 学生信息表 24. 统计每科的考试分数的平均分,最高分和参加考试人数
create view view_4
as
select 名称,平均分=avg(分数),最高分=max(分数),参加考试人数=count(*)
from 教学成绩表 join 课程信息表
on 课程信息表.编号=教学成绩表.课程编号
group by 名称

最新文章

  1. java基础 数组14
  2. MFC 颜色选择对话框、颜色按钮
  3. php捕获网络页面
  4. c++11 pod类型(了解)
  5. iOS10 资料汇总:值得回看的 10 篇 iOS 热文
  6. Hadoop 学习之 FAQ
  7. POJ 2559 Largest Rectangle in a Histogram -- 动态规划
  8. NIO学习:异步IO实例
  9. sql server2005主从数据库同步配置
  10. Cocos2dx 3.2 节点之间相互通信与设置触摸吞噬的方法
  11. event.srcElement与event.target的区别
  12. css3 翻牌效果
  13. pentaho专题之reporting design入门指南
  14. Android Studio安装、配置、第一个程序的那些坑
  15. FFT 快速傅里叶变换 学习笔记
  16. cracking the coding interview系列C#实现
  17. Java Socket 死循环while如何判断客户端断开
  18. vlan交换机的端口模式有哪几种
  19. sql的存储过程实例--动态根据表数据复制一个表的数据到另一个表
  20. Android ListView 和 ***Adapter 从本地/网络获取歌曲列表

热门文章

  1. webpack学习(四)— webpack-dev-server
  2. BZOJ 1705: [Usaco2007 Nov]Telephone Wire 架设电话线 DP + 优化 + 推导
  3. [bzoj1050 HAOI2006] 旅行comf (kruskal)
  4. Nikita and stack
  5. 如何实现网卡bond
  6. git merge和git rebase的区别和异同
  7. JVM基础(二) 实现自己的ClassLoader
  8. Win10 中修改cmd字体引发的问题
  9. pl/sql developer 快捷操作: 显示不可见字符 显示历史sql语句 拷贝整个sql窗口的语句至新的sql窗口
  10. BNU 34986 Football on Table