Есть нетривиальная задача: некий SQL запрос посредством Python вывести в csv файл в табличку.
и там уже переименовать названия столбцов в новые имена (в самом SQL нельзя это сделать, ибо название очень длинное и изобилует всякими пробелами и скобками)
Сам мой запрос выглядит так:
import cx_Oracle hostname = 'oracleDB' port = 1521 SID = 'SID' dsn_tns = cx_Oracle.makedsn(hostname, port, SID) connection = cx_Oracle.connect('username', 'password', dsn_tns) cursor = connection.cursor() mySQLQuery = (""" SQL REQUST (name1, name2, name3, empl) """) cursor.execute(mySQLQuery) results = cursor.fetchall() # SQL query select for row in results: name1 = row[0] name2 = row[1] name3 = row[2] empl = row[3] print("DataID :" + str(name1) + " SomeProcess " + str(name2) + " SomeFunction " + str( name3) + " LastNameEng " + str(empl)) import pandas import csv cursor.execute(mySQLQuery) with open("output.csv", "w", newline='') as outfile: writer = csv.writer(outfile, quoting=csv.QUOTE_NONNUMERIC) writer.writerow(col[0] for col in cursor.description) for row in cursor: writer.writerow(row)
SQL запрос успешно проходит, csv успешно создается, но как мне переменовать столбец ?
Спасибо
PS. конечный csv выглядит так:
DATAID SomeProcess Some_FUNCTION LAST_NAME_ENG
00000000 process name function name name
00000000 process name function name name
00000000 process name function name name
00000000 process name function name name
00000000 process name function name name