在labwindows下使用mysql自带的C语言API接口

MySQL数据库是目前非常流行的数据库之一,mysql数据库小巧而且开源,可以免费试用,作为程序员,是必需的工具之一。

labwindows中使用MYSQL有2中方法,一种就是labwindows自带的数据库连接库,还有一种方法就是使用MYSQL官网提供的C语言API接口连接数据库,前种方法在labwindows中有详细的说明,就不做介绍,想了解的可以去查看labwindows的说明文档。本文主要介绍如何通过C API接口来访问MYSQL。

  1. 首先从MYSQL官网下载C API接口包。

https://downloads.mysql.com/archives/c-c/   ,选择6.1.11版本进行下载,下载的文件解压打开,主要包括以下文件。

其中,include文件夹主要包括C API的头文件,lib主要包括库文件,我们只需要这两个文件夹即可。

2.labwindows中新建一个项目,重命名并保存。

3.将将MYSQl连接库中lib文件夹中的libmysql.dll文件和libmysql.lib文件复制到你刚才新建的项目文件下。

4.在labwindows文件浏览器中选择项目文件,右击鼠标选择Add Existing file…打开添加文件对话框,定位到你的项目的文件夹,选择刚复制进去的libmysql.lib文件添加到项目下。

 

 

5.包含头文件。

在labWindows中选择EDIT—>project…,打开project对话框,点击include Paths…,打开添加源文件对话框,定位到你刚才下载的mysql文件夹中,选择include文件夹,将include文件夹添加到include paths路径中,点击OK按钮退出。到此,整个编程环境设置完毕,接下来编写代码就可以访问MYSQL服务器了。

 

6.打开mysql.h文件,屏蔽 “#include <sys/types.h>” 这句代码(大概在35行的样子)。

说明:mysql.h头文件中包含一个sys/types.h的头文件,这个头文件是在Linux下使用的,在Windows系统下用不到,直接屏蔽就行,否则会出现找不到sys/types.h库的错误。还有一种办法就是在代码中包含libmysql.h头文件之前添加语句“#define MYSQL_ABI_CHECK”也可起到屏蔽作用(见后附代码) ,本人推荐后一种方法。

7.添加代码进行测试。

看编译环境是否设置成功,能否连接到MYSQl。

 

#include <stdio.h>
#define MYSQL_ABI_CHECK
#include "mysql.h"
#include <mysql.h>
#include <ansi_c.h>

static char *Host=NULL;
static char *User="root";
static char *Passwd="100.Ion";
static unsigned Port=0;
static char *SocketName=NULL;
static char *DatabaseName="lianxi";
static unsigned clientflag=0;
static MYSQL *mysqlHandle;
void ShowData(MYSQL *mysqlHandle)  ;
void printfError(MYSQL *mysqlHandle,const char *title)
{
	fprintf(stderr,"%s:\nError Code:%u(%s)\n",title,mysql_errno(mysqlHandle),
			mysql_error(mysqlHandle));
}

int main(int argc,char *argv[])
{
	if((mysqlHandle=mysql_init(mysqlHandle))==NULL)
	{
		printfError(mysqlHandle,"ERROR");
		exit(1);
	}
	else
	{
		fprintf(stderr,"mysql ³õʼ»¯³É¹¦!\n");
	}
	if(mysql_real_connect(mysqlHandle,Host,User,Passwd,DatabaseName,Port,
						  SocketName,clientflag)==NULL)
	{
		printfError(mysqlHandle,"ERROR");
		mysql_close(mysqlHandle);
		getchar();
		exit(1);
	}
	fprintf(stderr, "mysql Á¬½Ó³É¹¦!\n");
	ShowData(mysqlHandle) ;
	mysql_close(mysqlHandle);
	getchar();
	return 0;
}

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值