Windows下使用dev-cpp连接mysql数据库
来源:互联网 发布:网络奇葩歌词找歌 编辑:程序博客网 时间:2024/06/05 02:55
今天试了下用C语言连接数据库,因为是第一次操作,所以也有诸多不懂的地方,在网上查找了诸多资料,终于成功连接了,所以在这里分享给大家,因为笔者也是第一次使用,所以本文讲的并不是很深入,望各位谅解。
由于编译运行环境是MinGW GCC,一开始写了一个简单的程序连接MySQL数据库的时候,遇到了一堆错误:
undefined reference to `mysql_init@4'undefined reference to `mysql_real_connect@32'undefined reference to `mysql_close@4'
显然是缺少库文件,在连接的时候找不到符号,确定不了地址,所以会出现undefined reference to 'xxx'的错误。
上网查了一下发现是少了一个 “libmsql.a”的静态连接库。需要我们自己编译下 C:\Program Files\MySQL\MySQL Server 5.6\lib 下的 libmysql.lib 文件
先下载一下MinGW工具包,下载地址是http://prdownloads.sourceforge.net/mingw/mingw-utils-0.2.tar.gz?download
解压后,将bin目录添加到系统的Path环境变量里面,
在C:\Program Files\MySQL\MySQL Server 5.6\lib 运行命令行,运行
reimp -d libmysql.lib
会得到一个 libmysql.def 的文件,然后在再执行下面这条命令
dlltool -k -d libmysql.def -l libmysql.a
就会生成我们需要的静态库文件。将这个文件添加到Dev-CPP的安装目录下的lib文件夹里面,
同时将C:\Program Files\MySQL\MySQL Server 5.6\lib\libmysql.dll 这个文件放到C:\Windows\Systm32(32位)或者C:\Windows\SysWOW64 (64位)就可以了。
在MySQL的开发包目录下(与include和lib同级)新建一个test.cpp 的文件,测试的源码如下
#include <stdio.h> #include <winsock2.h> #include "mysql.h" int main() { MYSQL mysql; mysql_init(&mysql); if(!mysql_real_connect(&mysql, "localhost", "root", "password", "db", 3306, NULL, 0)) { printf("\nconnect error!"); } else { printf("\nconnect success!\n"); } mysql_close(&mysql); return 0; }
在Dev-CPP的任务栏的工具--编译选项--编译器--在连接器命令行加入以下命令-- -lmysql。
即编译运行成功!
文中若有何问题,敬请各位不吝指正!
阅读全文
0 0
- Windows下使用dev-cpp连接mysql数据库
- Windows下安装Gtkmm 与Dev-cpp
- Windows7下使用Dev-CPP 编译 JNI
- Dev-Cpp/Mingw32环境下使用静态连接库和做自己的静态库
- Windows下用GCC连接MySQL数据库
- Windows下Eclipse CDT连接MySQL数据库
- Windows平台下Codeblocks连接Mysql数据库
- windows环境下,python连接mysql数据库
- windows 下 qt 连接 mysql 数据库
- windows下python3.6连接mysql数据库
- windows下Dev-Cpp与QT4开发环境的搭建
- windows 下配置Dev Cpp和QT 4.3.3
- dev-cpp使用教程
- windows下使用jdbc连接MySQL
- Windows下Ruby使用mysql2连接Mysql
- 在WindowsXP下使用Dev-Cpp编译Boost步骤
- windows系统下python连接mysql数据库和oracle数据库
- Ubuntu 下使用Qt连接MySQL数据库
- ES6
- 不需要导入外部包,自行编写的json字符串转map工具类
- Java最简单的UDP收发数据的例子
- 学习JVM
- 实战
- Windows下使用dev-cpp连接mysql数据库
- 一大波Android技术干货
- opencv安装
- git 的一些命令
- TypeScript 学习笔记3: ECMAScript 2015 的新特性
- Ubuntu安装jdk
- 1.4 最长回文子串
- 解题报告:Codeforces Round #421 (Div. 2) A-E
- NIO 入门