c/c++访问mysql的步骤
c/c++访问mysql的步骤
近一段时间来在看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!!