Sql 创建序列错误:无效的';增加';

Sql 创建序列错误:无效的';增加';,sql,sql-server,Sql,Sql Server,错误: 为给定数据类型的参数“增量依据”指定的值无效 我想创建一个分数计数器。发生了什么?不支持十进制 UPD: 当我创建 CREATE SEQUENCE dbo.Sequence1 AS decimal START WITH 1 INCREMENT BY 0.3 MINVALUE 2 MAXVALUE 4 CYCLE; SQL Server Management Studio返回错误: 序列对象“dbo.Sequence1”的数据类型必须为int、bigint、smallint、tinyin

错误:

为给定数据类型的参数“增量依据”指定的值无效

我想创建一个分数计数器。发生了什么?不支持十进制

UPD:

当我创建

CREATE SEQUENCE dbo.Sequence1
AS decimal
START WITH 1 INCREMENT BY 0.3
MINVALUE 2 MAXVALUE 4
CYCLE;
SQL Server Management Studio返回错误:

序列对象“dbo.Sequence1”的数据类型必须为int、bigint、smallint、tinyint或小数或小数,小数位数为0,或者任何基于上述整数数据类型之一的用户定义数据类型


这就是为什么我试图创建一个带有
十进制类型的序列。

这对于注释来说有点长。非常具体的是,
create sequence
用于整数:

[内置的_整型|用户定义的_整型]

序列可以定义为任何整数类型。以下类型为 允许

(重点是我的。)

因此,不允许使用带小数点的值


decimal
仅允许小数位数为0(表示没有小数点)。

这对于注释来说有点长。非常具体的是,
create sequence
用于整数:

[内置的_整型|用户定义的_整型]

序列可以定义为任何整数类型。以下类型为 允许

(重点是我的。)

因此,不允许使用带小数点的值


decimal
仅允许小数位数为0(表示没有小数点)。

这对于注释来说有点长。非常具体的是,
create sequence
用于整数:

[内置的_整型|用户定义的_整型]

序列可以定义为任何整数类型。以下类型为 允许

(重点是我的。)

因此,不允许使用带小数点的值


decimal
仅允许小数位数为0(表示没有小数点)。

这对于注释来说有点长。非常具体的是,
create sequence
用于整数:

[内置的_整型|用户定义的_整型]

序列可以定义为任何整数类型。以下类型为 允许

(重点是我的。)

因此,不允许使用带小数点的值


decimal
仅允许使用0(表示没有小数点)。

这里发生了一些有趣的事情。首先,您定义了一个小数,但没有定义范围或精度。这意味着它将使用默认值。您应该始终定义范围和精度。第二个问题是,首先定义为小于最小值。不太确定这会做什么,但从逻辑上讲它没有意义。就像戈登在下面说的,你只能使用小数点为0的小数点(不允许使用小数点)。序列仅为整数。好的,各位……谢谢。什么是替代方案?@kellismitt:当你的问题无法解决时,重新定义问题。:)在这种情况下,我会将所有值乘以10(增量为3,最小值为20,最大值为40),然后在需要对其进行任何操作时进行除法。首先,您定义了一个小数,但没有定义范围或精度。这意味着它将使用默认值。您应该始终定义范围和精度。第二个问题是,首先定义为小于最小值。不太确定这会做什么,但从逻辑上讲它没有意义。就像戈登在下面说的,你只能使用小数点为0的小数点(不允许使用小数点)。序列仅为整数。好的,各位……谢谢。什么是替代方案?@kellismitt:当你的问题无法解决时,重新定义问题。:)在这种情况下,我会将所有值乘以10(增量为3,最小值为20,最大值为40),然后在需要对其进行任何操作时进行除法。首先,您定义了一个小数,但没有定义范围或精度。这意味着它将使用默认值。您应该始终定义范围和精度。第二个问题是,首先定义为小于最小值。不太确定这会做什么,但从逻辑上讲它没有意义。就像戈登在下面说的,你只能使用小数点为0的小数点(不允许使用小数点)。序列仅为整数。好的,各位……谢谢。什么是替代方案?@kellismitt:当你的问题无法解决时,重新定义问题。:)在这种情况下,我会将所有值乘以10(增量为3,最小值为20,最大值为40),然后在需要对其进行任何操作时进行除法。首先,您定义了一个小数,但没有定义范围或精度。这意味着它将使用默认值。您应该始终定义范围和精度。第二个问题是,首先定义为小于最小值。不太确定这会做什么,但从逻辑上讲它没有意义。就像戈登在下面说的,你只能使用小数点为0的小数点(不允许使用小数点)。序列仅为整数。好的,各位……谢谢。什么是替代方案?@kellismitt:当你的问题无法解决时,重新定义问题。:)在这种情况下,我会将所有值乘以10(增量为3,minvalue为20,maxvalue为40),然后在需要对其执行任何操作时进行除法。
CREATE SEQUENCE dbo.Sequence1
AS float
....