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 ('06','刘华奇','123456') 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 课程编号='900013' and 分数>=70 and 分数<=90 go 11. 查询学生信息表中籍贯中包含‘山’字符的同学信息 select * from学生信息表 where 籍贯 like '%山%' go
① 查询 yiqi_product 表中 cid 为 16 且 名称中含有 钢结构的信息
SELECT*FROM`yiqi_product`WHEREcid='116'andnameLIKE'%钢结构%'
12、利用T-SQL语句,将员工编号为的员工姓名改为“张三丰”。 update 员工信息表 set 姓名='张三丰' where 编号='01' go 13、利用T-SQL语句,将工资表中基本工资〈,奖金<2000的扣除项改为. update 工资表 set 扣除 =1000 where 基本工资<3000 and 奖金<2000 go 14、利用T-SQL语句,删除员工信息表中部门编号为的男性员工的信息。 delete员工信息表 where 部门编号='001' go 15、查询学生信息表的前条记录 select top 10 percent * from学生信息表 go 16、将课程的成绩按从大到小排序 (asc:升序, desc:降序 ) select * from教学成绩表 where 课程编号='900001' 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 indexIX_name on学生信息表(姓名) 23.创建存储过程,名称为pr_1 create procedurepr_1 as select * from学生信息表 24. 统计每科的考试分数的平均分,最高分和参加考试人数 create viewview_4 as select 名称,平均分=avg(分数),最高分=max(分数),参加考试人数=count(*) from 教学成绩表 join课程信息表 on 课程信息表.编号=教学成绩表.课程编号 group by 名称
SqlServer数据库基本用法
免责声明:文章转载自《SqlServer数据库基本用法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。
上篇CentOS 7 64位 安装 PostgreSQL 9.2整理ASP.NET VS2013 Office 转 PDF下篇
宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=