在一个C项目中,我试图将值插入mysql数据库(beaglebone black上的Linux debian)。 当我在数据库中插入常量时,代码工作正常,但是我无法弄清楚如何获取日期/时间和双精度数字(温度)变量。 已经花了一个星期,但似乎无法弄清楚,因此任何见识都会受到赞赏。

我尝试过的所有杂物都以编译错误结束,数据库为null或为零。 我想我快要关闭了……但是很明显缺少某些内容,可能在INSERT INTO行中?

char buf[LEN];
time_t curtime;
struct tm *loc_time;

curtime = time (NULL);

loc_time = localtime (&curtime);


strftime (buf, LEN, "%Y-%m-%d" " " "%X", loc_time);
fputs (buf, stdout);


MYSQL *con = mysql_init(NULL);

if (con == NULL)
{
   fprintf(stderr, "mysql_init() failed\n");
   exit(1);
}

if (mysql_real_connect(con, "localhost", "user", "pass", "TempDB", 0, NULL, 0) == NULL) 
{
   finish_with_error(con);
}   

if (mysql_query(con, "CREATE TABLE IF NOT EXISTS TempMeas(MeasTime DATETIME, Temp DOUBLE)"))
{
    finish_with_error(con);
}

if (mysql_query(con, "INSERT INTO TempMeas(MeasTime, Temp) VALUES('%d', '%d')", buf, j))
{    
    finish_with_error(con);
}

mysql_close(con);

exit(0);

#1楼 票数:1 已采纳

如果要在SQL中插入实际的日期和时间,可以使用sql进行:

INSERT INTO TempMeas(MeasTime, Temp) VALUES(now(), 'other value');

您可以通过以下方式获得其他值:

#include<string.h>      # needed for sizeof()

/* all the other stuff */

char query1[999];
int num = sprintf(query1, "INSERT INTO TempMeas(MeasTime, Temp) VALUES(now(), '%d');", j);
if (num > sizeof(query1))
{
  printf("Error: Query too long.\n");
  exit (1);
}
if (mysql_query(con, query1))
{
  printf("Error: mysql_query failed.");
  exit (1);
}

已更改,以使query具有定义的大小,并检查实际查询是否适合我们的char query[999]

  ask by graceyj20 translate from so

未解决问题?本站智能推荐:

2回复

有麻烦通过php变量通过php插入mysql数据库吗?谁能告诉我我在做什么错?

Register.php 页面运行无错误,但未显示在数据库中。我输入数据并单击Submit,这使我返回到页面无错误,但信息从未插入到数据库中。 正如我检查过的,数据库连接也很好。 但是下面是数据库的导出。 在php myadmin中用该密码创建了用户,所以我知道这很好。
3回复

声明了php变量,但不会插入数据库

在我的一个脚本中,php $ _POST正确地声明为变量。 当我回显该变量时,它会正确显示,但是,当我检查数据库时,它不会正确插入。 它显示为空白。 因此,我的猜测是变量不是问题,因为可以正确地对其进行回调。 我不知道插入时是什么问题。 如果需要,这是一个twilio应用程序,因此该
2回复

将javascript变量发送到Mysql数据库

我正在尝试创建一个基本表单,用户可以在其中输入他的名字,评论并单击提交按钮。 当用户单击“提交”时,其名称,评论以及地理位置(经度+纬度)都存储在数据库中。 我只有一个问题:如何将其地理位置的javascript变量存储到数据库中? 我有两个php文件。 Iamhere.php(获取数
4回复

简单地将变量PHP插入MySQL

我有一些无法正常工作的代码。 当我运行代码时,没有出现错误,但users表仍然为空。
1回复

MYSQL插入变量/更新表

我对 MYSQL 还很陌生。 我有3张桌子表.... 账户行.... id : rp_total 表...研究行.... research_uid:成本表...completed_research ROWS.... id : research_uid 我正在尝试自动运行一个脚本,该脚本将查找未完成所
2回复

MySQL插入查询中的用户定义变量

我只是想知道是否可以将我的变量用于插入查询? 我将在表中插入一条新记录。 我表上的主键是数值( int )。 要赋予唯一值,我需要从表中获取最新的键( MAX (menuId) ),然后将该值加1。这是我的代码: MySQL变量仅在存储过程中允许吗? 提前致谢。
1回复

使用Python插入变量MySQL,不工作

我想将变量bob和dummyVar插入到我的表logger 。 现在我可以告诉所有我应该做的就是,以下我所拥有的,但是这根本不会在我的表中插入任何东西。 如果我硬编码应该写的内容(使用'example'然后它将示例写入表中,那么我的连接和插入语法在这一点上是正确的)。 任何帮助将不仅仅是赞
2回复

将变量插入mysql表不起作用

我正在尝试将一个变量插入到mysql表中,但它没有做我想要的(没有错误,它根本不起作用) 任何人都可以帮我如何将$string插入表tablename? 我试过更换???? with ($string) , (".$string.") , $string ,但是所有这些都没有将$stri