libreria Mysql_connector

Buenos días,

Estoy realizando un proyecto con un d-duino, que viene siendo un NODEMCU con una pantalla oled. Mi objetivo va a ser leer un dato de un sensor y actualizar un registro en una base de datos. El problema es que no me está actualizando el registro. El Insert desde un gestor de consultas sql (Heidi) funciona, con lo que entiendo que los datos de conexión y sentencia SQL son correctos. El código lo he sacado de este ejemplo
¿Alguien tiene experiencia con esa biblioteca? En los diferentes ejemplos que he visto, aunque no he encontrado muchos, el codigo no difiere del mío... no se cómo enfocar la solución.

Posteo el codigo, he eliminado contraseñas, ip's, y con la parte de la lectura del sensor todavía no me he metido.

Gracias y un saludo

//https://github.com/ChuckBell/MySQL_Connector_Arduino/blob/master/examples/basic_insert_esp8266/basic_insert_esp8266.ino

#include <ESP8266WiFi.h>; //
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>

#include "SSD1306.h" //

SSD1306  display(0x3c, D1, D2);

IPAddress server_addr(X,X,X,X);  // IP of the MySQL *server* here
char user[] = "user";              // MySQL user login username
char password[] = "pass";        // MySQL user login password

// Sample query
char INSERT_SQL[] = "UPDATE sensors set sensors.valor = 0 WHERE sensors.idsensors = 1";

// WiFi card example
char ssid[] = "ssid";         // your SSID
char pass[] = "pass";     // your SSID Password

WiFiClient client; 
MySQL_Connection conn(&client);
MySQL_Cursor* cursor;

void setup () {
 Serial.begin (115200);
 WiFi.begin (ssid, pass);
 Serial.println ("");
 display.init();
 // Wait for connection
 while ( WiFi.status() != WL_CONNECTED ) {
  delay (2000);
  Serial.print (".");
  display.print(".");
 }
 Serial.println ("");
 Serial.print ("Connected to ");
 Serial.println (ssid);
 Serial.print ("IP address: ");
 Serial.println (WiFi.localIP());
 display.clear();
 display.setTextAlignment(TEXT_ALIGN_LEFT);
 display.setFont(ArialMT_Plain_10);
 display.drawString(0, 0, "IP:");
 display.drawString(15, 0, WiFi.localIP().toString());
 display.setTextAlignment(TEXT_ALIGN_LEFT);
 display.setFont(ArialMT_Plain_10);
 display.drawString(0, 11, "SSID:");
 display.drawString(30, 11, ssid);

 cursor = new MySQL_Cursor(&conn);
} 
void loop() { 
    display.setTextAlignment(TEXT_ALIGN_LEFT);
    display.setFont(ArialMT_Plain_10);
    display.drawString(0,22, "C-------------------------------");

    if (conn.connected()){
      cursor->execute(INSERT_SQL);
      display.setTextAlignment(TEXT_ALIGN_LEFT);
      display.setFont(ArialMT_Plain_10);
      display.drawString(0,33, "SQL ENVIADO");
    }
    else {
      display.setTextAlignment(TEXT_ALIGN_LEFT);
      display.setFont(ArialMT_Plain_10);
      display.drawString(0,33, "ERROR ENVIANDO");
    }
      display.setTextAlignment(TEXT_ALIGN_LEFT);
      display.setFont(ArialMT_Plain_10);
      display.drawString(35,44, ".");

    delay(5000);
    display.display();
}