Ich versuche, eine Funktion in Python zu schreiben, die eine SQL-Abfrage an die Datenbank sendet, die abgerufenen Daten in einem Python-Dataframe speichert und für eine Anzahl von in Excel auf einer benannten Registerkarte ausgibt Abfragen. Ich habe es funktioniert, wenn die Namen für die "Verknüpfung" zuvor manuell ausgeführt wurden, aber ich kann nicht neue "Verknüpfung" Namen in jeder Instanz des Funktionsaufrufs schreiben.NameError: Name ist nicht definiert Funktion
Kann mir bitte jemand helfen, dieses Problem zu debuggen?
Hier ist der Python-Code:
import cx_Oracle
import pandas as pd
import xlwt as xls_write
writer = pd.ExcelWriter('<Excel File>')
def executeSQL(shortcut, tab, SQL):
conn = cx_Oracle.connect('<Connection String')
cursor= conn.cursor()
cursor.execute (SQL)
shortcut = pd.DataFrame(cursor.fetchall())
shortcut.columns = [rec[0] for rec in cursor.description]
cursor.close()
conn.close()
shortcut.to_excel(writer, tab, index=False)
executeSQL(tab1, 'Tab 1', "<SQL Statement>")
executeSQL(tab2, 'Tab 2', "<SQL Statement>")
executeSQL(tab3, 'Tab 3', "<SQL Statement>")
executeSQL(tab4, 'Tab 4', "<SQL Statement>")
executeSQL(tab5, 'Tab 5', "<SQL Statement>")
Es gibt keine Variable mit dem Namen ist 'name', während der Fehler sich selbst ist Ich glaube nicht, dass der Fehler in diesem Code-Snippet liegt, das Sie oben gepostet haben. –