1、数据库链接

int cppDatebase::DatabaseConnect(sBit8 *uName,sBit8 *pWord,sBit8 *dbName)

{

  dbHandle = mysql_init(NULL);
  if(NULL == dbHandle )
  {
    cout<<"mysql init error!"<<endl;
    return (-1);
  }  

  if(NULL == mysql_real_connect(dbHandle ,"localhost",uName,pWord,dbName,0,NULL,0))

  {
    cout<<"connect error!"<<endl;
    return (-1);
  }

  mysql_set_character_set(dbHandle ,"utf8");

  return 0;

}

2、数据库插入——增

int cppDatebase::DatabaseInsert(const char *cmd)
{
  if(NULL == cmd)
  {
    cout<<"[insert] cmd error"<<endl;
    return (-1);
  }

  int ret = mysql_query(dbHandle,cmd);
  if(ret !=0)
  {
    cout << "Database Insert Info: exist, I am updata." <<endl<<endl;
    return (-1);
  }

  return 0;
}

3、数据库删除——删

int cppDatebase::DatabaseDelete(const char *cmd)
{
  if(NULL == cmd)
  {
    cout<<"[delete] cmd error"<<endl;
    return (-1);
  }

  int ret = mysql_query(dbHandle,cmd);
  if(ret !=0)
  {
    cout << "Database Delete Info: not exist." <<endl<<endl;
    return (-1);
  }

  return 0;
}

4、数据库更新——改

int cppDatebase::DatabaseUpdate(const char *cmd)
{
  if(NULL == cmd)
  {
    cout<<"[update] cmd error"<<endl;
    return (-1);
  }

  int ret = mysql_query(dbHandle,cmd);
  if(ret !=0)
  {
    cout << "Database Update Info: not exist, I am insert." <<endl<<endl;
    return (-1);
  }

  return 0;
}

5、数据库查询——查

int cppDatebase::DatabaseQuery(char *cmd, char **row)
{
  if(NULL == cmd || NULL == row)
  {
    cout<<"[query] cmd error"<<endl;
    return (-1);
  }

  mysql_real_query(dbHandle,cmd,strlen(cmd));

  MYSQL_RES *result = mysql_store_result(dbHandle);
  if(result != NULL)
  {
    int numLine = mysql_num_rows(result);
    int numList = mysql_num_fields(result);
  }
  else
  {
    cout<<"[query] mysql_store_result error !"<<endl;
    return (-1);
  }
  while((row = mysql_fetch_row(result)))
  {
    printf("%s, %s %s %s\n",row[0],row[1],row[2],row[3]);
  }
  mysql_free_result(result);

  return 0;
}

6、数据库断开

int cppDatebase::DatabaseClose()
{
  mysql_close(dbHandle);

  return 0;
}

C/C++操作MySQL数据库——增、删、改、查的更多相关文章

  1. 简单的php数据库操作类代码(增,删,改,查)

    这几天准备重新学习,梳理一下知识体系,同时按照功能模块划分做一些东西.所以.mysql的操作成为第一个要点.我写了一个简单的mysql操作类,实现数据的简单的增删改查功能. 数据库操纵基本流程为: 1 ...

  2. day 37-8 关于mysql 的增 删 改 查 及联合列表

    1      VARCHAR : 字符串的意思 (括号内的数字代表尾数) 输入的字符串在这个范围内都行 CHAR  :字符串的意思(区别就有几位数字 必须写几位) INT   整数(位数) 输入的数字 ...

  3. python操作mysql数据库增删改查的dbutils实例

    python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...

  4. Asp.Net操作MySql数据库增删改查

    Asp.Net操作MySql数据库增删改查,话不多说直接步入正题.git源码地址:https://git.oschina.net/gxiaopan/NetMySql.git  1.安装MySQL数据库 ...

  5. 好用的SQL TVP~~独家赠送[增-删-改-查]的例子

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  6. iOS sqlite3 的基本使用(增 删 改 查)

    iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...

  7. iOS FMDB的使用(增,删,改,查,sqlite存取图片)

    iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...

  8. django ajax增 删 改 查

    具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...

  9. Golang原生sql操作Mysql数据库增删改查

    Golang要操作mysql数据库,首先需要在当期系统配置GOPATH,因为需要使用go get命令把驱动包下载到GOPATH下使用. 首先配置好你的GOPATH,执行以下命令,下载安装mysql驱动 ...

  10. ADO.NET 增 删 改 查

    ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...

随机推荐

  1. EntityFramework 基础的crud

    EntityFramework 基础的crud操作 根据上一张实体映射的demo学习基础的crud操作 1.增加 BlogDbContext dbContext = new BlogDbContext ...

  2. bootstrap-13

    bootstrap框架中制作导航条主要通过“.nav”样式.默认的.nav样式不提供默认的导航方式,必须附加另外一个样式才会有效,比如.nav-tabs,.nav-pill之类. 导航(标签型导航): ...

  3. C#中动态读写App.config配置文件

    转自:http://blog.csdn.net/taoyinzhou/article/details/1906996 app.config 修改后,如果使用cofnigurationManager立即 ...

  4. (MST) HDOJ 1102 Constructing Roads

    怎么说呢 这题就是个模板题 但是 hud你妹夫啊说好的只有一组数据呢??? 嗯??? wa到家都不认识了好吗 #include <cstdio> #include <cstring& ...

  5. Docker registry V2

    部署私有Docker Registry 搭建 Insecure Registry 修改Registry server上的Docker daemon的配置,为DOCKER_OPTS增加–insecure ...

  6. node环境配置安装(nvm)

    在我们前端开发工程中,很多繁琐机械的操作都是会慢慢的被抽离出来的,当我们为dom操作和浏览器兼容性感到厌烦时,jQuery出现了,当我们不想再去理会dom的添加删除等的时候,angularJS来解救我 ...

  7. php接口和抽象类

    接口关键字:interface,不加class关键字接口里面有成员方法,但是没有函数体.实现接口使用的关键字:implements 不是extends子类必须实现接口的所有方法 使用接口,你可以指定某 ...

  8. Win8 WinRT将替换Win32 API程序员何去何从?

    win8 新引入了称为WinRT的核心API.支持使用C/C++..NET或JavaScript来开发Metro风格的应用.这些应用自动获得硬件加速和高级电源管理的功能.现有的Silverlight和 ...

  9. 【freemaker】之include,import区别

    新建三个模版文件 inc1.ftl,inc2.ftl,03.ftml <#--inc1--> <#assign username="老李1"> <#- ...

  10. pandas入门

    [原]十分钟搞定pandas   本文是对pandas官方网站上<10 Minutes to pandas>的一个简单的翻译,原文在这里.这篇文章是对pandas的一个简单的介绍,详细的介 ...