本文介绍了如何在 SQL Server 2008 中创建序列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用以下代码在 SQL Server 中创建序列.但它将错误显示为未知对象类型.请给出解决方案
I am creating sequence in SQL Server with the following code. But it displays error as unknown object type. Please give a solution
这是我的代码:
create sequence seqval start with 100 increment by 1 minvalue 0 maxvalue 0 no cycle
no cache;
提前致谢
推荐答案
您可以这样做.
--Create a dummy TABLE to generate a SEQUENCE. No actual records will be stored.
CREATE TABLE SequenceTABLE
(
ID BIGINT IDENTITY
);
GO
--This procedure is for convenience in retrieving a sequence.
CREATE PROCEDURE dbo.GetSEQUENCE ( @value BIGINT OUTPUT)
AS
--Act like we are INSERTing a row to increment the IDENTITY
BEGIN TRANSACTION;
INSERT SequenceTABLE WITH (TABLOCKX) DEFAULT VALUES;
ROLLBACK TRANSACTION;
--Return the latest IDENTITY value.
SELECT @value = SCOPE_IDENTITY();
GO
--Example execution
DECLARE @value BIGINT;
EXECUTE dbo.GetSEQUENCE @value OUTPUT;
SELECT @value AS [@value];
GO
这篇关于如何在 SQL Server 2008 中创建序列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!