欢迎光临散文网 会员登陆 & 注册

C/C++连接Mysql数据库 | 数据库增删改查C++封装 | 信息管理系统通

2023-06-09 00:24 作者:没有温度的茶  | 我要投稿

报错Failed to connect to database : Error:This handle is already connected. Use a separate handle for each connection.

解决了。将代码修改成这样就不会报这个错。#include <mysql.h>

#include <iostream>

#include <string>

using namespace std;


const char* host = "localhost";

const char* user = "root";

const char* pw = "123456";

const char* database_name = "database_test";

const int port = 3306;


typedef struct People

{

  int people_id;

  string people_name;

  string address_id;

} People;


int main()

{

  MYSQL* con = mysql_init(NULL);

  mysql_options(con, MYSQL_SET_CHARSET_NAME, "GBK");


  if (!mysql_real_connect(con, host, user, pw, database_name, port, NULL, 0))

  {

    fprintf(stderr, "Failed to connect to database : Error:%s\n", mysql_error(con));

    return -1;

  }


  People stu{ 1111,"吴彦祖","软件工程2班" };

  char sql[1024];

  sprintf(sql, "insert into people (people_id,people_name,address_id) values(%d,'%s','%s')",

    stu.people_id, stu.people_name.c_str(), stu.address_id.c_str());

  if (mysql_query(con, sql))

  {

    fprintf(stderr, "Failed to insert data : Error:%s\n", mysql_error(con));

    mysql_close(con);

    return -1;

  }


  mysql_close(con);

  return 0;

}


C/C++连接Mysql数据库 | 数据库增删改查C++封装 | 信息管理系统通的评论 (共 条)

分享到微博请遵守国家法律