、安装MySQL

2、建立C++控制台程序,新建CPP源文件,如:sqlconn.cpp

3、工程项目中属性—C/C++--常规—附加包含目录中添加mysql安装目录中的MySQL\MySQL\MySQL Server 5.7\include

4、添加库目录C:\Program Files\MySQL\MySQL Server 5.7\lib

5、添加依赖项 libmysql.lib

6、运行平台改为X64(这不很重要,不然编译会报错)

7、源文件中stdafx.h中添加头文件winsock.h和mysql.h(下图这样编译会报错)

8、编写自己的数据库操作程序

// sqlconn.cpp : 定义控制台应用程序的入口点。

#include <stdio.h>

#include <mysql.h>

#include "stdafx.h"

int _tmain(int argc, _TCHAR* argv[])

{

MYSQL * con; //数据库对象

MYSQL_RES *res; //res结构体,用于保存查询结果

MYSQL_ROW row;

char tmp[400];

//database configuaration

char dbuser[30] = "root";

char dbpasswd[30]="root";

char dbip[30]="localhost";

char dbname[50]="test";

char tablename[50]="user";

char *query=NULL;

int x,y,rt;

unsigned int t;

int count=0;

//初始化数据库环境

con = mysql_init((MYSQL*)0);

//连接数据库

if(con!=NULL&&mysql_real_connect(con,dbip,dbuser,dbpasswd,dbname,3306,NULL,0))

{

//选择要操作的数据库

if(!mysql_select_db(con,dbname))

{

printf("select success the database!\n");

con->reconnect=1;

//执行sql语句设置编码为gbk

query="set names \'gbk\'";

rt=mysql_real_query(con,query,strlen(query));

//Sql语句执行为0则成功

if(rt){

printf("Error making query:%s!\n",mysql_error(con));

}

else{

printf("query %s success!\n",query);

}

}

}

else{

MessageBoxA(NULL,"Unable to connect the database,check your configuration!","",NULL);

}

//数据库中插入记录

//sql语句

sprintf_s(tmp,"insert into user values(null,'liujie2')");

//执行

rt = mysql_real_query(con,tmp,strlen(tmp));

if(rt){

printf("Error making query:%s!\n",mysql_error(con));

}

else{

printf("%s executed!\n",tmp);

}

//给表中插入数据

sprintf_s(tmp,"select * from %s",tablename);

//执行

rt = mysql_real_query(con,tmp,strlen(tmp));

if(rt){

printf("Error making query:%s!\n",mysql_error(con));

}

else{

printf("%s executed!\n",tmp);

}

//将查询结果保存到res结构体中

res = mysql_store_result(con);

//遍历查询结果的行

while(row = mysql_fetch_row(res)){

for(t=0;t<mysql_num_fields(res);t++){

//打印查询行内容

printf("%s \n",row[t]);

}

printf("-----------\n");

count++;

}

printf("number of rows %d\n", count);

printf("mysql_free_result...\n");

//释放结果内存

mysql_free_result(res);

//关闭数据库连接

mysql_close(con);

system("pause");

return 0;

}

9、将编译程序和libmysql.dll放在一个目录,然后执行即可

测试通过,十分有效

windows下C++操作MySQL数据库的更多相关文章

  1. windows 命令行操作 Mysql 数据库

    1 前言 有接手一个新项目,项目中到了 Mysql 数据库 ,这里总结下 windows 命令行操作 Mysql 数据库. 2 Cmd操作数据库 2.1 连接Mysql服务器,命令如下:(root用户 ...

  2. python【第十二篇下】操作MySQL数据库以及ORM之 sqlalchemy

    内容一览: 1.Python操作MySQL数据库 2.ORM sqlalchemy学习 1.Python操作MySQL数据库 2. ORM sqlachemy 2.1 ORM简介 对象关系映射(英语: ...

  3. Windows 下Java 连 MYSQL数据库

    我们上课的时候在机房是用java连SQLServer2008的.由于这个数据库软件安装太麻烦,最重要的一点是安装后系统应该会变慢.至少开机速度会有影响.至于这个mysql我觉得下载一个绿色版的,然后自 ...

  4. Windows下Qt连接MySql数据库

    1.设置环境变量,需添加如下的环境变量:      2.打开Qt Command Prompt,输入第一条命令:cd %QTDIR%\src\plugins\sqldrivers\mysql 后按回车 ...

  5. Windows 下Python操作MySQL

    1.环境要求(Win7 X64): python 2.7, MySQL-python-1.2.3.win-amd64-py2.7 :http://www.codegood.com/download/1 ...

  6. windows下python操作mysql模块安装

    百度教程说安装 pip install mysqldb 这在我的电脑上安装失败: Could not find a version that satisfies the requirement mys ...

  7. ubuntu下C操作Mysql数据库第一步

    学习于: http://armsword.com/2013/06/20/ubuntu-c-mysql.html

  8. python操作三大主流数据库(1)python操作mysql①windows环境中安装python操作mysql数据库的MySQLdb模块mysql-client

    windows安装python操作mysql数据库的MySQLdb模块mysql-client 正常情况下应该是cmd下直接运行 pip install mysql-client 命令即可,试了很多台 ...

  9. Windows下安装MySQLdb, Python操作MySQL数据库的增删改查

    这里的前提是windows上已经安装了MySQL数据库,且配置完成,能正常建表能操作. 在此基础上仅仅需安装MySQL-python-1.2.4b4.win32-py2.7.exe就ok了.仅仅有1M ...

随机推荐

  1. mysqlinsert触发器的创建

    CREATE DEFINER=`wpsuper`@`%` TRIGGER `o2oinsert` BEFORE INSERT ON `t_s_o2o`FOR EACH ROW begin set Ne ...

  2. 在Form Load中设置showInTaskBar =false 或 隐藏窗口 this.Hide()时会导致注册的全局快捷键无效

    在Form Load中设置showInTaskBar =false   或 隐藏窗口 this.Hide() 会导致注册的全局快捷键无效.  反正是其中一个,有点记不清了. 在Form Shown中s ...

  3. [DP题]吃糖果

    1944:吃糖果 总时间限制:1000ms内存限制:65536kB 描述 名名的妈妈从外地出差回来,带了一盒好吃又精美的巧克力给名名(盒内共有 N 块巧克力,20 > N >0).妈妈告诉 ...

  4. Azkaban任务流编写

    在Azkaban中,一个project包含一个或多个flows,一个flow包含多个job.job是你想在azkaban中运行的一个进程,可以是Command,也可以是一个Hadoop任务.当然,如果 ...

  5. java中如何制定自定义异常

    package gys; public class ExpetionTest { public static void main(String[] args) { NumberCheck n=new ...

  6. 【理论】python使用celery异步处理请求

    Flask中使用celery队列处理执行时间较长的请求. 一. 安装celery pip install celery flask redis 二. celery简介 Celery是个异步分布式任务队 ...

  7. C# 窗体常用API函数 应用程序窗体查找

    常用的处理窗体的API函数如下(注意:API函数必须放在窗体中...): 使用C#语言,要引用DllImport,必须要添加using System.Runtime.InteropServices命名 ...

  8. 使用python读取大文件

    python中读取数据的时候有几种方法,无非是read,readline,readlings和xreadlines几种方法,在几种方法中,read和xreadlines可以作为迭代器使用,从而在读取大 ...

  9. 使用WebLogic时控制台输出中文乱码解决方法

    使用WebLogic时控制台输出中文乱码解决方法 1.找到weblogic安装目录,当前项目配置的domain 2.找到bin下的setDomainEnv.cmd文件 3.打开文件,从文件最后搜索第一 ...

  10. 【python 】装饰器 (多个参数的函数,带参数的装饰器)【转】

    最简单的模板是这样的 #-*-coding:utf-8-*- def outer(func): def inner(): print 'before' func() print 'after' # r ...