c/c++访问mysql(gcc)

原创 2004年07月09日 17:00:00
近一段时间来在看linux下的C编程。根据我的经验,但凡学习一种新的东西,一定要找到一个引爆点。而我一直对网络、数据库相关的各项技术很关心。故就从这两个方面着手看资料。

从昨天下午开始,我在看C访问mysql。我找到了一篇很好的资料:http://www.hk8.org/old_web/linux/sql/ch13_01.htm 这个页面中带有一个示例,很有启发性。不过这个例子有一个小问题:调用 mysql_real_connect 时少一个参数,只要在最后加一个参数0即可。

这页是用C来访问,下一页就是使用C++来访问。而且提供了封装好的Connection Result 和 Row。特别好用。另外,还提供了一个使用这三个类的示例程序,不过在这个页上没有提供,需要到http://examples.oreilly.com/msql/页面上下载。查看第13章文件夹就可以了。不过这里要提醒大家一下,这是C++文件,需要用g++编译了!!而且文件很多,如果一个个地编译将是一个可观的工作量。而makefile正是来解决这个问题的。我本来不太懂这个东西。今天又找了些资料(http://mrbook.org/tutorials/make/),最后终于解决了。好高兴了啊!!

最后我把我的makefile贴出来:
all: demo
demo: select.o row.o result.o connection.o
    g++ select.o connection.o result.o row.o -L/usr/lib/mysql -I/usr/include/mysql -lmysqlclient -o demo
select.o: select.cc
    g++ -L/usr/lib/mysql -I/usr/include/mysql -c select.cc
connection.o: connection.cc connection.h
    g++ -L/usr/lib/mysql -I/usr/include/mysql -c connection.cc
result.o: result.cc result.h
    g++ -L/usr/lib/mysql -I/usr/include/mysql -c result.cc
row.o: row.cc row.h
    g++ -L/usr/lib/mysql -I/usr/include/mysql -c row.cc

有两点需要注意
1、文件名最好就是makefile,同时注意大小写,这样直接make就行了,其可执行文件是demo;
2、每个g++命令前一定是一个Tab!!

这个页面在linux下用太费劲了,编辑命令全没了。如果想用格式,只有自己用html标记!!幸好我的功底很好。

good luck!!

C/C++调用mysql接口实例1

实例1: #include #include #include #include int main() { MYSQL*mysql=mysql_init(0); //创建一个连接对象 if (...
  • liyuqian199695
  • liyuqian199695
  • 2016年11月23日 21:24
  • 263

C/C++连接mysql数据库(vs)

注:本篇只介绍在VS上C/C++与Mysql数据库的连接,默认已经搭建好数据库,如果没有,请先学习相关资料搭建好数据库后再来阅读本文。 开门见山,直入主题。 我们要做的其实只有两步:(1)将工程的头文...
  • yy64578537
  • yy64578537
  • 2016年04月16日 17:09
  • 1399

poj上 G++ GCC C++编译器的区别?

Linux 中最重要的软件开发工具是 GCC。GCC 是 GNU 的 C 和 C++ 编译器。实际上,GCC 能够编译三种语言:C、C++ 和 Object C(C 语言的一种面向对象扩展)。利用 g...
  • u010700335
  • u010700335
  • 2014年09月02日 19:56
  • 2578

OJ提交题目中的语言选项里G++与C++的区别

一、OJ提交题目中的语言选项里G++与C++的区别 http://www.th7.cn/Program/cp/201405/199001.shtml 首先更正一个概念,C++是一门计算机编程语言,...
  • hermito
  • hermito
  • 2016年05月22日 08:52
  • 2048

linux环境下,mysql UDF的实现编译及安装

1.     UDF概念 UDF就是user define function。在mysql内部,提供了很多内建函数,如 abs()、count()等,但根据实际情况,内建的函数并不一定能满足我们的需...
  • xiweiwei
  • xiweiwei
  • 2013年01月15日 10:45
  • 1589

MySQL Connector C++库在VS2010平台连接访问远程MySQL数据库

近段时间由于需要利用C++访问MySQL数据库做调试分析,所以就是用了MySQL官网提供的MySQL Connector C++库来访问数据库,在这过程中遇到过一些问题,纠结了很久,所以想把这些记下来...
  • u014752853
  • u014752853
  • 2014年12月06日 13:24
  • 1273

【转】Linux下GCC内置原子操作函数

转自:http://www.169it.com/article/5034121709213501371.html 原文地址未找到。 Linux下GCC原子操作介绍     在多进程(...
  • czl_chen
  • czl_chen
  • 2015年01月23日 15:59
  • 1639

在window下的Mysql基本操作以接口的方式封装并提供出来,C++多线程操作

最近刚刚需要同时用到mysql和多线程,网上mysql和多线程的教程很多,但是能同时使用的资料没找到,不过通过网上的这些的资料,写了个demo来理解和理顺自己这几天的学习,分享一下。 Mysql...
  • catemo
  • catemo
  • 2016年11月07日 13:24
  • 485

编译器工作原理(GCC C/C++)

源码要运行,必须先转成二进制的机器码。这是编译器的任务。 比如,下面这段源码(假定文件名叫做test.c)。 #include stdio.h> int main(void) { fp...
  • kai8wei
  • kai8wei
  • 2015年03月31日 09:34
  • 2186

使用C++访问MySql数据库的方法

使用C++(基于VS2012)访问MySql数据库
  • StoryMonster
  • StoryMonster
  • 2016年10月05日 01:21
  • 1263
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:c/c++访问mysql(gcc)
举报原因:
原因补充:

(最多只允许输入30个字)