Sql Teradata 15:Failure 7545标识列超出其限制
我得到这个Teradata failure 7545标识列超出了它的限制,但我只插入了几百条记录,并且我已经将数据类型从INT更改为BIGINT 这是我的创建表语法,我真的很困惑为什么Teradata不高兴Sql Teradata 15:Failure 7545标识列超出其限制,sql,teradata,Sql,Teradata,我得到这个Teradata failure 7545标识列超出了它的限制,但我只插入了几百条记录,并且我已经将数据类型从INT更改为BIGINT 这是我的创建表语法,我真的很困惑为什么Teradata不高兴 CREATE TABLE LOCATION ( LOCATION_ID BIGINT GENERATED BY DEFAULT AS IDENTITY (START WITH 1 INCREMENT BY 1 MAXVALUE 1000000)
CREATE TABLE LOCATION
( LOCATION_ID BIGINT GENERATED BY DEFAULT AS IDENTITY (START WITH 1 INCREMENT BY 1 MAXVALUE 1000000) ,
....
如果您有任何见解,我们将不胜感激尝试使用“始终”和“无循环”,而不是默认生成。。。 还要检查DBSCONTROL参数27中的IdCol批量大小。 就像在我的例子中,它是10公里,所以,尝试增加它,然后尝试
您的定义默认为
NO CYCLE
,MAXVALUE
设置为1000000
,因此无论您使用的是INT
还是BIGINT
,最大值都是1000000
Teradata并行分配一个标识,即每个AMP/PE根据dbscontrol
参数IdCol批量大小
请求一系列数字,因此在实际插入一百万行之前将达到1000000
删除
MAXVALUE
,但保留BIGINT,仅当需要存储多达数百万行时才使用INT…以下是一个有效的解决方案:
我将最大值增加到1亿
原因是每个放大器都有100000个数字范围。我的2750设备有72安培,所以最小最大值为720万。当我对“最大标识”列值的定义超过720万时,它就起作用了。以下内容对我起作用。我最初并不知道删除MAXVALUE意味着什么,所以我想我会和大家分享<代码>行id BIGINT始终作为标识生成(以1个增量乘以1个无周期开始),