gpt4 book ai didi

mysql - 循环遍历数据库表并比较用户输入

转载 作者:行者123 更新时间:2023-11-29 22:18:25 25 4
gpt4 key购买 nike

我正在尝试循环遍历 MySql 表中的行,并使用 C 将特定列中的数据与某些用户输入进行比较。目前我的代码如下所示:

MYSQL *cxn = mysql_init(NULL);
MYSQL_RES *result;
unsigned int num_fields;
unsigned int num_rows;
char *query_string;
MYSQL_ROW *row;

if (mysql_real_connect(cxn, <em>/*blah blah blah**/</em>) == NULL) {
printf("Please restart the service.");
}

result = mysql_store_result(cxn);
num_rows = mysql_num_rows(result);
num_fields = mysql_num_fields(result);

while (row = mysql_fetch_row(result)) {
for (i = 0; i < num_fields; i++) {
//Confusion occurring here
//if (field[i] @ currentRow == "User input")
// printf("Win");
}
}

最佳答案

如果您只想查找与输入匹配的字段,则需要使用输入字符串搜索数据库。换句话说,编写查询字符串,以便它只提供与用户输入匹配的结果。这比在每个返回的行中搜索用户输入要快得多。

从表中选择 * WHERE Cars=input

如果您确实需要返回每一行,那么您会希望代码读取如下内容

while (row = mysql_fetch_row(result)) {
for (i = 0; i < num_fields; i++) {
//Confusion occurring here
//if (row[i] == "User input") You can't compare strings in C with ==
if(strcmp(row[i], user_input) == 0))
printf("Win");
}
}

但是,如果您的用户输入是字符串,您将需要使用 strcmp 进行比较。

if(strcmp(row[i], user_input) == 0))

关于mysql - 循环遍历数据库表并比较用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30987862/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com