当前位置:   article > 正文

C/C++笔记-使用mysql-connector-c连接mysql数据库

mysql-connector-c

驱动在这个地方下载:

MySQL :: Download MySQL Connector/C (Archived Versions)

我下载的是:mysql-connector-c-6.1.11-winx64

解压后lib有2个,一个是libmysql.lib一个是mysqlclient.lib

他们的区别如下:

libmysql.lib 和 mysqlclient.lib 都是 MySQL C Connector 的库文件,但它们针对不同的操作系统和编译器。

libmysql.lib 是 Windows 平台上使用的库文件,它是使用 Visual Studio 编译器编译的。这个库文件包含了 MySQL C Connector 的所有功能,包括连接 MySQL 数据库、执行 SQL 语句、处理结果集等。

mysqlclient.lib 是 Linux 平台上使用的库文件,它是使用 GCC 编译器编译的。这个库文件也包含了 MySQL C Connector 的所有功能。

因此,如果你在 Windows 平台上使用 Visual Studio 编译器,你应该使用 libmysql.lib;如果你在 Linux 平台上使用 GCC 编译器,你应该使用 mysqlclient.lib。

但他们的include文件是一样的,所以只要链接好对应的lib库,就可以跨平台了。

下面给出C++相关的代码,用的是Qt的pro管理项目:

  1. QT -= gui
  2. CONFIG += c++11 console
  3. CONFIG -= app_bundle
  4. INCLUDEPATH += D:\mysql\mysql-connector-c-6.1.11-winx64\include
  5. LIBS += -LD:\mysql\mysql-connector-c-6.1.11-winx64\lib -llibmysql
  6. # You can make your code fail to compile if it uses deprecated APIs.
  7. # In order to do so, uncomment the following line.
  8. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
  9. SOURCES += \
  10. main.cpp
  11. # Default rules for deployment.
  12. qnx: target.path = /tmp/$${TARGET}/bin
  13. else: unix:!android: target.path = /opt/$${TARGET}/bin
  14. !isEmpty(target.path): INSTALLS += target

main.cpp如下:

  1. #include <QCoreApplication>
  2. #include <mysql.h>
  3. #include <stdio.h>
  4. int main(int argc, char *argv[])
  5. {
  6. QCoreApplication a(argc, argv);
  7. MYSQL *conn;
  8. MYSQL_RES *res;
  9. const char *server = "localhost";
  10. const char *user = "root";
  11. const char *password = "root";
  12. conn = mysql_init(NULL);
  13. if(!mysql_real_connect(conn, server, user, password, NULL, 0, NULL, 0)){
  14. fprintf(stderr, "%s\n", mysql_error(conn));
  15. return -1;
  16. }
  17. printf("MySQL version: %s\n", mysql_get_server_info(conn));
  18. mysql_close(conn);
  19. return a.exec();
  20. }

运行结果如下:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/676510
推荐阅读
相关标签
  

闽ICP备14008679号