Netezza的格式?并且错误消息是数据已损坏

时间:2013-09-12 17:26:35

标签: sas netezza

我有关于我的错误消息的以下问题。我尝试先格式化然后插入到dw中使用。

26         proc sql   noprint;
27             connect to netezza  (user=jfan0001 pwd=Xw9b548s SERVER=bsnet01z database=PDWAPPRP  connection=global autocommit=yes);
29             execute ( create temporary table STDY 30                              ( SUB_NUM char(13) )) by netezza;
31             execute ( create temporary table ANTIB 32                              ( NDC char(11) )) by netezza;
33          
34         
35          
36             insert into dw.STDY (bulkload=YES   bl_options='logdir "."') 
37                         select SUB_NUM from pulllist       
38                          where flag='study';


ERROR: The open failed because library member DW.STDY.DATA is damaged.
NOTE: Data file SPARC.PULLLIST.DATA is in a format that is native to another host, or the file encoding does not match the session 
  encoding. Cross Environment Data Access will be used, which might require additional CPU resources and might reduce 
  performance.

1 个答案:

答案 0 :(得分:0)

表格DW.STDY是否在您当前的主机(服务器/ PC)上创建,但是是从其他操作系统复制还是由其他版本的SAS创建?

检查表格属性:

proc sql;
select libname, memname, datarep, datarepname, encoding from dictionary.tables
where libname ='DW'
and memname = 'STDY'
;
quit;

如果datarep不是NATIVE,则必须重新创建表才能修改它。 你可以重新创建它,例如通过复制到WORK并返回DW。

proc copy noclone in=DW out=WORK index=yes constraint=yes;
select STDY;
run;

proc copy in=DW out=WORK index=yes constraint=yes;
select STDY;
run;

请注意第一个proc副本中的NOCLONE选项以删除原始数据表示。