SQL Server 2012 学习笔记5
1. 索引(Index)
索引是快速的定位和查找数据。索引分为:
聚集索引:唯一,默认主键,一般选取比较连贯的字段,聚集索引是物理排序。
非聚集索引: 并没有把数据物理排序,只是多了一个索引页(包括索引项+存储位置row number)
a. 新建“非聚集索引”
b. 选择“专业”创建非聚集性索引。 这时查询专业是“计算机”的记录
c. 执行计划,工具栏—显示执行计划(Display Estimated Excution plan)
有“scan”和“seek”。scan为全表扫描,性能低;seek为查找,性能高;因为的我的库中数据少,多的话会根据之前做的非聚集索引“专业”执行seek。
d. 还有一个查看性能的工具—“profiler”
e. 定期清除索引碎片,索引右键—重新组织,索引右键—重新生成。
2. 视图(view-new)
视图的原理就是联合查询,视图会大量地占用数据库的空间。
视图是从一个或者多个表中导出的,其行为与表相似,但视图是一个虚拟表。视图可以在已经存在的视图的基础上定义。在视图中用户可以使用SELECT语句查询数据库,使用INSERT、UPDATE、DELETE语句修改记录。对应视图的操作最终转化为对基本数据表的操作。因为修改视图有许多限制,所以实际开发中一般视图仅作查询使用。视图中并不存放数据,而是存放在视图所引用的原始表中。
a. 新建view
b. 选择表,多选表
c. 给表建立连接关系,并选择要显示的列
我们可以看到自动产生了SQL语句
d. 点击“保存”,刷新下就能看到新建的view。
3. 触发器
在做增删改查的时候要看修改了什么内容,就需要用到触发器。
create trigger trigUserInfor
ON UserInfor
after delete /* 有三种INSERT,DELETE,UPDATE*/
AS
begin
select * from deleted /*在删除后同时查出删除的内容*/
end
这样我们删除一条记录的时候,会显示删除的内容
4. 数据库的备份和还原
a. 备份(.bak)
不要追加备份,把之前的备份都覆盖
选择部分目录
数据库还原
b. 分离数据库,分离并没有在物理硬盘上删除
加载数据库
c. 数据库生成脚本
生成的脚本直接点击执行,就可以生成数据库。
5. 数据的导入导出
可以导出成excel 或是 导出到另外的服务器上;但主键要重新设置,自增。
6. 定时作业
可以设定每天12点查询一次或更新一次数据库
a. 启动SQL Server Agent
b. 新建"job",输入名称
c. 新建“步骤”
d. 新建“计划”
e. 设定邮件通知
f. 测试
SQL Server 2012 学习笔记5的更多相关文章
- SQL Server 2012 学习笔记1
1. 新建的数据库会产生两个文件(数据文件.mdf 和日志文件.ldf) 2. 编辑表格和为表格录入数据 "Design"为设计表格,"Edit Top 200 Rows ...
- SQL Server 2012 学习笔记4
1. 约束 , 给某些字段添加约束条件, 比如年龄在1-100岁之间 添加约束,输入 Age>1 and Age < 100 2. 存储过程 存储过程也可以做增删改查 存储过程的 ...
- SQL Server 2012学习笔记 1 命令行安装
setup.exe /Q /IACCEPTSQLSERVERLICENSETERMS /ACTION=install /PID=748RB-X4T6B-MRM7V-RTVFF-CHC8H /FEATU ...
- SQL Server 2012 学习笔记3 增查改删
现在举例几个"增查改删"的语句 select * from UserInfor --查找所有字段 select username,UserId from UserInfor -- ...
- SQL Server 2012 学习笔记2
1. 新建数据库 可以在对应目录下右键新建数据库,也可以用程序添加: 先打开程序编辑对话框"New Query" create database Library 2. 添加表格 可 ...
- SQL Server 2012学习笔记 2 Server Core中命令行安装SQL
Setup.exe /qs /ACTION=Install /FEATURES=SQLEngine,Replication /INSTANCENAME=MSSQLSERVER /SQLSVCACCOU ...
- SQL Server 2012 数据库笔记
慕课网 首页 实战 路径 猿问 手记 Python 手记 \ SQL Server 2012 数据库笔记 SQL Server 2012 数据库笔记 2016-10-25 16:29:33 1 ...
- Querying Microsoft SQL Server 2012 读书笔记:查询和管理XML数据 1 -使用FOR XML返回XML结果集
XML 介绍 <CustomersOrders> <Customer custid="1" companyname="Customer NRZBB&qu ...
- MS Sql server 2008 学习笔记
数据库中常用的概念 Sql本身是一个服务器,没有界面,Management Studio 只是一个SQL Server管理工具而已,不是服务器. Sql server 在管理工具下面的服务SQL S ...
随机推荐
- a标签,img标签,表格
<a></a> a标签,超链接标签 ,引入超链接方式: src="...." target="blank" 打开方式--新页 ...
- Gym 100917J---dir -C(RMQ--ST)
题目链接 http://codeforces.com/gym/100917/problem/D problem description Famous Berland coder and IT mana ...
- SpringMVC框架介绍
1. SpringMVC通过一套MVC注解,让POJO成为处理请求的控制器,而无须实现任何接口. 2.支持REST风格的URL请求. 3.采用了松散耦合可插拔组件结构,比其他MVC框架更具扩展性和灵 ...
- JS this,call和apply以及回调函数
this this引用,引用的是一个对象,对象不同或函数调用方式的不同,this引用会根据代码的上下文语境自动改变引用对象的特性. 引用规则 1,在最外层代码中,this引用引用的是全局对象(wind ...
- Java final类
如果说整个类都是final(在它的定义前冠以final关键字),就表明自己不希望从这个类继承,或者不允许其他任何人采取这种操作.换言之,出于这样或那样的原因,我们的类肯定不需要进行任何改变:或者出于安 ...
- Python实现装饰模式的一段代码
# 实现装饰模式的一段代码 import functools def log(func): @functools.wraps(func) def wrapper(*args,**kw): print( ...
- Quartz.NET开源作业调度框架系列(四):Plugin Job
如果在Quartz.NET作业运行时我们想动态修改Job和Trigger的绑定关系,同时修改一些参数那么该怎么办呢?Quartz.NET提供了插件技术,可以通过在XML文件中对Job和Trigger的 ...
- Midnight.js – 实现奇妙的固定头部切换效果
Midnight.js 是一款 jQuery 插件,在页面滚动的时候实现多个头设计之间的切换,所以你总是有一个头与它下面的内容层叠,看起来效果很不错. Midnight.js 可以让你轻松实现这种切换 ...
- browser.html – HTML 实现 Firefox UI
browser.html 是一个实验性的项目,用于证明一个概念:使用 HTML 重新实现 Firefox UI ,并作为一个应用程序.它是基于浏览器的 API ,并以浏览器的方式和系统的应用工作.即使 ...
- mysql在Windows下使用mysqldump命令备份数据库
在cmd窗口中使用mysqldump命令首先需要配置环境变量 1,在计算机中找到MySQL的安装位置,找到MySQL Workbench,比如我的是C:\Program Files\MySQL\MyS ...