SQL Server 2012 开发新功能 序列对象(Sequence)
众所周知,在之前的sqlserver版本中,一般采用GUID或者identity来作为标示符,但是identity是一个表对象,只能保证在一张表里面的序列,当我们遇到以下情况时,
表1
ID | 订单类型 | 价格 |
1 | 火车票 | 200 |
4 | 飞机票 | 2000 |
5 | 船票 | 600 |
表2
ID | 订单类型 | 价格 |
2 | 酒店 | 400 |
3 | 公园门票 | 170 |
6 | 租车费用 | 300 |
如上图,我们需要在多表之间,实现ID的一致性,在sqlserver里面就会有一定的麻烦,通常我们会使用额外使用一张temp表来映射这些ID的关系然后再从中取序列来完成。
sequence在oracle中其实很早就存在了,sqlserver 2012的sequence功能和那个相似,是一个基于schema的对象,所以可以被多表调用。
sequence语法如下:
- CREATE SEQUENCE [schema_name . ] sequence_name
- [ AS [ built_in_integer_type | user-defined_integer_type ] ]
- [ START WITH <constant> ]
- [ INCREMENT BY <constant> ]
- [ { MINVALUE [ <constant> ] } | { NO MINVALUE } ]
- [ { MAXVALUE [ <constant> ] } | { NO MAXVALUE } ]
- [ CYCLE | { NO CYCLE } ]
- [ { CACHE [ <constant> ] } | { NO CACHE } ]
- [ ; ]
CREATE SEQUENCE [schema_name . ] sequence_name[ AS [ built_in_integer_type | user-defined_integer_type ] ][ START WITH <constant> ][ INCREMENT BY <constant> ][ { MINVALUE [ <constant> ] } | { NO MINVALUE } ][ { MAXVALUE [ <constant> ] } | { NO MAXVALUE } ][ CYCLE | { NO CYCLE } ][ { CACHE [ <constant> ] } | { NO CACHE } ][ ; ]
start with 设置起始值
increment by 设置增长间隔
min和max分别设置最小和最大值
cycle设置是否循环
cache指定缓存的设置
转载于:https://www.cnblogs.com/zhangyoushugz/archive/2012/11/09/2762720.html
SQL Server 2012 开发新功能 序列对象(Sequence)相关推荐
- SQL Server 2012 开发新特性:文件表
转载于 春哥 一.启用FileTable 1.修改数据库引擎的属性 打开"SQL Server配置管理器",修改SQL Server数据库引擎的属性.使用此页可针对此 Micros ...
- Server 2012 Hyper-v新功能之二:自动化支持技术
Server 2012 Hyper-v新功能之一:客户端 Hyper-V Windows PowerShell 是在 Windows Server 中执行自动化任务的脚本解决方案,新的适用于 Wind ...
- 今天在webcasts上看sql server 2008的新功能介绍,无意中发现在连接sql server 数据库时,还有一个...
今天在webcasts上看sql server 2008的新功能介绍,无意中发现在连接sql server 数据库时,还有一个 Failover Partner的选项.以前都没注意过,它的主要功能就是 ...
- SQL Server 2012 各版本功能比较
http://blog.csdn.net/xcbsdu/article/details/8259131 http://msdn.microsoft.com 本主题提供有关不同版本的 SQLSer ...
- SQL Server 2012 安全新特性:包含数据库
SQL Server 2012 新特性(二)安全新特性:包含数据库 一.启用功能 1.修改服务器(实例)的属性 否则,在修改数据库的属性时会报错: 2.修改服务器(实例)的安全性 否则,连接时报错: ...
- SQL Server 2012 管理新特性:AlwaysOn
Server 2012 新特性(一)管理新特性:AlwaysOn 一.准备环境 1.准备4台计算机 域控制器DC1,IP地址192.168.1.1,子网掩码255.255.255.0,默认网关192. ...
- SQL Server 2016的新功能–动态数据屏蔽
There are many new features in SQL Server 2016, but the one we will focus on in this post is: SQL Se ...
- SQL Server 2016的新功能–临时数据表
There are many new features in SQL Server 2016, but the one we will focus on in this post is: SQL Se ...
- Server 2012 Hyper-v新功能之一:客户端 Hyper-V
客户端 hyper-v 是运行在 Windows 8的 HYPER-V 技术的名称,我们知道,微软在 Windows 8(Client)中也提供了 Hyper-V,它可以被看作是 Windows Se ...
最新文章
- 返回json格式数据乱码
- JavaScript内存优化
- Windows 安装redis
- python训练数据集_Python-yolov3训练自己的数据集,pytorchyolov3
- 阿里妈妈品牌广告价值建模
- java学习(60):java最终类(了解)
- 力扣904-水果成篮(C++,总结别人的思路)
- javaweb JAVA JSP球鞋销售系统购物系统ssm购物系统购物商城系统源码(ssm电子商务系统)
- PLC+智能网关,实现HTTP+JSON/XML+POST/GET请求与解析
- CSA发布云控制矩阵3.0版
- win2008 SP2下USB鼠标不能使用的一个解决方案
- 连续分配管理方式(单一连续分配 固定分区分配 动态分区分配)
- phpnow mysql_使用PHPnow搭建本地PHP环境+创建MySQL数据库
- jdk9 jdk10 jdk11启动rocketMQ的问题
- 什么是“好”系统呢?
- VBA中的MsgBox函数使用
- 软件开发生命周期(SDLC) 【详解】(含公司产品研发流程图、大厂研发架构图、大厂研发流程图)
- PHP实现 美化 打赏点 金额 换算
- Importerror: libgl.so.1: cannot open shared object file: no such file or directory
- android文件管理器u盘,Android U盘文件显示在文件管理器
热门文章
- 2020年python工资一般多少钱-2020年Python的就业薪资有多少?前景如何?
- 武汉python培训班排行榜-比较靠谱的武汉Python培训机构是哪个?
- python编程100例画图-python 画图示例源码(Turtle Graphics)
- python工程师-史上最全Python工程师常见面试题集锦,有这一份就够了
- python培训费用-python培训费需要多少钱?
- python报班大概多少钱-python培训班价格大概多少?
- python啥意思-星号*在Python中是什么意思?
- python与excel结合-python3与Excel的完美结合
- 安装TensorRT,然后导入uff库包的时候报错:ImportError: ERROR: Failed to import module(cannot import name ‘GraphDef`)
- html5知识总结,HTML5初级知识总结