SQL Server 2012 学习笔记5

时间:2023-12-12 13:26:02

1. 索引(Index)

索引是快速的定位和查找数据。索引分为:

聚集索引:唯一,默认主键,一般选取比较连贯的字段,聚集索引是物理排序。

非聚集索引: 并没有把数据物理排序,只是多了一个索引页(包括索引项+存储位置row number)

a. 新建“非聚集索引”

SQL Server 2012 学习笔记5

b. 选择“专业”创建非聚集性索引。 这时查询专业是“计算机”的记录

SQL Server 2012 学习笔记5

c. 执行计划,工具栏—显示执行计划(Display Estimated Excution plan)

SQL Server 2012 学习笔记5

有“scan”和“seek”。scan为全表扫描,性能低;seek为查找,性能高;因为的我的库中数据少,多的话会根据之前做的非聚集索引“专业”执行seek。

d.   还有一个查看性能的工具—“profiler”

e. 定期清除索引碎片,索引右键—重新组织,索引右键—重新生成。

2. 视图(view-new)

视图的原理就是联合查询,视图会大量地占用数据库的空间。

视图是从一个或者多个表中导出的,其行为与表相似,但视图是一个虚拟表。视图可以在已经存在的视图的基础上定义。在视图中用户可以使用SELECT语句查询数据库,使用INSERT、UPDATE、DELETE语句修改记录。对应视图的操作最终转化为对基本数据表的操作。因为修改视图有许多限制,所以实际开发中一般视图仅作查询使用。视图中并不存放数据,而是存放在视图所引用的原始表中。

a. 新建view

SQL Server 2012 学习笔记5

b. 选择表,多选表

SQL Server 2012 学习笔记5

c. 给表建立连接关系,并选择要显示的列

SQL Server 2012 学习笔记5

我们可以看到自动产生了SQL语句

SQL Server 2012 学习笔记5

d. 点击“保存”,刷新下就能看到新建的view。

3.  触发器

在做增删改查的时候要看修改了什么内容,就需要用到触发器。

create trigger trigUserInfor
ON UserInfor
after delete /* 有三种INSERT,DELETE,UPDATE*/
AS
begin
select * from deleted /*在删除后同时查出删除的内容*/
end

这样我们删除一条记录的时候,会显示删除的内容

SQL Server 2012 学习笔记5

4. 数据库的备份和还原

a.  备份(.bak)

SQL Server 2012 学习笔记5

不要追加备份,把之前的备份都覆盖

SQL Server 2012 学习笔记5

选择部分目录

SQL Server 2012 学习笔记5

数据库还原

SQL Server 2012 学习笔记5

b.  分离数据库,分离并没有在物理硬盘上删除

SQL Server 2012 学习笔记5

加载数据库

SQL Server 2012 学习笔记5

c. 数据库生成脚本

SQL Server 2012 学习笔记5

生成的脚本直接点击执行,就可以生成数据库。

5.  数据的导入导出

SQL Server 2012 学习笔记5

可以导出成excel 或是 导出到另外的服务器上;但主键要重新设置,自增。

SQL Server 2012 学习笔记5

6. 定时作业

可以设定每天12点查询一次或更新一次数据库

a. 启动SQL Server Agent

SQL Server 2012 学习笔记5

b. 新建"job",输入名称

SQL Server 2012 学习笔记5

c. 新建“步骤”

SQL Server 2012 学习笔记5

d. 新建“计划”

SQL Server 2012 学习笔记5

e. 设定邮件通知

SQL Server 2012 学习笔记5

f. 测试

SQL Server 2012 学习笔记5