从 Netezza 数据库创建 SAS 数据集时,SAS“CLI 游标扩展提取错误:数值超出范围”
Posted
技术标签:
【中文标题】从 Netezza 数据库创建 SAS 数据集时,SAS“CLI 游标扩展提取错误:数值超出范围”【英文标题】:SAS "CLI cursor extended fetch error: Numeric value out of range" while creating SAS dataset from Netezza Database 【发布时间】:2019-11-20 12:47:03 【问题描述】:我正在尝试使用 Libname 从 Netezza 表在 WORK 中创建 SAS 数据集,如下所示:
libname lib1
netezza
&_log_host
server=&_server
database=&_db
schema=&_sch
;
这就是我处理表格的方式:
data work.temp;
set lib1.TBL_NAME(OBS=1);
RUN;
Libname 被完美分配,但是当我运行数据步骤时,它给了我以下错误:
ERROR: CLI cursor extended fetch error: Numeric value out of range
【问题讨论】:
【参考方案1】:这通常是由于 Netezza 中的列对于 SAS 数值而言太长。如果你能找出是哪一列导致了问题,你可以把它当作一个字符来阅读:
data work.temp;
set lib1.tbl_name (obs=1 dbsastype=(mycolumn='CHAR(20)'));
run;
https://go.documentation.sas.com/?docsetId=acreldb&docsetTarget=n0v4ma1zb9lu99n1728j279rjcqi.htm&docsetVersion=9.4&locale=en
【讨论】:
以上是关于从 Netezza 数据库创建 SAS 数据集时,SAS“CLI 游标扩展提取错误:数值超出范围”的主要内容,如果未能解决你的问题,请参考以下文章
使用 UNIX SAS 确定 Netezza DISTRIBUTE_ON 键