将SAS numeric转换为Teradata BIGINT的数据类型不匹配

将SAS numeric转换为Teradata BIGINT的数据类型不匹配,sas,teradata,type-conversion,sqldatatypes,Sas,Teradata,Type Conversion,Sqldatatypes,我有一个带有数字变量ACCT_ID(以及其他字段)的SAS数据集。其在PROC CONTENTS中的属性为: # Variable Type Len Format Informat Label 1 ACCT_ID Num 8 19. 19. ACCT_ID 我知道这个字段中没有任何非整数值,所以我想将它作为BIGINT存储在Teradata中,我用

我有一个带有数字变量ACCT_ID(以及其他字段)的SAS数据集。其在
PROC CONTENTS
中的属性为:

#    Variable                 Type    Len    Format    Informat    Label
1    ACCT_ID                  Num       8    19.       19.         ACCT_ID
我知道这个字段中没有任何非整数值,所以我想将它作为BIGINT存储在Teradata中,我用
dbtype
数据集选项指定了它,如下所示:

data td.output(dbtype=(ACCT_ID="BIGINT", <etc etc>));
该字段中没有缺失值或非整数值,即使我使用
round(ACCT\u ID,1)
对ACCT\u ID进行取整,以明确删除任何可能存在的浮点值,错误仍然存在


奇怪的是,如果我将其指定为Teradata中的十进制(18,0)而不是BIGINT,则不会给出错误。我想这可能是一个解决办法,但我想了解,如果SAS不区分整型和浮点型,如何从SAS这样的数值变量在Teradata中创建整型字段。

SAS不支持BIGINT数据类型。看

SAS/ACCESS接口不支持Teradata的BIGINT数据类型 到Teradata。无法读取或更新包含列的表 使用SAS/ACCESS接口中的BIGINT数据类型访问Teradata。 尝试执行此操作将生成以下错误消息:

错误:此DBMS表中至少有一列的数据类型为 此引擎不支持

ERROR: Datatype mismatch for column: ACCT_ID.