c程序调用 mysql库函数 操作数据库

原创 2015年07月09日 11:38:26

1 连接上服务器:

/*
mytable 数据库中的表格名称
name 根据 name 进行选择
*/
#define SELECT_QUERY "select * from mytable where name like '%s'"   

MYSQL mysql, *sock; //定义数据连接句柄
/*******************************************
函数名:    service_sql_init
功能:     服务器数据库初始化
*********************************************/

int service_sql_init(void)
{
    mysql_init(&mysql);
    /* 连接上数据库 */
//  if(!(sock = mysql_real_connect(&mysql, "localhost", "root", "my-name-is?lza1205", "rt5350_user_list", 0, NULL, 0))){
    if(!(sock = mysql_real_connect(&mysql, "localhost", "root", "123456", "rt5350_user_list", 0, NULL, 0))){
        fprintf(stderr, "Couldn't connect to engine!\n%s\n\n", mysql_error(&mysql));
        perror("");
        exit(1);
    }
    return 0;
}

/*******************************************
函数名:    service_sql_select
功能:     根据name 从服务器中找出passwd
*********************************************/

int service_sql_select(char *name, char *passwd)
{
    MYSQL_RES   *res;   //查询结果集
//  MYSQL_FIELD *fd;    //包含字段信息
    MYSQL_ROW   row;    //存放一行查询结果的字符串数组
    char qbuf[160];     //存放查询 sql 语句字符串

    sprintf(qbuf, SELECT_QUERY, name);
    printf("qbuf is %s\n", qbuf);
    /* 查询数据库 */
    if(mysql_query(sock, qbuf)){
        fprintf(stderr, "Query failed (%s)\n", mysql_error(sock));
        return -1;
    }

    if(!(res = mysql_store_result(sock))){
        fprintf(stderr, "Couldn't get result from %s\n", mysql_error(sock));
        return -1;
    }

    printf("number of fields returned : %d\n", mysql_num_fields(res));
    while((row = mysql_fetch_row(res))){
        printf("Ther name #%s 's passwd is: %s\n", (((row[0]==NULL)&&(!strlen(row[0]))) ? "NULL" : row[0]),
                                                    (((row[1]==NULL)&&(!strlen(row[1]))) ? "NULL" : row[1])); 
        puts( "query ok !\n" ) ; 
        strcpy(passwd, (((row[1]==NULL)&&(!strlen(row[1]))) ? "NULL" : row[1]));
        mysql_free_result(res);
        return 0;
    }

    mysql_free_result(res);
    return -1;
//    mysql_close(sock);
}

ubuntu环境中操作MySQL,使用C语言API调用MySQL

前言:最近准备做毕业设计,初次接触到MySQL,做一个学习记录 安装MySQL:傻瓜式安装 sudo apt-get install mysql-server apt-get install l...
  • zouwm12
  • zouwm12
  • 2016年09月03日 13:23
  • 1064

c语言操作mysql和数据库基本操作

第一部分c语言操作数据库1、连接 MYSQL *mysql mysql=mysql_init(NULL);//初始化一下 mysql_real_connect(mysql,HOST,USER,...
  • m0_37787222
  • m0_37787222
  • 2017年09月03日 22:10
  • 278

Linux C中库函数和系统调用的区别

从程序完成的功能来看,函数库提供的函数通常是不需要操作系统的服务. 函数是在用户空间内执行的,除非函数涉及到I/O操作等,一般是不会切到核心态的。 系统调用是要求操作系统为用户提供进程,提供某种服务...
  • joejames
  • joejames
  • 2014年08月30日 13:33
  • 944

使用C语言调用mysql数据库编程实战以及技巧

之前用DB2数据库,这次遇上客户非要用mysql,经过各种查阅资料,各种研究,任务完成,遂写成笔记,为其他IT同行作为参考,当然有错误可以直接提出来,共同学习。 一、mysql数据库的C语言常用接口A...
  • u010193457
  • u010193457
  • 2015年07月17日 11:23
  • 6082

linux下C语言编程操作MySQL数据库

在实际应用中,我们不可能在命令行登录进数据库进行数据的查询、插入等操作,用户一般是使用一个界面良好的应用程序软件来对数据进行管理。为了方便应用程序的开发,MySQL提供了多种编程语言(C、perl、p...
  • qq_21111579
  • qq_21111579
  • 2016年07月28日 09:55
  • 3860

java代码调用数据库的存储过程和函数 CallableStatement的用法

1
  • lz1012793721
  • lz1012793721
  • 2015年12月14日 21:06
  • 1288

C语言简单操作MYSQL数据库的增删查找

下面的代码只是简单的运用MYSQL命令 #include #include //所需头文件 #include #include MYSQL *conn_prt; //创造一个M...
  • u014453898
  • u014453898
  • 2017年01月23日 22:39
  • 2023

linux平台学x86汇编(十六):在汇编语言中调用C库函数

【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】         其实在汇编语言中也是可以使用C库函数的,这一节我们来看一下...
  • gentleliu
  • gentleliu
  • 2015年05月10日 21:07
  • 1851

CentOS使用MySQL的详细步骤,及C API编程

1.1 执行yum命令安装MySQL yum -y install mysql mysql-server 1.2 把添加MySQL进开机启动项,并立即启动MySQL chkconfi...
  • dotphoenix
  • dotphoenix
  • 2013年01月26日 10:57
  • 19012

MFC调用mysql操作

要用MySQL提供的C语言API,首先要包含API的头文件目录,也就是在MFC工程属性中的“包含目录”下添加MySQL安装目录的“include”文件夹。因为API是以动态链接库的形式打包的,所以还要...
  • b2292486308
  • b2292486308
  • 2016年12月30日 17:34
  • 1244
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:c程序调用 mysql库函数 操作数据库
举报原因:
原因补充:

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