Visual Studio引用MySQL库

创建项目

打开Visual Studio,点击菜单栏文件,出现下拉菜单,依次选择新建–>项目
此时弹出新建项目窗口,在左边依次展开已安装–>模板–>C/C++,于右边,Visual Studio 2017选择空项目,Visual Studio 2015及以下版本选择Win32控制台应用程序,在项目名称输入框填写Build,选择项目存放的位置,最后点击确定

完成上述步骤后,Visual Studio 2017自动创建项目,而Visual Studio 2015及以下版本弹出Win32应用程序向导窗口,点击下一步,勾选附加选项空项目,去掉安全开发生命周期(SDL)检查的勾选,最后点击完成,自动创建项目。

添加源文件

右击解决方案资源管理器中项目Build源文件文件夹,弹出右键菜单,依次选择添加–>新建项,如下图所示:
添加源文件
此时弹出添加选项窗口,在左边依次展开已安装–>Visual C++,于右边选择C++ 文件(.cpp),在名称输入框中填写main.cpp,最后点击添加

引用外部库方式

提供绝对路径和相对路径,共两种于Visual Studio开发环境引用外部库的方式。

以绝对路径方式引用MySQL库

这种方法虽然步骤少,操作简单,不过不具备可移植性(此处所谓的可移植性,是把项目放在另一台计算机另一个环境上编译运行)。

右击解决方案资源管理器的项目Build,如下图所示:
解决方案资源管理器中项目的右键菜单
在弹出菜单最下面,选择属性,弹出项目属性页,在左边依次展开属性配置–>C/C++,选中常规,于右边的附加包含目录填写MySQL解压后根目录的include文件夹路径。
我的include路径是E:/Program Files (x86)/mysql-5.7.19-win32/include,如下图所示:
以绝对路径方式配置附加包含目录
再展开左边链接器,点击常规,在右边的附加库目录填写MySQL解压后根目录的lib文件夹路径。
我的lib路径是E:/Program Files (x86)/mysql-5.7.19-win32/lib,如下图所示:
以绝对路径方式配置附加库目录
最后点击确定,完成在Visual Studio开发环境以绝对路径引用MySQL库的步骤。

以相对路径的方式引用MySQL库

此种方法相对于绝对路径来说步骤多,操作复杂,但具有可移植性,即在另一台计算机的相同开发环境下不需改动(或者做少许改动)就可以编译运行。

在Build项目的源代码目录中创建include和lib文件夹,接着在lib文件夹中创建mysql文件夹,把位于MySQL根目录的include文件夹复制到源代码目录的include文件夹中,并重命名为mysql,把MySQL根目录下lib文件夹中的libmysql.lib文件复制到源代码目录的lib/mysql文件夹中。

一般只链接libmysql.lib,其他库暂时不必复制,当需要用到其他库的时候,再添加至项目源代码目录的lib/mysql文件夹。

安装MySQL之后,我的include和lib文件夹在E:\Program Files (x86)\mysql-5.7.19-win32,如下图所示:
MySQL根目录的include和lib文件夹
Visual Studio创建的Build项目位于E:\Microsoft Visual Studio Projects\Build\Build,如下图所示:
Build项目源代码目录的include和lib文件夹
接下来的操作与绝对路径引用方式相似,打开项目属性页,在左边依次展开属性配置–>C/C++,点击常规,于右边的附加包含目录填写include/mysql。如下图所示:
以相对路径方式配置附加包含目录
左边再展开链接器,点击常规,于右边的附加库目录填写lib/mysql。如下图所示:
以相对路径方式配置附加库目录
最后点击确定,完成在Visual Studio开发环境以相对路径引用MySQL库的步骤。

测试配置

完成以上配置之后,在项目的源文件中编写如下代码,连接数据库以验证环境是否配置正确。

#include <stdio.h>
#include <conio.h>
#include <mysql.h>

#pragma comment(lib,"libmysql.lib")

int main(int argc, char *argv[])
{
	char host[] = "localhost";
	char szDatabase[] = "mysql";	// 已有数据库名
	char username[] = "root";
	char password[] = "eterfree";	// 管理员密码
	unsigned int port = 3306;

	MYSQL *conn;
	if ((conn = mysql_init((MYSQL*)0))
		&& (mysql_options(conn, MYSQL_SET_CHARSET_NAME, "gbk")==0)
		&& mysql_real_connect(conn, host, username, password, szDatabase, port, NULL, 0))
		printf("连接数据库成功!\n");
	else
	{
		printf("连接数据库失败!\n");
		mysql_close(conn);
		getch();
		return -1;
	}
	mysql_close(conn);
	getch();
	return 0;
}

如果使用预编译头,需要在源文件最前面引用预编译头文件。
Visual Studio 2017之前,预编译头文件默认名称为stdafx.h。

#include "stdafx.h"

Visual Studio 2019的预编译头文件默认名称为pch.h。

#include "pch.h"

如果开发环境是Visual Studio 2017,需要关闭项目属性的安全开发生命周期检查。
进入项目的属性页,在左边展开属性配置,点击C/C++,于右边找到SDL检查,选择其选项的否(/sdl-),最后点击确定

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值