【问题标题】:Snowflake and SAS Connect sql雪花和 SAS Connect sql
【发布时间】:2020-11-24 13:54:36
【问题描述】:

我想知道如何解决从 SAS 到雪花的连接中的这个错误。通过直接 ODBC 它可以工作。通过 SAS,它给了我以下错误:

CLI 准备错误:无法执行 SELECT。此会话没有当前数据库。调用“USE DATABASE”,或使用限定名称。

Successful ODBC test in iODBC

SAS Log messages

【问题讨论】:

  • 您是否在从 SAS 到 Snowflake 的连接字符串中指定数据库?您看到的问题意味着您不是,或者有错字。我会先检查一下。
  • 您能否在问题文本中包含完整的连接字符串(作为 SAS 代码,所以像 libname whatever odbc (... ) ; 这样的东西)?谢谢,欢迎!

标签: sas snowflake-cloud-data-platform connect


【解决方案1】:

在 SQL 查询中,Snowflake 需要知道您引用的任何表的数据库和架构。您需要将此信息包含在连接定义或 SQL 中。如果您在多个 DB/Schema 中引用表,那么任何不在您包含在连接中的 DB/Schema 中的表都需要完全限定。 假设您的连接仅连接到您的 Snowflake 帐户,没有 DB/Schema 信息,那么您的 SQL 将需要如下所示:

select count(*) from snow.db_name.schema_name.LA_DNA_PREPAD_BASE_SNAP

【讨论】:

    【解决方案2】:

    在 ODBC 中,您执行了以下操作:

    select * from **STRATA_DW**.LANDING.LA_DNA_PREPAID_BASE_SNAP;
    

    在 SAS 中你这样做了:

    Select * from LANDING.LA_DNA_PREPAID_BASE_SNAP
    

    你能看出区别吗?您从未在 SAS 查询中引用数据库名称...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多