2016-08-12 121 views
1

我想将已创建序列的类型从INT更改为BIGINT。 我搜索了可能的变种类型,但是类型我找不到如何改变,因为我最初声明的int为bigint,因为我需要更多的值。 问候,如何在Sql Server中将序列类型从int更改为bigint

+0

不在我的话题。我只需要只改变序列。如果没有其他选择,我只是将nextval保存到一个变量中,放下它,再次创建它并将记录的值设置为下一个值 – BogdanM

+0

最后一次...我使用SEQUENCES,而不是IDENTITY!目前的数据库结构和逻辑与序列不是身份。我有10个x 2序列(10个用于scd表格,另外10个用于scd2表格),而且它太复杂了,无法切换到身份识别 – BogdanM

+1

丢弃和重新创建是唯一的出路。创建后,您不能更改其计数器的基本类型。 – RBT

回答

1

尝试这样,

  1. 使用下面

    SELECT current_value查询FROM sys.sequences其中name = 'SequenceName' 发现你的序列current_value;

    让我们假设你的你的序列的current_value是50

  2. 删除并重新创建序列开始与50(中发现的值的步骤-1)

    降SEQUENCE SequenceName

    CREATE SEQUENCE SequenceName 
        AS bigint 
        START WITH 50 
        INCREMENT BY 1 
        MINVALUE 50 
        MAXVALUE 9999999999.... 
        CYCLE 
    
相关问题