SQL Server


第一章 SQL Server 数据库部署


1,基本概念

数据库系统(DBS)

数据库管理系统(DBMS)

数据库管理员(DBA)

2,经典数据模型

网状模型

层次模型

关系模型

3,数据库的介绍

(1) SQL server (微软公司产品)面向windows操作系统 简单,易用

(2) Oracle (甲骨文公司产品) 面向所有主流平台 安全,完善,操作复杂

(3) DB2 (IBM公司产品)面向所有主流平台 大型,安全,完善

(4) My SQL (甲骨文公司收购) 开源、体积小,速度快,稳定

4,主键的特点

由一个或多个字段组成,保证实体的唯一性。一个主键值对应一行数据,不允许取空值(NULL),一个表只能有一个主键。

5,完整性规则

实体的完整性

域的完整性

用户定义完整性

引用的完整性

6,SQL server 2016 的版本

开发版

企业版

7,启动和停止服务的办法

(1) 使用服务管理器启动或停止数据库服务(services.msc)

(2) 使用 SQL server 配置管理器启动或停止数据库服务

(3) 使用SSMS启动或停止数据库服务

8,数据库的分类

(1) 系统数据库

Master:记录系统级别信息,如登录用户,其他数据库文件的位置等

Model:数据库模板,创建数据库时使用

Msdb:用于SQL server 代理计划警报和作业

Tempdb:保存临时对象或中间结果集

(2) 用户数据库:用户自己创建的数据库

9,身份验证

Windows身份验证

混合身份验证(SQL server 身份验证和Windows身份验证)

第二章数据库和表的管理


1.文件类型

(1)数据文件

主数据文件(.mdf):有且只有一个

次要数据文件(.ndf):可有可无,又可以多个,用于扩展

(2)事务日志文件(.ldf):至少有一个

记录所有事物的SQL语句,用于恢复数据库

2.扩展数据库的方法

(1)扩展现有文件的自动增长设置

(2)添加新文件

3.收缩数据库的方法

(1)手动收缩:数据库,文件

(2)自动收缩:数据库

4.数据库的基本操作:

创建库,扩展库,收缩库,分离和附加库,删除数据库

5.常用的数据类型

Int:整数类型

money:货币

char:字符串(中英文)

varchar:字符串(中英文)

datatime:日期时间

6.标识列的要求:

类型:数字

种子:开始的数

递增量:两个数之间的差

7.表的管理

创建表,列名,数据类型,是否允许为NULL(空),标识符列,check约束,主键,默认值

8.数据库和表的命令管理

(1)数据库

创建数据库:

createdatabase 数据库名

删除数据库:

dropdatabase 数据库名

(2) 表

创建表:

createtable 表名(列名1 数据类型 是否为空,列名2 数据类型 是否为空)

删除表:

drop table 表名

第三章T-SQL查询语句


1.T-SQL的组成

(1)DML:数据操纵语言

查询、插入、删除和修改数据

select,insert,delete,update

(2)DDL:数据定义语言

建立数据库,数据库对象和定义其列

create,drop,alter

(3)DCL:数据控制语言

控制数据库组件的存取许可,存取权限等

grant,revoke

2.插入数据的语法

Insertinto 表名 (列名1,列名2) values (’值1’,‘值2’,)

3.更新数据的语法

Update+表名+set+列名=’值1’+where+条件

备注:不带where,更新整个表中的数据。

4.删除数据的语法

deletefrom 表名 where 条件

truncatetable 表名(只能删除整个表中的数据)

5.查看表中所有数据:

select * from 表名

6.查询数据的语法:

select 列名 from 表名 where 条件

group by 分组

having 分组后的条件

order by 表达式 ASC(DESC)(按……顺序)

ASC:升序 DESC:降序 (默认是升序)

7.条件表达式:

不等于:<>或者!= 指定值的范围:between…… and ……

是否为空:is not null 模糊查询:like ,常与_和%结合使用

在数据范围里面:in()

8.使用select生成新的数据:

(1)select使用into关键字

select 列名 into 新表名 from 表名

备注:新表名不用提前创建

(2)insert使用select字句

insert into 新表名 select 列名 from 表

备注:新表名要提前创建

(3)使用union关键字

Insert into 新表名 select’值1’,’值2’ union

​ Select ’值3,’值4‘

(4)使用top关键字来限制查询返回行数

select top n 列名 from 表名

备注:n为需要返回的行数

(4) 查询时去重

select distinct 列名 from 表名

第四章T-SQL高级查询


1.函数的好处

减少编程的工作量,提升开发效率,提高代码的可重用性。

2.常用函数

数据类型的转换:

convert (数据类型,返回的数据)

cast (转换的数据 ,as ,数据类型)

字符串长度:

len (数据)

获取当前系统日期:

getdate()

添加指定的年月日:

dateadd (时间单位,添加的时间,时间)

比较两个日期之间的差:

datediff (时间单位,时间,被减时间)

显示日期的指定部分:

datename(时间单位,时间)

聚合函数:

最总和:

sum (数据)

求平均:

avg(数据)

求最大:

max(数据)

求最小:

min(数据)

统计行数:

count(数据)

四舍五入:

round(数据)

3.在同一个select语句中的顺序

where -----> group by ------> having

4.多表查询的联接类型

内联接: sinner join

外联接:

左外联接:left join

右外联接:right join

完整联接:full join

交叉联接(不常用)

第五章查询优化与事务


1.索引的作用

可以快速地查找数据,而无需扫描整个表

2.索引的类型

唯一索引、主键索引、聚集索引、非聚集索引、复合索引、全文索引

3.选择索引列的标准

频繁搜索的列

经常用作查询选择的列

经常排序、分组的列

经常用作连接的列(主键/外键)

以下不适合作为索引列 仅包含几个不同值的列 仅包含几行数据的小型表

4.视图的作用

筛选表中的数据,防止未经许可的用户访问敏感数据,将多个物理数据表抽象为一个逻辑数据表。

5.视图的好处

对最终用户的好处:结果更容易理解,获取数据更容易。

对开发人员的好处:限制数据检索更容易,维护应用程序更方便。

6.使用存储过程的优点

模块化程序设计

执行速度快,效率高

减少网络流量

具有良好的安全性

7.触发器的分类

insert触发器:当向表中插入数据时触发

update触发器:当更新表中某列、多列时触发

dalete触发器:当删除表中记录时触发

8.触发器的作用

是在对表进行增、删或改操作时自动执行的存储过程

9.触发器的两个表

inserted表 和 daleted表

10.事务的作用

一组命令,要么都执行,要么都不执行。

11.事务的特性(ACID)

原子性(不能分开),一致性(执行前执行后结果一样),隔离性(不应其他数据),持久性(一旦执行成功保存)。

12.锁的模式

共享锁(S锁)

排他锁(X锁)

更新锁(U锁)

13.死锁形成的条件

互斥条件

请求和等待条件

不剥夺条件

环路等待条件

第六章


1.SQL server的安全机制

客户机的安全机制

服务器的安全机制

数据库的安全机制

数据对象的安全机制

2.访问许可权限设置

服务器级别

数据库级别

数据对象级别

3.备份类型

(1)完整备份

备份整个数据库、部分事务日志、数据库结构和文件结构是任何其他的备份类型的基础。

(2)差异备份

备份上一次完整备份之后所有更改的数据

(3)事务日志备份

主要是T-SQL语句,记录了数据库的所有改变。

4.恢复模式

备份类型取决于恢复模式

简单恢复模式:不支持事务日志备份

完整恢复模式:支持三种备份类型

大容量日志恢复模式:支持三种备份类型。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奔腾草原上的键盘手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值