Conexion arduino-MySQL

Hola :), siempre he intentado no molestar con temas de este tipo a la comunidad pero hay algo que no me deja avanzar.

TEMA:
Quiero enlazar unos sensores de proximidad a una base de datos usando un arduino wifi9822 v.1.1
Ya me conecte a mi red y tambien a la base de datos, el problema es el siguiente:

En char INSART_SQL [] = viene la funcion SQL que vas a declarar en la base de datos, mientras con el INSERT se agrega los campos a utilizar y los values, en el UPDATE se necesita que en mismo escrito se agrege el valor a agregar. Pero para eso tendria que quitar las comillas de texto literal (las "....") por la variable a poner y despues volver a poner las comillas para terminar la sensencia, pero ya no sirve la funcion. No se si se me esta escapando una forma de agregar la variable pero sin tener que quitar las comillas

HELP ME PLEASE :frowning:

//#include <DHT.h>
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>
#include <ESP8266WiFi.h>
#include <WiFiClient.h>

#define sensorPin1 0

//#define sensorPin2 D2
//#define typeDHT DHT11
//DHT dht(sensorPin1, typeDHT);

char ssid[] = "*********";                 // Network Name
char pass[] = "*********";                 // Network Password
byte mac[6];

WiFiServer server(80);
IPAddress ip(192, 168, 1, 2);
IPAddress gateway(192, 168, 1, 2);
IPAddress subnet(255, 255, 255, 0);

WiFiClient client;
MySQL_Connection conn((Client *)&client);


IPAddress server_addr(192, 168, 1, 68);          // MySQL server IP
char user[] = "*********";           // MySQL user
char password[] = "*******";       // MySQL password

void setup() {
  int soil_hum = 0;
  Serial.begin(9600);

  pinMode(sensorPin1, INPUT);
  //pinMode(sensorPin2, INPUT);

  Serial.println("Initialising connection");
  Serial.print(F("Setting static ip to : "));
  Serial.println(ip);

  Serial.println("");
  Serial.println("");
  Serial.print("Connecting to ");
  Serial.println(ssid);
  WiFi.config(ip, gateway, subnet); 
  WiFi.begin(ssid, pass);

  while (WiFi.status() != WL_CONNECTED) {
    delay(200);
    Serial.print(".");
  }

  Serial.println("");
  Serial.println("WiFi Connected");

  WiFi.macAddress(mac);
  Serial.print("MAC: ");
  Serial.print(mac[5],HEX);
  Serial.print(":");
  Serial.print(mac[4],HEX);
  Serial.print(":");
  Serial.print(mac[3],HEX);
  Serial.print(":");
  Serial.print(mac[2],HEX);
  Serial.print(":");
  Serial.print(mac[1],HEX);
  Serial.print(":");
  Serial.println(mac[0],HEX);
  Serial.println("");
  Serial.print("Assigned IP: ");
  Serial.print(WiFi.localIP());
  Serial.println("");

  Serial.println("Connecting to database");

  while (conn.connect(server_addr, 3306, user, password) != true) {
    delay(200);
    Serial.print ( "." );
  }

  Serial.println("");
  Serial.println("Connected to SQL Server!");  

}

void loop() {

  int soil_hum = 1024 - analogRead(sensorPin1);
  //float t = dht.readTemperature();

  //Serial.println(t);
char INSERT_SQL[] = "update Taller.area1 set capacidad=/soil_hum/  where Notambo=1;";
/*___________________________________________^Aqui arriba es^*/
char query[128];
  delay(3000); //10 sec
  MySQL_Cursor *cur_mem = new MySQL_Cursor(&conn);
  sprintf(query, INSERT_SQL, soil_hum);
  //sprintf(query, INSERT_SQL, soil_hum, t);
 
  cur_mem->execute(query);

  delete cur_mem;
  Serial.println("Recording data.");
  Serial.println(query);

}

sprintf toma una cadena con formato, puedes ver el formato aquí

char INSERT_SQL[] = "update Taller.area1 set capacidad=%d  where Notambo=1;";
/*___________________________________________^Aqui arriba es^*/
char query[128];
  delay(3000); //10 sec
  MySQL_Cursor *cur_mem = new MySQL_Cursor(&conn);
  sprintf(query, INSERT_SQL, soil_hum);
 
  cur_mem->execute(query);

Efectivamente como te dice harkonnen puedes usar la función sprintf() que crea un string añadiendo uno o varios argumentos.

sprintf(INSERT_SQL, "update Taller.area1 set capacidad=%d  where Notambo=1;", soil_hum);