Как экспортировать таблицу в формат CSV или Excel - PullRequest
9 голосов
/ 15 апреля 2011

Мне нужно экспортировать таблицу оракула в формат файла csv / excel (вместе с заголовками столбцов).Решение через cx_oracle или через sqlplus приветствуется.

Python код из комментария:

con = cx.connect() 
cur = con.cursor() 
printer = cur.execute(sqlcode) 
con.commit() 

Ответы [ 3 ]

12 голосов
/ 15 апреля 2011

возможно использовать модуль CSV (из стандартной библиотеки):

import csv
cursor = connection.cursor() # assuming you know how to connect to your oracle db
cursor.execute('select * from table_you_want_to_turn_to_csv')
with open('output_file.csv', 'wb') as fout:
    writer = csv.writer(fout)
    writer.writerow([ i[0] for i in cursor.description ]) # heading row
    writer.writerows(cursor.fetchall())

Если у вас много данных, разверните fetchall () в цикле.

Счастливые тропы!

2 голосов
/ 15 апреля 2011

для создания файла XLS, используйте модуль xlwt из проекта python-excel .

1 голос
/ 15 апреля 2011

Для решения, отличного от Python, у Тома Кайта есть несколько отличных сценариев для генерации CSV-файлов с использованием PL / SQL (UTL_FILE), SQL * Plus и Pro * C.

...