【问题标题】:SAS Access Database Export : Connection failedSAS Access 数据库导出:连接失败
【发布时间】:2016-08-22 07:27:36
【问题描述】:

我正在尝试以“.mdb”格式(Access 数据库)将 SAS 数据集导出到我的本地。我正在使用 Proc Export 语句,但它给出了错误“连接失败”

另外,当我尝试使用 EG“导出”功能(在编辑器窗口顶部)来实现这一点时,我使用了“导出 xyz 作为项目中的一个步骤”,虽然 excel、txt 等我在那里找不到访问格式选项可用。

我执行了 Proc Setinit,发现安装了 SAS/Access interfact to PC Files。

我正在使用 SAS 9.4、SAS EG 7.12 和 Access 2013。我使用的代码如下 -

     proc export data=test 
    dbms= ACCESS
     outfile="M:\SASAnalytics\Test\test1.mdb" 
    replace;
    run;

当我尝试使用

分配库名时
    libname mdb "M:\AFolder\BFolder\C.mdb"

我收到此错误 - 错误:连接:未注册类。

我猜,代码中没有任何内容,但未启用 SAS 访问导出或其他内容。请提出可能是什么问题以及如何解决?

【问题讨论】:

    标签: ms-access sas export


    【解决方案1】:

    我假设您的 SAS 安装是 64 位,而 MS Office 是 32 位。如果是这样,您必须使用 PC Files 作为 SAS 和 Office 之间的代理服务器。 dbms=ACCESS 使用标准 LIBNAME 作为连接。在您的情况下,需要dbms=ACCESSCS。此外,对于 Access 文件,您必须使用 proc 导出中的 DATABASE= statment 和表名使用 OUTTABLE= 选项指定文件位置。完整代码:

    proc export data=sashelp.class 
       dbms= ACCESSCS
       outtable="Class"
       replace;
       database = "C:\Class.mdb";
    run;
    

    更多访问特定选项:Microsoft Access Database Files

    【讨论】:

    • 谢谢你 fl0r3k 。但是上面的代码给了我“错误:无法连接到服务器:。”错误。如果我们想在 SAS EG 中使用“导出”向导,那么我也看不到 Access 导出选项。你能建议这是什么原因吗?我该如何启用它?
    • 另外,我检查了 SAS 和 Office 都是 64 位的。
    • 当我尝试使用 libname mdb "M:\AFolder\BFolder\C.mdb" 分配 libname 时。我收到此错误 - 错误:连接:未注册类
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-12
    • 2023-03-02
    • 2020-05-05
    • 2011-12-05
    相关资源
    最近更新 更多