SQL SERVER 2014--学习笔记1

--=======================================================

在SQL SERVER
2014中,最吸引眼球的就是内存表和本地编译存储过程,在MS强大的宣传下,内存表和本地编译存储过程似乎成了能搞定一切的救世主,这是真的吗?
让我们一步一步来学习探索吧

--=======================================================

创建数据库

由于内存表数据的存放机制和普通表(基于磁盘的表)完全不同,因此内存表的数据需要一个特别的文件夹(注意不是文件哦)来存放,后续会涉及到数据存放原理,此时先放一放,我们来看下数据库创建脚本:


USE [master]
--创建数据库
CREATE DATABASE [TestDB]
ON PRIMARY
( NAME = N‘TestDB‘, FILENAME = N‘D:\SQL2104\SQLData\TestDB.mdf‘ ,
SIZE = 204800KB , MAXSIZE = UNLIMITED, FILEGROWTH = 204800KB )
LOG ON
( NAME = N‘TestDB_log‘, FILENAME = N‘D:\SQL2104\SQLData\TestDB_log.ldf‘ ,
SIZE = 204800KB , MAXSIZE = 2048GB , FILEGROWTH = 204800KB )
GO
--创建内存表使用的文件组
ALTER DATABASE [TestDB] ADD FILEGROUP [TestDB_MFG1] CONTAINS MEMORY_OPTIMIZED_DATA
GO
--创建内存表使用的文件夹
ALTER DATABASE [TestDB]
ADD FILE ( NAME = N‘TestDB_MDir1‘, FILENAME = N‘D:\SQL2104\SQLData\TestDB_MDir1‘)
TO FILEGROUP [TestDB_MFG1]
GO

对于每个数据库,只能创建一个内存优化文件组(Memory-Optimized
Filegroup),而对于每个内存优化文件组,可以创建多个关联的文件夹。

PS:内存优化文件组基与FILESTREAM文件组,但是无需为内存优化文件组来启用FILESTREAM。

--=======================================================

创建内存表

创建内存表限制比较多:

1. 支持的数据类型:http://msdn.microsoft.com/ZH-CN/library/dn133179(v=sql.120).aspx

2. 内存表可以使用自增,但唯一允许用于 seed 和 increment
的值为 1;(1,1) 是 seed 和 increment 的默认值

3. 内存表中


CREATE TABLE [dbo].[TB1_IM]
(
[c1] [int] NOT NULL PRIMARY KEY
NONCLUSTERED HASH WITH (BUCKET_COUNT=1000000),
[c2] [nchar](200) COLLATE Chinese_PRC_Stroke_90_BIN2 NOT NULL
INDEX ix_c2 NONCLUSTERED HASH WITH (BUCKET_COUNT=1000000),
[c3] [nvarchar](200) COLLATE Chinese_PRC_Stroke_90_BIN2 NOT NULL,
[c4] [nvarchar](200) COLLATE Chinese_PRC_Stroke_90_BIN2 NOT NULL,
INDEX ix_c3_c4 NONCLUSTERED HASH(c3,c4) WITH(BUCKET_COUNT=1000000),
INDEX ix_c2_c3 NONCLUSTERED (c2,c3)
)WITH ( MEMORY_OPTIMIZED = ON , DURABILITY = SCHEMA_AND_DATA )

SQL SERVER 2014--学习笔记1,布布扣,bubuko.com

时间: 2024-08-07 00:05:04

SQL SERVER 2014--学习笔记1的相关文章

SQL Server LocalDB 学习笔记 02 基本管理

管理LocalDB 1. SqlLocalDB命令 安装完毕之后,可以看看环境变量中的Path,一般都会有 %ProgramFiles%\Microsoft SQL Server\110\Tools\Binn 这个就是SqlLocalDB存放的位置,如果在cmd之下不生效,编辑按钮点一下(什么都不改),之后确定,最后外层确定,就让新的Path生效了. 创建数据库实例 c SqlLocalDB create "实例名字" -s 参数-s可选,加上之后表示创建之后直接启动实例 删除数据库实

SQL Server LocalDB 学习笔记 01 简介

SQL Server 2012 新增产品 SQL Sever Express轻量级版本 转为开发人员创建 无需管理 兼用T-SQL语言 编程接口与SQL Server Express一样 适用于小型应用环境.嵌入式环境 好处:无需再笔记本安装维护一个庞大的SQL Server实例了. 特性: 兼容其他SQL Server版本,使用sqlservr.exe作为服务进程,使用相同的客户端访问接口,兼容T-SQL编程语言. 无需安装多个LocalDB,不同程序可以并行执行多个LocalDB进程,所有的

SQL Server数据库学习笔记-概念数据模型

概念数据模型(Conceptual Data Model)也称为信息模型.它是对客观事物及其联系的抽象,用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具.概念数据模型摆脱了计算机系统及数据库管理系统的具体技术问题,集中精力分析数据及数据之间的联系等,与具体数据库管理系统无关.概念数据模型必须转换成逻辑数据模型,才能在数据库管理系统中实现.它强调其语义表达能力,即能够较方便.直接地表达应用中的各种语义只是.这类模型概念简单.清晰.易于被用户理解,是数据

SQL Server 2012学习笔记 1 命令行安装

setup.exe /Q /IACCEPTSQLSERVERLICENSETERMS /ACTION=install /PID=748RB-X4T6B-MRM7V-RTVFF-CHC8H /FEATURES=SQL,AS,RS,IS,Tools /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="TEST\sql" /SQLSVCPASSWORD="[email protected]" /SQLSYSADMINACCOUNTS=&qu

【SQL Server】学习笔记1

数据库设计范式 1范式:列的原子性,列不可再拆分 2范式:表中不能描述多个信息,不能有数据沉余 3范式:引用其它表的主键信息 约束 非空约束not null.不能出现空值 主键约束(PK)primary key constraint.唯一并且不为空 唯一约束(UQ)unique constraint.允许为空,但不能重复 默认约束(DF)default constraint.默认填入什么个值,比如默认填入男 检查约束(CK)check constraint.检查你填入的信息是否满足需求. 外键约

SQL Server 2012学习笔记 2 Server Core中命令行安装SQL

Setup.exe /qs /ACTION=Install /FEATURES=SQLEngine,Replication /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<StrongPassword>" /SQLSYSADMINACCOUNTS="<DomainName\UserName>"

SQL Server数据库学习笔记-设计表时应该考虑的因素

设计数据库其实就是设计数据库中的表.到底要注意些什么才能够设计好一个数据库呢?一个宗旨,8个建议. 一个宗旨“尽量少的表,每个表中尽量少的列,合理的表结构”. 8个建议: 第一个,首先要考虑的是咱们这个数据库的主要作用是什么?至少包含哪些数据?这些数据又分别属于哪些实体对象?对象之间又存在什么样的关系?比如说新闻文章管理系统的数据库,它要存放的数据至少包括:文章分类.文章标题.发文时间.作者:而既然是管理系统,那么肯定会有人要添加.删除或修改文章,那么就延伸出管理员,有管理员了就存在账号.密码:

SQL Server数据库学习笔记-外键

关于主键的话大家很好理解,主键的主要作用就是用来标识一条数据是唯一的,也就是保证数据的实体完整性.防止数据重复.但是外键的话就有许多的疑问了,那外键是咋回事儿呢? 1. 外键的定义: 外键(FK)是用于建立和加强两个表数据之间连接的一列或多列.通过将保存表中主键值的一列或多列中的值添加到另一个表中,可创建两个表之间的连接.这个列就成为第二个表的外键.它表示了两个表之间的关系. 2. 为什么要使用外键? 为了保证数据的参照完整性.补充:参照的完整性要求关系中不允许引用不存在的实体.与实体完整性是关

SQL Server数据库学习笔记-E-R模型

实体(Entities)联系(Relationships)模型简称E-R模型也称E-R方法,是由P.P.Chen于1976年首先提出的.还有一个关键元素Attributes-属性,它提供不受任何数据库管理系统(DBMS)约束的面向用户的表达方法,在数据库设计中被广泛用作数据建模的工具. E-R图也即实体-联系图(Entity Reationship Diagram),提供了表示实体.属性和联系的方法,用来描述显示时间的概念模型(不同于概念数据模型). E-R图表示方法: 实体(Entity):用