获取所有libref的服务器信息

时间:2018-05-30 11:23:59

标签: sas enterprise-guide

如何在libref中为我提供可用的所有库的变量server_idSAS(或任何服务器信息)的表格?

我的目标是总结所有这些库的数据物理位置,以便在从不同服务器获取数据时编写有效的查询。

3 个答案:

答案 0 :(得分:2)

查看视图SASHELP.VLIBNAM(或使用PROC SQL时的DICTIONARY.LIBNAMES)中可用的信息。

这是一个实用程序宏,它从该视图中为给定的libref提取引擎,主机和架构。我已经将它用于TERADATA,ORACLE和ODBC引擎。 dblibchk.sas

答案 1 :(得分:1)

根据Tom的代码和建议,我使用此代码构建了我需要的表:

PROC SQL;
SELECT distinct libname, engine, path,
CASE WHEN engine in('BASE','V9') THEN 'SAS' ELSE catx('_',engine,path) END AS server
FROM DICTIONARY.LIBNAMES ;
QUIT;

答案 2 :(得分:1)

有一些表可以帮助你像汤姆提到的图书馆SASHELP。 您还可以使用VTABLE将具有库和VCOLUMN将具有从库到表到列的详细信息的所有表,以及使用的数据类型和它的长度。 它们的工作方式有点像来自information_schema数据库的SQL数据。

或者,在数据集上使用proc内容也将返回其所有组件,您可以将其放在表或宏变量中。 希望这有帮助!