Timstamp Feld mit Variable

Installation und Anwendung von Datenbankschnittstellen wie SQLite, PostgreSQL, MariaDB/MySQL, der DB-API 2.0 und sonstigen Datenbanksystemen.
Antworten
Duesentrieb
User
Beiträge: 52
Registriert: Sonntag 16. März 2014, 17:14

Hallo,

im angefügten Codeausschnit möchte ich über eine Variable verschiedene Filter auf das Timestamp Feld setzen.
Wenn ich "YEAR(Datum) = "2020" setze, erhalte ich dei Ausgabe.
Leider bricht die Abfrage ab. Was habe ich falsch gemacht?

Code: Alles auswählen

def Datumabfragen():
    try:
        akt_Jahr = (time.strftime("%Y"))
      
        
        
        connection = mc.connect (host = "192.168.0.200", user = "root", passwd = "", db = "Steuerung")
        cursor = connection.cursor()
        cursor.execute('SELECT YEAR(Datum) as "Jahr_", sum(Laufzeit), Day(Datum) as "Tag" FROM `Wasserstand` WHERE YEAR(Datum) = (%s) GROUP BY Day(Datum)', (akt_Jahr))


        for data in cursor.fetchall():
                print (" Feld1: " + str(data[0]) + " Feld2: " + str(data[1]) + " Feld3: " + str(data[2]))

        
        connection.commit()
        cursor.close()
        connection.close()
        
        
    except:
        print ("Fehler")
Sirius3
User
Beiträge: 17750
Registriert: Sonntag 21. Oktober 2012, 17:20

Als erstes solltest Du die unsinnige „Fehlerbehandlung” komplett löschen. Damit verdeckst Du alle Fehler, auch den Programmierfehler, den Du hier gemacht hast. Nachdem Du das getan hast, solltest Du sehen, welchen Fehler Du gemacht hast.
Duesentrieb
User
Beiträge: 52
Registriert: Sonntag 16. März 2014, 17:14

Besten Dank! - Darauf hätte ich auch kommen können
Es läuft!
Antworten