赞
踩
驱动在这个地方下载:
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管理项目:
- QT -= gui
-
- CONFIG += c++11 console
- CONFIG -= app_bundle
-
- INCLUDEPATH += D:\mysql\mysql-connector-c-6.1.11-winx64\include
- LIBS += -LD:\mysql\mysql-connector-c-6.1.11-winx64\lib -llibmysql
-
- # You can make your code fail to compile if it uses deprecated APIs.
- # In order to do so, uncomment the following line.
- #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
-
- SOURCES += \
- main.cpp
-
- # Default rules for deployment.
- qnx: target.path = /tmp/$${TARGET}/bin
- else: unix:!android: target.path = /opt/$${TARGET}/bin
- !isEmpty(target.path): INSTALLS += target
main.cpp如下:
- #include <QCoreApplication>
- #include <mysql.h>
- #include <stdio.h>
-
- int main(int argc, char *argv[])
- {
- QCoreApplication a(argc, argv);
-
- MYSQL *conn;
- MYSQL_RES *res;
-
- const char *server = "localhost";
- const char *user = "root";
- const char *password = "root";
-
- conn = mysql_init(NULL);
- if(!mysql_real_connect(conn, server, user, password, NULL, 0, NULL, 0)){
-
- fprintf(stderr, "%s\n", mysql_error(conn));
- return -1;
- }
-
- printf("MySQL version: %s\n", mysql_get_server_info(conn));
- mysql_close(conn);
-
- return a.exec();
- }
运行结果如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。