gpt4 book ai didi

mysql - 使用 C 将客户端输入插入 MySQL 数据库

转载 作者:太空宇宙 更新时间:2023-11-03 23:56:17 24 4
gpt4 key购买 nike

如何编写一个 C 程序来获取 MySQL 服务器的客户端输入?我正在使用 Fedora 作为我的操作系统。

这是我的代码:

#include<my_global.h>
#include<mysql.h>

main()
{
char name[25];
MYSQL *conn;
conn=mysql_init(NULL);
mysql_real_connect(conn,"localhost","root","","testdb",0,NULL,0);
printf("Enter your name:");
scanf("%s",name);
mysql_query(conn,"CREATE TABLE Users(name VARCHAR(25))");

mysql_query(conn,"INSERT INTO Users VALUES(name)");
//mysql_query(conn,"INSERT INTO Users VALUES('Farhan')");
//mysql_query(conn,"INSERT INTO Users VALUES('Dileep')");
//mysql_query(conn,"INSERT INTO Users VALUES('RAJIV')");

mysql_close(conn);
}

我希望将客户端输入存储在 MySQL 数据库中,而不是常量值。

最佳答案

尝试将名称 sprintf'ing 到您的查询中,如下所示:

int len = query_len + name_len + 1;
char * insert_query = (char *) malloc(len);
snprintf(insert_query, len, "INSERT INTO Users VALUES('%s')", name);

但是,您在检查缓冲区长度时需要多加注意,尤其是 escaping the name string .

关于mysql - 使用 C 将客户端输入插入 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6210506/

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