sas元数据库用户ID的凭据
在这里,我需要SAS元数据库的用户ID。我不想列出访问元数据的用户。 所以 不是我的问题的解决方案sas元数据库用户ID的凭据,sas,metadata,sas-macro,sas-metadata,Sas,Metadata,Sas Macro,Sas Metadata,在这里,我需要SAS元数据库的用户ID。我不想列出访问元数据的用户。 所以 不是我的问题的解决方案 请帮助获取ODBC库引擎凭据的SAS代码可能如下所示: %let libref=MYLIB; /* get liburi */ data _null_; length lib_uri $256; call missing (of _all_); /* get URI for the particular library */ rc=metadata_getnobj("omsobj:
请帮助获取ODBC库引擎凭据的SAS代码可能如下所示:
%let libref=MYLIB;
/* get liburi */
data _null_;
length lib_uri $256;
call missing (of _all_);
/* get URI for the particular library */
rc=metadata_getnobj("omsobj:SASLibrary?@Libref ='&libref'",1,lib_uri);
call symputx("liburi",lib_uri,'l');
run;
/* query for credentials */
data _null_;
length connx_uri conprop_uri value datasource up_uri schema $256.;
call missing (of _all_);
/* get source connection ID */
rc=metadata_getnasn("&liburi",'LibraryConnection',1,connx_uri);
/* get connection properties */
i=0;
do until (rc2<0);
i+1;
rc2=metadata_getnasn(connx_uri,'Properties',i,conprop_uri);
rc3=metadata_getattr(conprop_uri,'Name',value);
if value='Connection.ODBC.Property.DATASRC.Name.xmlKey.txt' then do;
rc4=metadata_getattr(conprop_uri,'DefaultValue',datasource);
rc2=-1;
end;
end;
/* get SCHEMA */
rc6=metadata_getnasn("&liburi",'UsingPackages',1,up_uri);
rc7=metadata_getattr(up_uri,'SchemaName',schema);
call symputx('SQL_schema',schema,'l');
call symputx('SQL_dsn',datasource,'l');
run;
libname &libref ODBC DATASRC=&sql_dsn SCHEMA=&sql_schema;
%let libref=MYLIB;
/*获取liburi*/
数据为空;
长度为$256;
(全部)呼叫缺失;
/*获取特定库的URI*/
rc=metadata_getnobj(“omsobj:SASLibrary?@Libref='&Libref',1,lib_uri);
调用symputx(“liburi”,lib_uri,'l');
跑
/*查询凭据*/
数据为空;
长度connx_uri conprop_uri值datasource up_uri schema$256。;
(全部)呼叫缺失;
/*获取源连接ID*/
rc=metadata_getnasn(“&liburi”,“LibraryConnection”,1,connx_uri);
/*获取连接属性*/
i=0;
干到(rc2So..您的查询是什么?“库的用户ID”没有意义..您是指哪些用户/组可以访问该库吗?不,我是指用于访问库的身份验证凭据。甚至服务器名称等服务器详细信息也会有所帮助。我找到了填充库架构详细信息的方法。除此之外,我还要列出服务器名称。您可以在SAS管理控制台中找到库的服务器详细信息。右键单击库名称并选择“属性”。您实际要实现的是什么?所需的身份验证详细信息将根据您正在配置的库的类型和使用的安全模型而有所不同(例如IWA)