我能够获取ac函数来插入和更新表格上的单元格,但我遇到的问题是能够从单元格获取值并且将它保存为一个变量,我可以用它来比较和计算它。先谢谢你。C函数从MySQL数据库获取数据并将其作为变量存储
void MIA_get_data_temperature()
{
MYSQL_RES *query_results = mysql_store_result(conn);
MYSQL_ROW row; //This will declare row variable
//int total_rows = mysql_num_rows(query_results);
int num_fields = mysql_num_fields(query_results);
int i;
char buffer[256]; // Setting buffer for query string
const char *query = "SELECT Temperature FROM `temperature` WHERE Mode='Current_Temperature'";
//snprintf() - safer thatn sprint USE THIS
//checking to make sure query string is not to large for buffer & formatting query to get passed
if (snprintf(buffer, sizeof(buffer), query) >= sizeof(buffer))
{
printf("Issue with Buffer \n");
exit (-1);
}
//Reading from MySQL Table
if(mysql_query(conn, buffer) !=0)
{
fprintf(stderr, "%s\n", mysql_error(conn));
exit (-1);
} else {
while((row = mysql_fetch_row(query_results)) !=0)
{
for (i = 0; i < num_fields; i++)
{
??? Saving Result as a variable
}
}
}
}
你的朋友是英雄!我一直在看这个代码几个小时,并且在网上查看不同的例子,并且找不到与它有关的东西。我对C真的很陌生,并且一直在自学。 – Vlad
如果您的查询检索到更多的列,则第一个将在'row [0]'中,第二个在'row [1]'中,第三个在'row [2]'等中,您可以调用'mysql_num_fields(query_results)找出结果集中有多少列,还有其他函数可用于在需要时获取有关列的列名和其他信息。 – Dmitri
好的,再次感谢你,只是为了确保mysql_num_fields()返回一个unsigned int?像我可以使用函数来比较或将其分配给一个变量,并打印我们的列数? – Vlad