资源简介
Linux+C+MySql实现的简单图书管理系统。内含mysql的建表语句及测试数据,以及linux下mysql服务器、mysql客服端、mysql库文件rmp安装包,及详细安装配置说明。
代码片段和文件信息
/*注意要包含这个头文件*/
#include
#include
#include
#include
/*定义了一些数据库连接需要的宏*/
#define HOST “127.0.0.1“
#define USERNAME “root“
#define PASSWORD ““
#define DATAbase “book_db“
/*这个函数用来执行传入的sql語句*/
void exe_sql(char* sql) {
MYSQL my_connection; /*这是一个数据库连接*/
int res; /*执行sql語句后的返回标志*/
/*初始化mysql连接my_connection*/
mysql_init(&my_connection);
/*这里就是用了mysql.h里的一个函数,用我们之前定义的那些宏建立mysql连接,并
返回一个值,返回不为空证明连接是成功的*/
if (mysql_real_connect(&my_connection HOST USERNAME PASSWORD DATAbase
0 NULL CLIENT_FOUND_ROWS)) {/*连接成功*/
printf(“connect success!\n“);
/*这句话是设置查询编码为utf8,这样支持中文*/
mysql_query(&my_connection “set names utf8“);
/*下面这句话就是用mysql_query函数来执行我们刚刚传入的sql語句,
这会返回一个int值,如果为0,证明語句执行成功*/
res = mysql_query(&my_connection sql);
if (res) {/*现在就代表执行失败了*/
printf(“Error: mysql_query!\n“);
/*关闭连接*/
mysql_close(&my_connection);
} else {/*现在就代表执行成功了*/
/*mysql_affected_rows会返回执行sql后影响的行数*/
printf(“%d row effected!\n\n“ mysql_affected_rows(&my_connection));
/*关闭连接*/
mysql_close(&my_connection);
}
} else {
/*数据库连接失败*/
printf(“connect failed!\n“);
}
}
/*这个函数用来执行传入的sql語句,并打印出查询結果*/
void query_sql(char* sql) {
MYSQL my_connection; /*这是一个数据库连接*/
int res; /*执行sql語句后的返回标志*/
MYSQL_RES *res_ptr; /*指向查询结果的指针*/
MYSQL_FIELD *field; /*字段结构指针*/
MYSQL_ROW result_row; /*按行返回的查询信息*/
int row column; /*查询返回的行数和列数*/
int i j; /*只是控制循环的两个变量*/
/*初始化mysql连接my_connection*/
mysql_init(&my_connection);
/*这里就是用了mysql.h里的一个函数,用我们之前定义的那些宏建立mysql连接,并
返回一个值,返回不为空证明连接是成功的*/
if (mysql_real_connect(&my_connection HOST USERNAME PASSWORD DATAbase
0 NULL CLIENT_FOUND_ROWS)) {/*Connection success*/
// printf(“database connect success!\n“);
/*这句话是设置查询编码为utf8,这样支持中文*/
mysql_query(&my_connection “set names utf8“);
/*下面这句话就是用mysql_query函数来执行我们刚刚传入的sql語句,
这会返回一个int值,如果为0,证明語句执行成功*/
res = mysql_query(&my_connection sql);
if (res) { /*现在就代表执行失败了*/
printf(“Error: mysql_query!\n“);
/*不要忘了关闭连接*/
mysql_close(&my_connection);
} else { /*现在就代表执行成功了*/
/*将查询的結果给res_ptr*/
res_ptr = mysql_store_result(&my_connection);
/*如果结果不为空,就把结果print*/
if (res_ptr) {
/*取得結果的行数和*/
column = mysql_num_fields(res_ptr);
row = mysql_num_rows(res_ptr);
printf(“Query %d rows date!\n“ row);
/*输出結果的字段名*/
for (i = 0; field =
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 206699 2012-06-17 11:09 BookManage\book
文件 19389 2012-06-17 11:20 BookManage\book.cpp
文件 19389 2012-06-17 11:16 BookManage\book.cpp~
文件 20368 2012-06-17 11:09 BookManage\book.o
文件 3335 2012-06-17 11:19 BookManage\db_code.sql
文件 3335 2012-06-17 11:19 BookManage\db_code.sql~
文件 232890 2003-01-01 02:14 MYSQL_RPM_PACKAGE\libmysql10-3.23.56-1.4mdk.i586.rpm
文件 6345418 2005-11-22 20:34 MYSQL_RPM_PACKAGE\MySQL-client-5.0.16-0.i386.rpm
文件 10665917 2005-11-22 20:33 MYSQL_RPM_PACKAGE\MySQL-server-5.0.16-0.i386.rpm
文件 1259 2010-07-24 11:19 MYSQL_RPM_PACKAGE\mysql说明.txt
目录 0 2012-06-15 12:45 BookManage
目录 0 2012-06-15 02:40 MYSQL_RPM_PACKAGE
----------- --------- ---------- ----- ----
17517999 12
相关资源
- 基于winpcap网络嗅探器 VC++ 中科院课设
- Cross-Platform GUI Programming with wxWidgets中
- 基于UDP的MFC 通讯小程序
- BTree数据结构课程设计C++版
- linux下安装oracle最全RPM软件包
- 用vs2010编写基于MFC的串口通信程序
- 单片机C语言程序设计实训100例--基
- 基于MFC的多线程编程以及在Picture Co
- 研华工控机C++代码
- C++语言导学
- 精通Visual C++数字图像处理典型算法及
- C++ GUI Qt 4编程第二版.pdf中文版,含目
- MFC学生选课系统
- MFC SOCKET TCP VC6.0 服务器 客户端 源码编
- 数据结构C++版习题解答与实验指导.
- 严蔚敏《数据结构》C语言版课本和习
- Effective C++改善程序与设计的55个具体
- 局域网监控系统demo含源代码
- C语言导学.ATourofC.rar
- C+++编程艺术(教程+源码)
- c++项目开发全程实录 随书源代码 刘志
- C++大作业学生信息管理系统
- 算法竞赛入门经典第二版合集(包含
- rpm方式不联网安装gcc、gcc-c++
- 三菱MX Component软件和操作手册和编程
- MFC 之 CButton 控件重绘GDI+篇
- cfree5.0(内含注册码,绝非破解)
- 番茄助手适用于VS2008/2012/2013/ VC6.0
- MFC常用图标5000个
- 基于VC++和OpenGL实现的IGM机器人手臂三
评论
共有 条评论