Вставьте pd.dataframe в teradata через bteq - PullRequest
0 голосов
/ 16 октября 2018

Когда я хочу вставить некоторые данные из фрейма данных pandas в таблицу teradata, я делаю следующие шаги:

  1. сохраняем pd.DataFrame как .csv
  2. записываем.sql файл с .logon, .import vartext из файла, sql вставьте запрос и .logoff и сохраните его локально
  3. , исключите .sql файл с помощью bteq через подпроцесс пакета python
  4. дождитесь, покапроцесс завершается, а затем продолжается со сценарием.

Таким образом, проблема здесь заключается в том, что он на самом деле не сохраняется (например, при локальном размещении некоторых файлов с паролем базы данных) и зависимым справасохранение csv.

Итак, я хотел бы сделать следующее:

  1. создать запрос bteq для внутреннего использования в исходном процессе python без записи чего-либо в локальный файл (нет .csv и нет.sql)
  2. Выполнить этот запрос внутри процесса python

Я знаю, что пакет python teradata уже существует, однако он использует odbc, а не bteq (есть возможность использоватьbteq, но это то же самое с выполнением файла .sql).А на сервере не установлен odbc, скрипт выполняется.

...