2009-08-22 3 views
4

Может ли кто-нибудь прокомментировать синтаксис для передачи таблицы FROM из библиотеки SAS В базу данных оракула?SAS для Oracle ODBC - передача таблицы SAS В базу данных

пример кода ниже (хотя очевидно, что подключение к работе библиотеки нельзя ссылаться таким образом)

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; 

Аналогичный вопрос был задан here но, кажется, относится к соединению SQLSERVER, а не оракул ..

ответ

7

Настройка libref, чтобы указать на базу данных Oracle, либо с помощью Имя_библиотеки двигателя ODBC или Имя_библиотеки двигатель 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; 
4

Я немного ржавый, но что, если вы настроите свою базу данных как libref?

Что-то вроде:

libname X odbc dsn='ALIAS' uid='USER1' pwd='passwd' quote_char=''; 
data X.test; 
    set work.my_sas_table; 
run; 
Смежные вопросы