SAS 9.2无限期运行Oracle查询
我正在使用SAS for windows 9.2对Oracle数据库运行一个相当大的查询。这个查询非常大,在中,我在WITH子句中编写了一个子查询,并使用了4次。这在SQL PLUS和SQL Developer上运行良好,但当我使用SAS运行它时,程序在20分钟后挂起,我甚至看不到日志窗口。我从未使用过SAS,也不知道如何继续,但尝试了以下选项:SAS 9.2无限期运行Oracle查询,oracle,sas,Oracle,Sas,我正在使用SAS for windows 9.2对Oracle数据库运行一个相当大的查询。这个查询非常大,在中,我在WITH子句中编写了一个子查询,并使用了4次。这在SQL PLUS和SQL Developer上运行良好,但当我使用SAS运行它时,程序在20分钟后挂起,我甚至看不到日志窗口。我从未使用过SAS,也不知道如何继续,但尝试了以下选项: 我创建了一个SAS代码文件,并从windows批处理文件运行它,希望将日志写入windows文件系统,但即使这样也可以运行,而且我没有看到任何写入日
- 我创建了一个SAS代码文件,并从windows批处理文件运行它,希望将日志写入windows文件系统,但即使这样也可以运行,而且我没有看到任何写入日志文件的内容
谢谢我将分为两点: 1) 在SAS中运行现有Oracle SQL查询而不使用SAS: 最好的方法是将Oracle SQL代码嵌入所谓的PROC SQL显式传递:
proc sql;
connect to oracle as db1 (user=user1 pw=pasw1 path=DB1);
create table test_table as
select *
from connection to db1
( /* here we're in oracle */
select * from test.table1 where rownum <20
)
;
disconnect from db1;
quit;
相反的选项被缓冲
要查找SAS会话中使用的配置文件,请运行以下命令:
proc options option=config;run;
然后在配置文件的单独一行中输入上面的选项。是的,我正在使用proc sql和oralce odbc连接运行查询。我尝试使用工具-->Otions-->系统更改LOGPARM值,但由于某些原因,在选择“修改值”时不会发生任何变化。您只能在启动SAS程序时定义LOGPARM选项。必须在配置文件中或作为命令行选项进行设置。@BobDuell能否请您详细说明设置LOGPARM选项。我在配置文件中没有看到这个选项。如何使用SAS命令行设置此设置?你能告诉我吗?请看瓦萨修改后的答案;要设置LOGPARM选项,需要将该行添加到配置文件中,或者作为批处理脚本的命令行选项。但这可能不是你的问题。请显示您的代码。我昨晚离开了查询,看到一条错误消息“Windows日志已满”,然后通过谷歌搜索在配置文件中设置-dmsoutsize 99999和-dmslogsize=999999。现在我可以运行查询了。请发布完整的现有SAS程序(PROC SQL部分)。您下面的评论说您正在使用ODBC访问方法,可能是因为您没有SAS/access到Oracle的许可证;如果您正在执行选择操作,则输出可能会进入您的输出窗口,该窗口已满,SAS可能会提示您一条消息。
proc options option=config;run;