这里用来分享下ubuntu环境下,Qt使用mysql自身的API.
背景: 折腾了一天来配置mysql的驱动, 有太多问题,最终还是没有解决。因此放弃使用QSqlDatabase等相关函数,直接用mysql本身的API链接数据库。
首先是要安装mysql,以及完成相应的配置。安装的教程很多,就不说明了(注:博主的是直接用终端安装的)
接着,创建一个C/C++项目(只要是平常的项目都可以),这里创建的是plain C++ Application。创建完了之后就直接修改.pro文件,在文件中添加,第一行是添加头文件的路径,第二行是添加动态链接库。
INCLUDEPATH +=/usr/include/mysql/mysql.h
LIBS +=/usr/lib/x86_64-linux-gnu/libmysqlclient.so
如果不知道头文件和动态链接库动话,可以直接在终端输入: locate mysql.h 以及 locate libmysqlclient.so,找到这两个文件的路径。
注意:这里动头文件路径和动态链接库都要写到具体的文件(就是要到.h和.so),如果头文件路径只是写到某个父文件夹,如INCLUDEPATH +=/usr/include/mysql,那么在main函数中就不能使用<iostream>等C++库(<stdio.h>等C库可以正常使用)。如果动态链接库只写到父文件夹,如LIBS +=/usr/lib/x86_64-linux-gnu,那么会报错 ":-1: error: cannot find /usr/lib/x86_64-linux-gnu/: File format not recognized”