在查询生成器中读取未提交的SAS企业指南

在查询生成器中读取未提交的SAS企业指南,sas,enterprise-guide,Sas,Enterprise Guide,在从查询生成器运行查询之前,我试图找到一种方法,将隔离级别更改为readuncommitted(RU),因为有时需要从操作表获取数据 《SAS企业指南》中有这样做的方法吗?我知道在选项菜单中,在任务和查询代码之前有一个运行自定义代码的地方,但我不知道在这里输入什么来实现这一点 谢谢 在定义库的自动加载程序中;您只需要知道要查询的SQL库的名称。然后执行以下步骤: 在您的EG项目:创建一个新程序:File/new/program中,这将向您的流中添加一个新程序 如果SQL库的libname称为'S

在从查询生成器运行查询之前,我试图找到一种方法,将隔离级别更改为readuncommitted(RU),因为有时需要从操作表获取数据

《SAS企业指南》中有这样做的方法吗?我知道在选项菜单中,在任务和查询代码之前有一个运行自定义代码的地方,但我不知道在这里输入什么来实现这一点


谢谢

在定义库的自动加载程序中;您只需要知道要查询的SQL库的名称。然后执行以下步骤:

  • 在您的EG项目:创建一个新程序:File/new/program中,这将向您的流中添加一个新程序
  • 如果SQL库的libname称为'SQL',并且要查询的表为'ORDERS';您可以使用与MS-SQL非常相似的
    PROC SQL
    ,然后单击run或F8

    proc-sql;
    选择id,sum(sales)作为总销售额
    从SQL.ORDERS
    按id分组
    ;
    退出

  • 示例

    步骤1:

    步骤2:


    答案是什么?这要看情况而定。强制未提交读取的部分在libname定义中配置。如果您的libname是在元数据中定义的,那么就不能在EG中定义(至少不使用向导),您需要SMC或DI studio中的库管理器

    如果libname是以编程方式定义的,那么语法取决于您使用的数据库的风格。对于SQL Server,您需要添加以下选项:
    Read\u Isolation\u Level=RU


    请注意,这可能意味着您读取了“脏数据”(请参见此社区)。

    您查询的是什么-SAS数据集、SQL Server、Hadoop等。?它是如何在SAS中定义的?您是否使用元数据定义库?还是您自己定义库或连接?这是用于查询SQL server;我已经在Windows中将连接添加到我的ODBC管理员,然后在服务器连接上运行自动代码来定义库(如果有意义的话)。如果没有,很抱歉-我还是SAS的新手。你所做的听起来不错,请提供一个屏幕截图或更多关于你在EG项目中所做的细节。我将对您的问题给出一个初步答案。在服务器连接上加载的代码(从sas中的选项)如下-
    %包括“y:\autoexec.sas”
    该文件包括以下连接-
    libname MS_SQL ODBC datasrc=“MS SQL Server connection”schema=dbo我可以将Read\u Isolation\u Level=RU添加到该代码的末尾以实现我要查找的内容吗
    libname MS_SQL ODBC datasrc=“MS SQL Server Connection”schema=dbo Read_Isolation_Level=RU