SAS в Oracle ODBC - передача таблицы SAS В базу данных

StackOverflow https://stackoverflow.com/questions/1316609

  •  19-09-2019
  •  | 
  •  

Вопрос

Кто-нибудь может, пожалуйста, посоветовать синтаксис для передачи таблицы ИЗ библиотеки SAS В базу данных Oracle?

пример кода ниже (хотя очевидно, что на подключение к РАБОЧЕЙ библиотеке нельзя ссылаться таким образом)

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..

Это было полезно?

Решение

Настройте ссылку libref, указывающую на вашу базу данных Oracle, либо с помощью ODBC libname engine, либо Oracle libname engine (что будет быстрее, если у вас установлена соответствующая лицензия и программное обеспечение).:

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;

Другие советы

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

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

libname X odbc dsn='ALIAS' uid='USER1' pwd='passwd' quote_char='';
data X.test;
    set work.my_sas_table;
run;
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top