4

任何人都可以建议将表从 SAS 库传递到 oracle 数据库的语法吗?

下面的示例代码(虽然显然不能以这种方式引用到 WORK 库的连接)

PROC SQL noprint;
connect to ODBC as X (dsn='ALIAS' uid='USER1' pwd='passwd' quote_char='');
exec (CREATE TABLE Test AS
    SELECT * from WORK.MY_SAS_TABLE
    )by X;
disconnect from X;
quit;

此处提出了类似的问题,但似乎与 SQLSERVER 连接而不是 oracle..

4

2 回答 2

7

使用 ODBC libname 引擎或 Oracle libname 引擎设置一个 libref 以指向您的 Oracle 数据库(如果您安装了正确的许可证和软件,这将更快):

libname X oracle username='USER1' password='passwd' path=ORCL;

如果 Oracle 中已存在具有正确列的空表,则可以使用:

proc sql noprint;
  insert into X.test select * from work.my_sas_table;
quit;

如果表不存在,您可以使用数据步骤:


data X.test;
  set work.my_sas_table;
run;
于 2009-08-23T20:34:53.230 回答
4

我有点生疏了,但是如果您将数据库设置为 libref 怎么办?

就像是:

libname X odbc dsn='ALIAS' uid='USER1' pwd='passwd' quote_char='';
data X.test;
    set work.my_sas_table;
run;
于 2009-08-22T22:53:50.563 回答