Datenbank mit Variable aus Python füllen

Hallo,

Ich möchte meine Temperaturmessungen gerne in einer Datenbank speichern. Das ganze System läuft auf einem Raspberry Pi in Python. Wie ich an die Druck und Temperaturdaten hinkomme, weiss ich mittlerweile. Ich habe momentan nur das Problem das bei mir der import von den Zahlen in die Datenbank nicht klappt. Hiereinmal mein Code:

#!/usr/bin/env python
import MySQLdb
db = MySQLdb.connect("localhost", "monitor", "1234", "wetterstation")
curs=db.cursor()
temperature1 = 98    #Momentan meine Variablen, ist später werden dann natürlich die werte aus den Sensoren genommen.
pressure1 = 1001

try:
curs.execute ("INSERT INTO wetterdata values(CURRENT_DATE(), NOW(),  18.2, 18.3)")
db.commit()
print "Data committed"

except:
print "Error: the database is being rolled back"
db.rollback()

So klappt das auch ganz gut, aber sobald ich eben die 18.1 und 18.3 über eine Variable mir rausfische, komme ich zu dem Error.

curs.execute ("INSERT INTO wetterdata (date, time, temperature, pressure) VALUES (CURRENT_DATE(), NOW(), (?), (?))" , (temperature, pressure))

das klappt leider nicht.

So habe ich die Tabelle Created..

CREATE TABLE wetterdata (date DATE, time TIME, temperature NUMERIC, pressure NUMERIC);

Ich bekomme leider auf immer ein error wenn ich die (?) durch %s oder %f oder %d ersetze. Würde mich freuen wenn mir da jemand helfen kann oder mir jemand eine andere Möglichkeit vorzeigt wie man Variablen einfach in eine Datenbank im lokalen Netzwerk bekommt.

Danke, Justin

SQL, Datenbank, Python, Raspberry Pi

Meistgelesene Beiträge zum Thema Python