Psycopg2 mit Platzhalterzeichen verursacht TypeError

erzeit versuche ich, eine Datenbank zu durchsuchen, um bestimmte Ereignisse zu erfassen. Meine Anfrage ist als solche

SELECT * FROM events WHERE summary ILIKE E'%test%' AND start_time > '2010-10-01'

Simply put Ich brauche die Abfrage, um eine Datenbank mit Kalenderereignissen zu durchsuchen und alles mit einer Zusammenfassung mit "test" und nach Beginn dieses Monats zurückzugeben.

Dies gibt die erwarteten Ergebnisse zurück, wenn sie über die Datenbankbefehlszeile abgefragt werden. Wenn ich jedoch versuche, es in meinem Python-Skript mit psycopg2 als solches zu verwenden:

cursor.execute("SELECT * FROM events WHERE summary ILIKE E'%test%' AND start_time > %(begin)s ", {'begin' : datetime.datetime(2010,10,1) })

Ich erhalte einen Tippfehler

*** TypeError: 'dict' object does not support indexing

Das anfängliche Googeln hört sich so an, als ob ich meine Platzhalter verwende. Ich könnte mich jedoch irren und mir fehlt wahrscheinlich etwas Einfaches, das ich nicht sehe. Hoffentlich kann ein frisches Paar Augen aus der Community meine Schwachsinnigkeit korrigieren;)

Antworten auf die Frage(4)

Ihre Antwort auf die Frage