簡體   English   中英

將Arduino變量值插入MySQL表

[英]Insert Arduino variable value into MySQL table

我試圖從Arduino到MySQL數據庫表中插入一個變量值,我嘗試了不同的方法,但是沒有成功。

有人可以幫我下面的這段代碼嗎?

void loop() {

 unsigned long var =(millis()/1000);

 if(var%30 == 0)
  {

  var = (var==0)?1:var;

  char INSERT_SQL[] = "INSERT INTO Meter.consumption VALUES ("var");";

  MySQL_Cursor *cur_mem = new MySQL_Cursor(&conn);

  cur_mem->execute(INSERT_SQL);

  delete cur_mem;

  }  

感謝所有答案...

替換這個:

  char INSERT_SQL[] = "INSERT INTO Meter.consumption VALUES ("var");";

有:

  char INSERT_SQL[] = "INSERT INTO Meter.consumption VALUES ('var');";

問題是您需要使用SQL命令將變量var連接起來。 為此,您可以將輔助變量querysprintf函數結合使用,以構建正確的INSERT命令。

替換為:

char INSERT_SQL[] = "INSERT INTO Meter.consumption VALUES ("d");";
MySQL_Cursor *cur_mem = new MySQL_Cursor(&conn);
cur_mem->execute(INSERT_SQL);

附:

char INSERT_SQL[] = "INSERT INTO Meter.consumption VALUES (%d);";
char query[255];
sprintf(query, INSERT_SQL, var);
MySQL_Cursor *cur_mem = new MySQL_Cursor(&conn);
cur_mem->execute(query);

請注意,盡管sprintf是Arduino中未記錄的函數,但其​​工作方式與C語言中可用的類似。您可以在此處查看更多詳細信息。 由於它是內置函數,因此無需在代碼中包含任何其他標頭。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM