如何使用选项 symbolgen 在 SAS 库中创建 MACRO 变量
How to create a MACRO variable in SAS library with options symbolgen
我对 SAS 和雪花真的很陌生。如果您认为有合适的方式来描述我的问题,请更正我的问题。
我需要使用以下设置构建 SAS 模块
options symbolgen;
%let SNOW =
"DRIVER = {SnowflakeDSIIDriver};
authenticator = https://xxx;
UID = &user.;
PWD = &pwd;
ROLE = ROLE_&sysuserid;
WAREHOUSE= AAA_BBB_CCC_WH;
DATABASE = XXX;
libname SF odbc complete = &SNOW.";
我面临的问题是如何创建一个 table 不同的用户具有不同的角色可以创建不同的 table 名称而不更改代码。
现在我必须为我创建的每个 table 输入我的名字:
Create or replace table AA_BB.CC_Jeff as /* my name is Jeff*/
(select ...)
我的目标是将 table 创建为:
create table XXX.&SYSUSERID.&PROJ.yyy
&SUSUSERID 应该能够自动将不同的用户名填充到 table 名称中。
首先创建一个有效的语句。所以如果目标是生成这样的语句:
libname SF odbc complete =
"DRIVER = {SnowflakeDSIIDriver};
authenticator = https://xxx;
UID = SF_USER;
PWD = SF_PASS;
ROLE = ROLE_SASUSER;
WAREHOUSE= AAA_BBB_CCC_WH;
DATABASE = XXX;
"
;
然后创建包含更改部分的宏变量,并将示例硬编码值替换为对宏变量的引用。因此,如果有三件事发生变化,您需要三个宏变量。
%let db_user=SF_USER;
%let db_pass=SF_PASS;
%let sas_user=&sysuserid;
libname SF odbc complete =
"DRIVER = {SnowflakeDSIIDriver};
authenticator = https://xxx;
UID = &db_user.;
PWD = &db_pass.;
ROLE = ROLE_&sas_user.;
WAREHOUSE= AAA_BBB_CCC_WH;
DATABASE = XXX;
"
;
我对 SAS 和雪花真的很陌生。如果您认为有合适的方式来描述我的问题,请更正我的问题。
我需要使用以下设置构建 SAS 模块
options symbolgen;
%let SNOW =
"DRIVER = {SnowflakeDSIIDriver};
authenticator = https://xxx;
UID = &user.;
PWD = &pwd;
ROLE = ROLE_&sysuserid;
WAREHOUSE= AAA_BBB_CCC_WH;
DATABASE = XXX;
libname SF odbc complete = &SNOW.";
我面临的问题是如何创建一个 table 不同的用户具有不同的角色可以创建不同的 table 名称而不更改代码。
现在我必须为我创建的每个 table 输入我的名字:
Create or replace table AA_BB.CC_Jeff as /* my name is Jeff*/
(select ...)
我的目标是将 table 创建为:
create table XXX.&SYSUSERID.&PROJ.yyy
&SUSUSERID 应该能够自动将不同的用户名填充到 table 名称中。
首先创建一个有效的语句。所以如果目标是生成这样的语句:
libname SF odbc complete =
"DRIVER = {SnowflakeDSIIDriver};
authenticator = https://xxx;
UID = SF_USER;
PWD = SF_PASS;
ROLE = ROLE_SASUSER;
WAREHOUSE= AAA_BBB_CCC_WH;
DATABASE = XXX;
"
;
然后创建包含更改部分的宏变量,并将示例硬编码值替换为对宏变量的引用。因此,如果有三件事发生变化,您需要三个宏变量。
%let db_user=SF_USER;
%let db_pass=SF_PASS;
%let sas_user=&sysuserid;
libname SF odbc complete =
"DRIVER = {SnowflakeDSIIDriver};
authenticator = https://xxx;
UID = &db_user.;
PWD = &db_pass.;
ROLE = ROLE_&sas_user.;
WAREHOUSE= AAA_BBB_CCC_WH;
DATABASE = XXX;
"
;