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 ...
随机推荐
- 似乎都设置了utf-8,为什么出现乱码
解决方法如下: ****************************************************************************************[来自我 ...
- MongoDB学习-安装流程
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型. ...
- java servlet+oracle 新手可看
最近公司领导告诉接下去接的一个产品,可能会涉及到oracle数据库,以前用得最多的是mssql,前些时间学了下mysql也算少许用过.oracle没接触过.应为我之前做过.net开发,所以数据访问接口 ...
- Scalaz(3)- 基础篇:函数概括化-Generalizing Functions
Scalaz是个通用的函数式编程组件库.它提供的类型.函数组件都必须具有高度的概括性才能同时支持不同数据类型的操作.可以说,scalaz提供了一整套所有编程人员都需要的具有高度概括性的通用函数,它是通 ...
- php中数组遍历改值
<?php $arr = array(100, 99, 88, 77, 55, 66); //方法1 foreach ($arr as &$v) { $v = 2; } print_r( ...
- 常见的http响应状态码
http状态返回代码 1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码. http状态返回代码 代码 说明100 (继续) 请求者应当继续提出请求. 服务器返回此代码表示已收到 ...
- ubuntu下golang环境配置
安装go 可以到Golang中国下载go的安装包 解压安装包tar -C /usr/local -xzf <安装包> 添加环境变量`export PATH=$PATH:/usr/local ...
- php高版本不再使用mysql_connect()来连接数据库
想用php生成一个mysql数据字典导出来,用到下面代码会 $mysql_conn = mysql_connect ( "$dbserver", "$dbusername ...
- ASP.NET MVC下使用文件上传
这里我通过使用uploadify组件来实现异步无刷新多文件上传功能. 1.首先下载组件包uploadify,我这里使用的版本是3.1 2.下载后解压,将组件包拷贝到MVC项目中 3. 根目录下添加新 ...
- Monkey测试2——Monkey测试策略
Monkey的测试策略 一. 分类 Monkey测试针对不同的对象和不同的目的采用不同的测试方案,首先测试的对象.目的及类型如下: 测试的类型分为:应用程序的稳定性测试和压力测试 测试对象分为:单一a ...