SqlServer数据库基本用法
- 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 名称
SqlServer数据库基本用法的更多相关文章
- (转)对SQLSERVER数据库事务日志的疑问
本文转载自桦仔的博客http://www.cnblogs.com/lyhabc/archive/2013/06/10/3130856.html 对SQLSERVER数据库事务日志的疑问 摸不透SQLS ...
- Sqlserver数据库总结
由于公司项目需要这段时间一直在做有关于数据库方面的工作.趁这段时间有空,对数据库方面的知识进行一个梳理和归纳,以便以后需要时,查看起来方便. 使用的数据库主要有ORACLE10g和Sqlserver2 ...
- SQLServer数据库之SQL Server 获取本周,本月,本年等时间内记录
本文主要向大家介绍了SQLServer数据库之SQL Server 获取本周,本月,本年等时间内记录,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. datediff(we ...
- NX二次开发-NX访问SqlServer数据库(增删改查)C#版
版本:NX9+VS2012+SqlServer2008r2 以前我写过一个NX访问MySQL数据库(增删改查)的文章https://www.cnblogs.com/nxopen2018/p/12297 ...
- PowerDesigner从SqlServer数据库中导入实体模型
PowerDesigner从SqlServer数据库中导入实体模型 时间 2013-06-28 10:26:34 CSDN博客 原文 http://blog.csdn.net/sxycxwb/art ...
- 批量解密SQLSERVER数据库中的各种对象的工具dbForge SQL Decryptor
批量解密SQLSERVER数据库中的各种对象的工具dbForge SQL Decryptor2.1.11 之前写过一篇文章,使用redgate公司的SQL PROMPT工具,但是不太方便 SQLPRO ...
- JAVA使用JDBC技术操作SqlServer数据库执行存储过程
Java使用JDBC技术操作SqlServer数据库执行存储过程: 1.新建SQLSERVER数据库:java_conn_test 2.新建表:tb_User 3.分别新建三个存储过程: 1>带 ...
- SQLServer数据库监控代码
SQLServer数据库监控代码: creation_time, total_worker_time, last_worker_time, max_worker_time, min_worker_ti ...
- SQLServer数据库转换成MySQL数据库
由于工作需要,系统原先的SQLServer数据库要转换成MYSQL数据库,所以这两天就一直在查阅这方面的资料.最开始,我尝试从SQLServer中导出SQL文件,然后导入到MYSQL数据库中,发现报错 ...
随机推荐
- mui scrollTo到指定位置,出现空白页及拉不动的问题解决
使用方式简介 mui 列表页使用的是 mui的插件实现的上拉加载下拉刷新,但是从详情页回到列表页时 不能回到之前的位置.所以想到了使用缓存. 第一次和第二次的试验是失败的.失败后,就想用其他办法来解决 ...
- matlab学习菜单控件的基本用法
编辑菜单项 上下文菜单,即弹出菜单 然后添加一个坐标系 添加回调函数 %余弦曲线x=0:0.01:2*pi;y=cos(x);axes(handles.axes1);%将坐标系的值写进h=plot(x ...
- Leetcode 动态规划 - 简单
1. 最大子序和 (53) 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输 ...
- ArchLinux简单介绍
一.Archlinux的由来 2002年由加拿大的Judd Vinet,Archlinux的创始人 怀着对Debian.Redhat的包管理器不满,于是创建了Archlinux!目前ArchLinux ...
- 如何在 vuex action 中获取到 vue 实例
问题:在做运营开发工具的时候 我想要请求后台服务器保存成功后 弹出一个弹框(饿了吗 的 message 弹框), 由于$message 是挂在 Vue原型链上的方法 (Vue.prototype.$m ...
- Python基础--Redis基础
字符串: setnx: 若没有则设置 setex: setex key exit_time value [设置其删除时间] setrange: setrange key index replace_v ...
- 9.Spring的IOC+MyBaits+log4j+Servlet
1.创建如下mysql脚本 drop table if exists book_info; create table if not exists book_info( book_id ) primar ...
- D2007在win7下bordbk105N.dll 莫名其妙的问题。
已经装过一次win7下d2007.再装一次就出现许多莫名其妙的问题.其中之一: Windows 7 64bit Delphi Debugger Fix / Workaround 2013-08-28 ...
- 【hihocoder 1476】矩形计数
[题目链接]:http://hihocoder.com/problemset/problem/1476 [题意] [题解] 首先不考虑黑格子,计算出一共有多少个矩形: 枚举矩形的大小r×c,这样大小的 ...
- 【hihocoder 1474】拆字游戏
[题目链接]:http://hihocoder.com/problemset/problem/1474 [题意] [题解] 题目的意思是说,那个块在最左端先出现,就先处理那个块; 每个连通块,处理出最 ...