Forum
>>
Principianti
>>
Definizione query SQL
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
Scritto da tronicman |
2020-02-22 01:42:28 - Definizione query SQL
|
Buonasera a tutti,
sto cercando di immagazzinare su db sql i dati provenienti dal mio server mqtt, se faccio un print delle variabili riesco a vederle a monitor ma non riesco a fare correttamente la query ------------------------------------------------------ ## leggo la configurazione config = ConfigParser.ConfigParser() config.read('prova_mqtt.ini') ## apro la connessione con il database db = mariadb.connect(host=config.get('sql','host'), user=config.get('sql','user'), password=config.get('sql','password'), database=config.get('sql','database$ ## per evitare il caching delle query db.autocommit = True dbcur = db.cursor() ## callback per la connessione def mqtt_connect(client, userdata, flags, rc): print("Connesso con successo") client.subscribe("casa/sensori") ## callback per la ricezione dei messaggi def mqtt_message(client, userdata, message): node_data = str(message.payload) data = json.loads(node_data) Sensor = data['sensor'] print Sensor print Motion1 query = "INSERT INTO devicestatus(value) VALUES (%s)" dbcur.execute(query, Sensor) ------------------------------------------------------------ ricevo questo messaggio di errore: dbcur.execute(query, Sensor) NameError: name 'Sensor' is not defined Com'è possibile che riesco a stamparla a video se non fosse definita ??? Grazie in anticipo --- Ultima modifica di tronicman in data 2020-02-22 01:43:15 --- |
|
Scritto da Maxwell |
2020-03-09 09:44:56 - Re: Definizione query SQL
|
Prova a definire la variabile come variabile globale:
Sensor = [Valore a tua scelta che non interferisca con il resto dello script] def mqtt_message(client, userdata, message): global Sensor node_data = str(message.payload) data = json.loads(node_data) Sensor = data['sensor'] print Sensor print Motion1 Se non funziona prova ad inserire Sensor nei parametri della funzione: def mqtt_message(client, userdata, message, Sensor): global Sensor node_data = str(message.payload) data = json.loads(node_data) Sensor = data['sensor'] print Sensor print Motion1 --- Ultima modifica di Maxwell in data 2020-03-09 09:47:19 --- --- Ultima modifica di Maxwell in data 2020-03-09 09:47:43 --- |
Pagina: 1
Esegui il login per scrivere una risposta.