目录
前言
最近项目需要使用到Mysql,以前用的是Qt封装好的数据库操作类,十分简单,这次用在服务器上打算学习下用MysqlConnector来进行数据库的连接和操作。
Mysql版本
MysqlConnector有JDBC版和XDEVAPI版,Mysql5.7.12后就有X Plugin
,使用它可以十分方便的完成数据库操作,但因为5.7还有一些小问题,因此直接安装Mysql8并使用MysqlConnector8比较好。
Windows下连接Mysql
准备工作
- 如果以前安装了mysql5.7,可以先去windows自带的卸载里去将
mysql server5.x
卸载,然后再安装mysql8 安装Mysql8
:点我下载
下载后点击安装选Development Default
,然后一路默认安装即可,只需要设置个密码,为了方便,我这里设置了123456
作为root用户的密码。测试
:- 点击开始菜单
- 找到Mysql文件夹
- 点击
Mysql 8.0 Command Line Client
- 输入刚设置的密码进行登录
- 登录成功
创建表用于测试
- 进入Mysql的控制台,进行登录
- 创建数据库:
create database test;
- 选择数据库:
use test;
- 创建数据表:
create table if not exists `person`( `uid` int unsigned, `age` int unsigned, `name` varchar(40) not null, PRIMARY KEY ( `uid` ) )engine=InnoDB default charset=utf8;
- 插入数据:
insert into person values(10001,18,"小明"); insert into person values(10002,17,"小红");
- 查看数据:
select * from person;
下载MysqlConnector8
- 一般安装Mysql8时就已经自带了MysqlConnector,在Mysql的安装目录下:
- 如果没有,可在官网下载:点我下载
也可以下载Zip的压缩文件,解压即可。
连接Mysql
使用Cmake构建项目
- CMake提供了一个统一的语法以在不同的平台构建我们的项目,且使用十分简单。在Win平台下CMake可以创建Visual Studio的项目,在Linux下也可创建Makefile,十分方便。
- CMake安装十分简单,不用多说。
- 编写CMakeLists:
- 创建文件:
CMakeLists.txt
- 编辑
# CMake的最低版本 cmake_minimum_required(VERSION 3.10) # 设置是否是在Win平台下编译 option( BUILD_IN_WIN "windows msvc build" ON) # 设置使用的C++标准 set(CMAKE_CXX_STANDARD 11) # 设置项目名称 project(TestMysql) # 设置源码路径 set(SOURCE_DIR ./project) # 设置项目目录为CMake指定的目录 set(PROJECT_DIR ${CMAKE_BINARY_DIR}) # 设置编译结果的输出目录 set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_DIR}/build) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_DIR}/build) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_DIR}/build) if(BUILD_IN_WIN) # 如果在Win下编译 set(MYSQL_CONNECTOR_DIR "D:/Softwares/mysql-connector-c++-8.0.19-winx64") # 设置Connector的目录 set(MYSQL_LIB ${MYSQL_CONNECTOR_DIR}/lib64/vs14/mysqlcppconn8.lib # 设置lib ) else() # Linux下编译 set(MYSQL_CONNECTOR_DIR "/home/lib/mysqlconn8-x86-64") # 设置Connector目录 set(MYSQL_LIB ${MYSQL_CONNECTOR_DIR}/lib64/libmysqlcppconn8.so # 设置lib ) endif() include_directories(${MYSQL_CONNECTOR_DIR}/include) # 添加头文件目录 # 指定生成可执行文件 aux_source_directory(${SOURCE_DIR} SOURCE_CODES) add_executable(${PROJECT_NAME} ${SOURCE_CODES}) if
- 创建文件: