首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL Server 2012中序列的使用

SQL Server 2012中序列的使用
EN

Stack Overflow用户
提问于 2012-11-04 05:16:28
回答 2查看 3.7K关注 0票数 7

我有SQL Server 2012,我想知道序列的用法。我寻找一个样本来解释序列的用法。

编辑

我知道在数据库中创建和使用序列。我想知道什么是使用序列的实用场景。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-04 06:05:06

代码语言:javascript
复制
CREATE SEQUENCE dbo.OrderIDs
    AS INT
    MINVALUE 1
    NO MAXVALUE
    START WITH 1;

SELECT NextOrderID = NEXT VALUE FOR dbo.OrderIDs
UNION ALL     SELECT NEXT VALUE FOR dbo.OrderIDs
UNION ALL     SELECT NEXT VALUE FOR dbo.OrderIDs;

结果:

代码语言:javascript
复制
NextOrderID
-----------
1
2
3

有关原始源和更多示例,请参见这里。该页面引用,它是SQL 2012的beta版,但语法仍然相同。

票数 5
EN

Stack Overflow用户

发布于 2013-11-01 21:53:08

我利用SEQUENCE命令的方法之一是在ASP/C# detailsview视图页面中查找引用号(例如)。我使用详细视图将请求输入到数据库中,而SEQUENCE命令作为每个请求的请求/票证编号。我将inital命令设置为从一个特定的数字开始,每个请求的增量为1。

如果在网格视图中显示这些请求,则会显示序列引用号,但不要使它们可编辑。当记录与数据库中的其他字段相似时,它很适合作为参考编号。当客户对给定数据库中的特定条目有疑问时,这也是完美的选择。这样,无论其他信息是否相同,我每个条目都有一个唯一的编号。

下面是我通常如何利用SEQUENCE命令:

代码语言:javascript
复制
CREATE SEQUENCE blah.deblah
     START WITH 1
     INCREMENT BY 1
     NO CYCLE
     NO CACHE

简而言之,我从#1开始我的序列(你可以选择你想要开始的任何数字),它以1的增量向上计数,当它们到达系统的最大值时,我不循环它们。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13216265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档