DICTIONARY.MEMBERS–关于SAS逻辑库成员的一般信息
DICTIONARY.TABLES–关于表的详细信息
DICTIONARY.VIEWS–关于所有数据视图的详细信息
DICTIONARY.CATALOGS–关于目录条目的信息
DICTIONARY.COLUMNS–关于所有表中的所有列的详细信息
DICTIONARY.INDEXES–表定义的索引
DICTIONARY.TABLE_CONSTRAINTS–所有表的完整性约束
DICTIONARY.CHECK_CONSTRAINTS–检查所有的约束
DICTIONARY.REFERENTIAL_CONSTRAINTS–所有表的参照约束
DICTIONARY.CONSTRAINT_COLUMN_USAGE–完整性约束引用的列
DICTIONARY.CONSTRAINT_TABLE_USAGE–使用完整性约束的表
DICTIONARY.MACROS宏变量名称和值
DICTIONARY.OPTIONSSAS系统选项的当前设置
DICTIONARY.TITLES当前分配给标题和脚注的文字
DICTIONARY.EXTFILES 当前分配的文件引用名
以下以批量重命名变量名为例。
/*第一步获取需要操作的变量数量,将该值存入宏变量中*/ proc sql ;
select name
from dictionary.columns
where libname='SASHELP' and
upcase(memname)='CLASS';
%let Rows=&SQLOBS;/*&SQLOBS为系统在运行SQL步后自定义的宏变量,After the first query, SQLOBS contains the number
of rows (tiers).
*/
/*%put &Rows; */
/*第二步获取原有表中变量的名字,并存入宏变量数组*/
proc sql noprint;
select name into :var1-:var&Rows
from dictionary.columns
where libname='SASHELP' and
upcase(memname)='CLASS';
/* %put &var1 &var2;*/
quit;
/* 第三部,修改表内变量的名成,建议另外创建一张表,而不是修改原有表内的变量名 */
data test;set sashelp.class;run;
%macro rename;
%Do i=1 %to &Rows;
data test(rename=(&&var&i=%SYSFUNC(cat(&&var&i, &i))));
set test;
run;
%end;
%Mend rename;
%rename



雷达卡



京公网安备 11010802022788号







