SQL Server 2012 数据库笔记

时间:2021-07-27 01:23:00
手记 \ SQL Server 2012 数据库笔记

SQL Server 2012 数据库笔记

2016-10-25 16:29:33 123浏览 0评论

第一章 初识SQL Server2012

1.2、作为SQL Server的最新版本,SQL Server 2012具有以下激动人心的新功能.
1、AlwaysOn。
2、Columnstore索引。
3、DBA自定义服务器权限。
4、Windows Server Core支持。
5、Sequence Objects。
6、PowerView。
7、增强的审计功能。
8、增强的PowerShell支持。
9、分布式回放(Distributed Replay)。
10、SQL Azure增强。

1.3 SQL Server 2012的组成
1.3.1、SQL Server数据库引擎
1.3.2、分析服务(Analysis Services)
1.3.3、集成服务(Integration Services)
1.3.4、报表服务(Reporting Services)

第二章 数据库的操作

2.1 数据库的组成
2.1.1、数据文件
2.1.2、日志文件

2.2 系统数据库
2.2.1、master数据库
2.2.2、model数据库
2.2.3、msdb数据库
2.2.4、tempdb数据库

2.3 创建数据库
2.3.1、使用对象资源管理器创建数据库
2.3.2、使用Transact-SQL创建数据库

SQL命令创建
CREATE DATABASE [sample_db] ON PRIMARY
(
NAME = 'sample_db',
FILENAME = 'C:\SS2012Data\sample.mdf',
SIZE = 5120KB,
MAXSIZE = 30MB,
FILEGROWT = 5%
)
 LOG ON
(
NAME = 'sample_log',
FILENAME = 'C:\SQL Server 2012\sample_log.ldf',
SIZE = 1024KB,
MAXSIZE = 8192KB,
FILEGROWTH = 10%
)
GO

2.4管理数据库
2.4.1、修改数据库
2.4.2、查看数据库信息
2.4.3、数据库更名
2.4.4、删除数据库

第三章

3.1、SQL Server数据库对象
数据库对象是数据库的组成部分,数据表、视图、索引、存储过程以及触发器等都是数据库对象。

3.2、创建数据表
3.2.1、数据类型
3.2.2、使用对象资源管理器创建表
3.2.3、使用Transact-SQL创建表

3.3、管理数据表
3.3.1、修改表字段
3.3.2、修改表约束
3.3.3、查看表中有关信息
3.3.4、删除表

第四章 Transact-SQL语言基础

4.1、Transact-SQL概述
4.1.1、什么是Transact-SQL
4.1.2、T-SQL语法的约定

4.2、如何给标识符起名
1.标识符分类
2.规则标识符
3.界定标识符
4.标识符规则
5.对象命名规则
6.实例的命名规则

4.3、常量
4.3.1、数字常量
4.3.2、字符串常量
4.3.3、日期和时间常量
4.3.4、符号常量

4.4、变量
4.4.1、全局变量
查看服务器的版本和名称
Select @@version as 'SQL Server版本',@@servername as '服务器名称'

4.4.2、局部变量
Declear  @MyCounter int;
4.4.3、批和脚本

4.5、运算符和表达式
4.5.1、算术运算符
4.5.2、比较运算符
4.5.3、逻辑运算符
4.5.4、连接运算符
4.5.5、按位运算符
4.5.6、运算符的优先级
4.5.7、什么是表达式
4.5.8、Transact-SQL表达式的分类

4.6、Transact-SQL利器------通配符
通配符
说明
例子
匹配值示例
%
匹配任意长度的字符,甚至包括零字符
'f%n'匹配字符前面有任意个字符f
fn,fan,faan,abcn

匹配任意单个字符
'b
'匹配以b开头长度为两个字符的值
ba,by,bx,bp
[字符集合]
匹配字符集合中的任何一个字符
'[xz]'匹配x或者z
dizzy,zebra,x-ray,extra
[^]或[!]
匹配不再括号中的任何字符
'[^abc]'匹配任何不包含a,b,或者c的字符串
desk,fox,f8ke

4.7、Transact-SQL语言中的注释

1、单行注释
单行注释以两个减号“--”开始,作用范围是从注释符号开始到一行的结束
例如:--create table temp
--(id int promary key,hobby varchar(100) null)
2、多行注释
多行注释作用于某一代码块,该种注释使用斜杠星型(/*/),使用到这种注释时,编译器将忽略从(/)开始后面的所有内容,直到遇到(/)为止。
例如:
/
create table temp
--(id int promary key,hobby varchar(100) null)*/

第八章 规则、默认和完整性约束

8.1、规则和默认概述
规则是对存储的数据表的列或者用户定义数据类型中的值的约束,规则与其作用的表或用户定义数据类型是相互独立的,也就是说,对表或用户定义数据类型的任何操作与对其设置的规则不存在影响。
8.2、规则的基本操作
8.2.1、创建规则
8.2.2、把自定义规则绑定到列 (定义规则)
SQL Server 2012 数据库笔记
8.2.3、验证规则作用 (绑定规则)
SQL Server 2012 数据库笔记

向数据表中添加一条字段score的值为101数据,
![图片描述][3]
8.2.4、取消规则绑定 (取消规则绑定)
![图片描述][4]

8.2.5、删除规则 (删除规则)  正在使用的规则是删除不了的
![图片描述][5]

8.3、默认的基本操作
8.3.1、创建默认
8.3.2、把自定义默认绑定到列
8.3.3、验证默认作用
8.3.4、取消默认绑定
8.3.5、删除默认
8.4、完整性约束

第九章 创建和使用索引
9.1、索引的含义和特点
数据库中现在有2万条记录,现在要执行这一个查询:select * from table where num =10000 如果没有索引,必须遍历整个表,直到num等于10000的这一行被找到为止;如果在num列上创建索引,SQL Server不需要任何扫描,直接在索引里面找10000,就可以得知这一行的位置。可见,索引的建立可以加快数据库的查询速度。
9.2、索引的分类
不同数据库中提供了不同的索引类型,SQL Server中的索引有两种:聚集索引和非聚集索引。聚集索引和非聚集索引的区别是在物理数据的存储方式上。
9.3、索引的设计原则
(1)索引并非越多越好,一个表中如有大量的索引,不仅占用磁盘空间将增大,而且会影响insert、delete、update等语句的性能。因为当表中的数据更改的同时,索引也会进行调整和更新。
(2)避免对经常更新的表进行过多的索引,并且索引中的列尽可能少。而对经常用于查询的字段应该创建索引,但要避免添加不必要的字段。
(3)数据量小的表最好不要使用索引,由于数据较少,查询花费的时间可能比遍历索引的时间还要短,索引可能不会产生优化效果。
(4)在条件表达式中经常用到的不同值较多的列上建立索引,在不同值少的列上不要建立索引。比如在学生表的“性别”字段上只有“男”与“女”两个不同值,因此就无必要建立索引。如果建立索引不但不会提高查询效率,反而会严重降低更新速度。
(5)当唯一性事某种数据本身的特征时,制定唯一索引。使用唯一索引能够确保定义的列的数据完整性。提高查询速度。
(6)在频繁进行排序或分组(即进行group by或order by操作)的列上建立索引,如果待排序的列有多个,可以在这些列上建立组合索引。
9.4、创建索引
9.5、管理和维护索引
9.5.1、显示索引信息
9.5.2、重命名索引
9.5.3、删除索引

第十一章 存储过程和自定义函数
11.1、存储过程概述
存储过程是SQL Server2012 系统创建的存储过程,它的目的在于能够方便地从系统表中查询信息,或者完成与更新数据库表相关的管理任务或其他的系统管理任务。Transact-SQL语句是SQL Server 2012 数据库与应用程序之间的编程接口。在很多情况下,一些代码会被开发者重复的编写多次,如果每次都编写吸纳共同那个功能的代码,不但繁琐,容易出错,而且由于SQL Server 2012逐条地执行语句会降低系统的运行效率。
11.2、存储过程分类
11.2.1、系统存储过程
11.2.2、自定义存储过程
11.2.3、扩展存储过程
11.3、创建存储过程
11.4、管理存储过程
11.5、扩展存储过程
11.6、自定义函数

相关标签: SQL Server
 
2 人推荐

相关阅读

  • MySQL索引背后的数据结构及算法原理

  • 目前几种主流数据库软件的应用特点、适用范围各是什么?

  • 关于Java连接数据库,你知道有哪些?(征文)

  • 视图、索引、存储过程、事务、函数

  • mysql数据表有外键,应注意的几点(目前学习所获得的经验)

 
 

SimpleDaisy

JAVA开发工程师 生活需要激情

作者的热门手记

  • AngularJS 视频学习笔记

    265浏览 2推荐 1评论
  • C# LINQ (语言集成查询)

    108浏览 1推荐 1评论