mysql - C API : Using Variables In mysql query

标签 mysql c api date

我试图在此函数中调用我的 str 日期变量:

int main(int argc, char **argv)
{ 
  int status = 0;   
  char query[300], data[15], hora[10];
  strDataHora(data, hora);
  printf("Date: %s\n", data);
  MYSQL *con = mysql_init(NULL);  

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

 if (mysql_real_connect(con, "localhost", "root", "ufmg3duc", 
         "stream_net", 0, NULL, CLIENT_MULTI_STATEMENTS) == NULL) 
  {
      finish_with_error(con);
  }    

 if (mysql_query(con, "SELECT Id FROM audiencia WHERE data LIKE ('%s') AND (hora LIKE ('%:00:%') OR hora LIKE ('%:30:%')) AND hora > '03:01'",data))

  {
      finish_with_error(con);
  }

但我不知道如何在 mysql_query 中调用“date”:

 if (mysql_query(con, "SELECT Id FROM audiencia WHERE data LIKE ('%s') AND (hora LIKE ('%:00:%') OR hora LIKE ('%:30:%')) AND hora > '03:01'",data))

当我的实际日期是 str 变量类型时,如何选择 Id?

最佳答案

您必须将此查询存储在变量中(例如使用 sprintfsnprintf),并使用 转义所有这些 % %%

char query[300];
...
sprintf(query, "SELECT Id FROM audiencia WHERE data LIKE ('%s') ...", data);
mysql_query(con, query);

关于mysql - C API : Using Variables In mysql query,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19812355/

相关文章:

mysql - C++ mySQL 连接器 LINKER 错误 (Windows)

mysql - 将多个查询合并为一个

c - 更新 Arduino 中的结构

android - 使用 retrofit 2 下载 POST 方法的 PDF 响应

php - 我的 kg 和 lbs 转换总是有很大偏差

php - 过去 21 天内浏览次数最多的帖子

c - 替换字符串的单个字符元素 C

c - 删除 .txt 文件中每行末尾的 ^M。

c# - UWP XAML中的YouTube风格的搜索结果

api - REST API版本控制