# 安装mysql sudo apt install mysql-server mysql-client libmysqlclient-dev # 进入mysql sudo mysql -u root # 进入mysql数据库 use mysql # 创建新用户 create user 'name'@'%' identified by '123456'; # 给新用户赋予最高权限 grant all on *.* to 'name'@'%'; # 允许除127.0.0.1之外的主机访问(有这一步才能远程连接) (WSL有这步才能不使用sudo就能连接) # 打开文件 sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf # 注释掉 bind-address = 127.0.0.1 # 重启mysql服务 sudo service mysql restartC++开发MySQL配置教程 windows下的vs2019配置
(假设mysql的默认安装路径为:C:Program FilesMySQLMySQL Server 8.0)
-
VC++目录->包含目录
C:Program FilesMySQLMySQL Server 8.0include
-
VC++目录->库目录
C:Program FilesMySQLMySQL Server 8.0lib
-
调试->环境
Path=C:Program FilesMySQLMySQL Server 8.0lib;C:Program FilesMySQLMySQL Server 8.0bin;
-
连接器->输入->附加依赖项
libmysql.lib
首先安装库
sudo apt install libmysqlclient-dev
CmakeList.txt
cmake_minimum_required(VERSION 3.0) project(MySQL) set(CMAKE_CXX_STANDARD 11) add_executable(main main.cpp) target_link_libraries(main mysqlclient)
代码示例
#include#include using namespace std; int main() { MYSQL mysql; MYSQL_RES* res; //查询结果集 MYSQL_ROW row; //记录结构体 mysql_init(&mysql); //mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "utf8mb4"); if(mysql_real_connect(&mysql, "127.0.0.1", "name", "123456", "test", 3306, NULL, 0)==NULL) { printf("错误原因: %sn", mysql_error(&mysql)); printf("连接失败!n"); exit(-1); } int ret = mysql_query(&mysql, "create table if not exists emp(" "id int auto_increment primary key unique comment '主键'," "name varchar(10) not null comment '名字'" ") comment '员工表';"); if(ret!=0) printf("创建表出错!n"); ret = mysql_query(&mysql, "insert into emp(name) values ('name3'),('name4')"); if(ret!=0) printf("插入数据出错!n"); ret = mysql_query(&mysql, "delete from emp where id>2"); if(ret!=0) printf("删除数据出错!n"); ret = mysql_query(&mysql, "select * from emp"); if(ret!=0) printf("查询数据出错!n"); res = mysql_store_result(&mysql); if(res==nullptr) printf("没有返回的数据!n"); while (res!=nullptr && (row = mysql_fetch_row(res))) { for(int i=0;i field_count;++i) printf("%s ", row[i]); //打印ID printf("n"); } return 0; }



