c 与mysql连接_c与mysql连接和一个简单查询的例子
今天给新来的同事做mysql培训,用到的一个例子:
连接数据库test 用户名root密码abc
在里面有一个username的表,describe username结果如下
mysql> describe username;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id | int(10) | YES | | NULL | |
| username | varchar(32) | | PRI | | |
+----------+-------------+------+-----+---------+-------+
mysql> select * from username;
+------+----------+
| id | username |
+------+----------+
| 1 | sfs |
+------+----------+
1 row in set (0.00 sec)
[b:f09d522785]本文目的查找执行select id from username这个语句并打印结果[/b:f09d522785]
[code:1:f09d522785]
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
MYSQL mysql;
main()
{
char host[32]="localhost";
char user[32]="root";
char passwd[32]="abc";
char dbname[32]="test";
if( mysql_init(&mysql) == NULL )
{
syslog(LOG_USER|LOG_INFO,"inital mysql handle error/n");
return 1;
}
if (mysql_real_connect(&mysql,host,user,passwd,dbname,0,NULL,0) == NULL)
{
syslog(LOG_USER|LOG_INFO, "Failed to connect to database: Error: %s/n",mysql_error(&mysql));
return 1;
}
else syslog(LOG_USER|LOG_INFO, "connect to database: /n");
find_ps();
db_close();
return 0;
}
int db_close()
{
mysql_close(&mysql);
return 0;
}
int find_ps () { MYSQL_ROW m_row; MYSQL_RES *m_res; char sql[1024],username[32]; int res=1; int *id; sprintf(sql,"select id from username"); if(mysql_query(&mysql,sql) != 0) { syslog(LOG_USER|LOG_INFO, "select ps_info Error: %s/n",mysql_error(&mysql)); return res; } m_res = mysql_store_result(&mysql); if(m_res==NULL) { syslog(LOG_USER|LOG_INFO, "select username Error: %s/n",mysql_error(&mysql)); res = 3; return res; } if(m_row = mysql_fetch_row(m_res)) { printf("m_row=%d/n",atoi(m_row[0])); res = 0; } mysql_free_result(m_res); return res; } [/code:1:f09d522785] 编译命令 gcc -g connect_db.c -L/usr/lib/mysql -lmysqlclient -lz 注意: 如果/tmp/ccTGmMS21.o: In function `main': /tmp/ccTGmMS21.o(.text+0x11): undefined reference to `mysql_init' 那么参数增加-L/usr/lib/mysql -lmysqlclient 如果 usr/lib/mysql/libmysqlclient.a(my_compress.o): In function `my_uncompress': my_compress.o(.text+0xaa): undefined reference to `uncompress' 那么增加-lz参数
c 与mysql连接_c与mysql连接和一个简单查询的例子相关推荐
- c++ mysql 操作_c++操作mysql入门详解
首先,根据你当前的操作系统,还有开发工具,选择相应的mysql版本.本人选择的环境是win10 + vs2013 需要解决三个问题:1.下载安装mysql服务器,并登录mysql测试一下是否安装成功: ...
- mvc登录实例 mysql_spring mvc + mybatis + mysql 调整的一个简单的登录例子
spring mvc + mybatis + mysql 整合的一个简单的登录例子 今天用spring跟mybatis整合写了一个简单的登录例子,第一次整合,给自己做个笔记,可能注释写的有点少,做的不 ...
- c++与mysql建立连接_C++与mysql连接遇到的问题汇总
最近接触了很多数据库的东西,本来是一直接触的是sql server,不过由于项目需要就开始对mysql进行了连接.下面就让我这个菜鸟浅谈下经验吧. 对于C++连接mysql,我不太喜欢多下载一个软件m ...
- c语言mysql自动重连接_c++操作mysql数据库
就拿查询MySQL获取结果集并在页面上显示数据为例来分析. HTTP请求由C级别的程序比如Apache/Nginx处理(Java的HTTP服务用的是Java开发的Tomcat等), PHP则调用内置在 ...
- java写一个窗体并连接MySQL_大神帮忙写一个简单地java页面,连接MySQL数据库之后能够显示数据库上的数据...
展开全部 用jdbc 连接mysql数据库就行了,网上搜下一大把. --记得在classpath下加入mysql 的jdbc驱动包. /** * @author :来e68a84e8a2ad32313 ...
- c mysql数据库_C实现MySQL数据库操作
C实现MySQL数据库操作 两个月前,也就是9月份,心血来潮在windows下实现了用C连接数据库,当时很是有把linux下一并给实现了.但是没有想得那么简单.这个任务一直推迟到了现在才完成,究其原因 ...
- c# mysql 操作_c#对mysql数据库的基本操作
1 数据库的创建 打开已经安装好的数据库,如下流程: step 1:单击 "MySQL Command Line Client-Unicode" step 2:输入密码,进入数据库 ...
- mysql设计一个简单的系统_一个简单数据库设计例子
一个曾经做过的简单的管理系统中数据库设计的例子,包括设计表.ER图.建模.脚本. 项目信息 Project Name: Book Manager System DB: MySQL5.5 DB Name ...
- c 与mysql连接_c与mysql的连接
{"data":{"id":"8000-000000437045-0","name":"SEO专题页栏目分发组 ...
最新文章
- [云炬创业学笔记]第二章决定成为创业者测试10
- java lambda::_基准测试:Java 8 Lambda和流如何使您的代码慢5倍
- Django 表操作时 字段名为变量
- 我想说:mysql 的 join 真的很弱|文末福利
- 使用Spring配合Junit进行单元测试的总结
- 我的敏捷、需求分析、UML、软件设计电子书 - 下载(持续更新中)
- 植物大战僵尸Scratch
- BI报表工具:IT人的必备工具!
- 用proxifier、ccproxy、teamviewer做网络代理
- QQ在线客服聊天功能
- 计算机语言s是什么,什么是语义学(Semantics)?
- 云计算基础架构实施要经历三个阶段
- 一元二次方程求解的实现
- python miio 连接小米网关_小米门窗传感器2本质是感应门窗开合的,结果更好用的却是光线传感器...
- uniAPP 自定义页面导航烂 - 搜索 APP有效
- 虎头蛇尾的韩文学习记录
- 使用PHP环境一键安装包快速搭建PHP开发环境
- 自考学历和成考学历哪个更高一些 有啥区别
- 【音乐铃声定时播放器】红苹果MP3音乐铃声定时播放器
- 1.21(0/1 Knapsack)
热门文章
- 史上最壕无人车买家诞生!泥潭中的Uber要搞个超大的无人出租车队
- Class.forName()方法抛出异常
- 乱码385b1b926a38153d38957556c0dc55b5
- 原来更新A的一列为B列的一列,这样简单呀
- 如何滚动更新 Service?- 每天5分钟玩转 Docker 容器技术(102)
- web.config SetAttributes
- AIX LV删除后,ORACLE数据库文件全部恢复成功
- IE 6和IE 7对于按钮背景图案的处理 【转载】
- 如何在一个日期值上加上分钟值得到新的日期
- Chapter 8 Document Management(第8章 文档管理)—1 【中英文对照】