【问题标题】:SAS teradata connectionSAS teradata 连接
【发布时间】:2015-04-01 02:47:12
【问题描述】:

我正在使用以下查询将 SAS 与 Teradata 连接起来:

proc sql;
    connect to Teradata (server = ‘WML’ user = ‘******’  password = ‘*******’ mode = Teradata );
quit;

但我收到以下错误:

错误:Teradata 连接:TheUserId、Passowrd 或 Account 无效

我可以使用相同的用户名和密码在 Teradata 中工作。为什么会出现这个错误

【问题讨论】:

  • 与您在 Teradata 中的其他工作方式相比,您在 SAS 中的身份验证机制是什么?
  • 你真的用那些“难看”的引号字符代替了普通的单引号(')或双引号(")字符吗?

标签: sas teradata


【解决方案1】:

您还需要指定 logdb 参数。它是您拥有写入权限的数据库。所以只需尝试将 logdb="yourdatabase" 放在模式之后。

【讨论】:

    【解决方案2】:

    @Rob paller 在评论部分问你,你的身份验证机制是什么,我严重怀疑它可能是 ldap,尝试使用你的用户名(不管它是 @ldap),如下例所示

       proc sql;
       connect to Teradata (server = ‘WML’
       user = ‘myusernamee@LDAP’  password     = ‘*******’ mode = Teradata );
       quit;
    

    【讨论】:

      【解决方案3】:

      使用连接字符串创建一个宏变量,这样以后如果需要,您只需更新 1 行代码。下面的代码应该适合你:

      %let tdconnection=%unquote(user=******  pwd="*******" MODE=Teradata   tdpid=WML); 
      proc sql;
      connect to Teradata (&tdconnection );
      /*your SQL here*/
      disconnect from Teradata;  
      quit;
      

      【讨论】:

        猜你喜欢
        • 2012-01-04
        • 2020-01-21
        • 2023-04-04
        • 2013-11-26
        • 2016-01-04
        • 1970-01-01
        • 2019-12-30
        • 2019-05-24
        • 2016-04-08
        相关资源
        最近更新 更多