[英]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
連接起來。 為此,您可以將輔助變量query
與sprintf
函數結合使用,以構建正確的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.