我想在我的C程序中使用mysql API插入计算出来的变量。尽管尝试所有类型的技巧(单引号,双引号,查询占位符),我无法输入数据。所使用的库是:使用c在mysql数据库中插入变量
#include <stdio.h>
#include <stdlib.h>
#include <netdb.h>
#include <netinet/in.h>
#include <math.h>
#include <my_global.h>
#include <mysql.h>
代码的相关位是
MYSQL *con = mysql_init(NULL);
if (mysql_real_connect(con, "localhost", "test", "test123",
"transport", 0, NULL, 0) == NULL)
{
finish_with_error(con);
}
if (mysql_query(con, "INSERT INTO gps_points(vehicle_id,lat,lon,speed) VALUES(unit_id_dec,lat,lon,speed_float)"))
{
finish_with_error(con);
}
mysql_close(con);
我收到以下错误:
Unknown column 'unit_id_dec' in 'field list'
使用的编译选项是:
sudo gcc socketListen.c -o listenSock -lm `mysql_config --cflags --libs`
任何解决方案?
看看http://dev.mysql.com/doc/refman/5.7/en/c- api-prepared-statement-function-overview.html – dbush