Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > C/C++ > Dec-cpp中连接MYSQL实例(How connect to MYSQL in Dev-cpp)
【标  题】:Dec-cpp中连接MYSQL实例(How connect to MYSQL in Dev-cpp)
【关键字】:Dec-cpp,MYSQL,How,connect,to,MYSQL,in,Dev-cpp
【来  源】:http://blog.csdn.net/dragonxie1983/archive/2006/11/23/1409245.aspx

Dec-cpp中连接MYSQL实例(How connect to MYSQL in Dev-cpp)

Your Ad Here      在网上找了很多关于使用MYSQL C API的资料,和实例。可不是VC下的,就是BCB的,要不就是Linux下的,而我一直想在Win下用标准C++来做东西(美其名曰是想要移植性 :) )。所以想在Dev-cpp下使用 MYSQL C API尝试连接MYSQL。下面把心得和连接、配置方法写一下。

Your Ad Here

1.当然要先安装MySQL数据库了。我安的是5.0

2.我的Dev-cpp版本是4.9.9.2,操作系统是Windows XP SP2 。
 
    a)为Dev-cpp下载MySQL的包。方法有两个:
             1)使用Dev-cpp的更新功能。“工具”-〉“检查更新” 如图1


                           图 1


                                  图 2
在“Select devpak server”中选择“devpaks.org”如图3所示

                          
                            图 3
点击“Check for updates”在得到的文件列表中选择“libmysql”


                            图 4
其他的就是下载和安装了。(图5-7)


               图 5



          图 6

 
                图 7

        b)直接到devpaks.org下载,然后使用package manager安装


                            图   8

3.现在就可以新建工程,来在自己的程序中使用MySQL 提供的C API了。

*注意: 需要对工程作如下设置:
           1)“工程”-〉“工程属性” 中 “参数”选项卡
     在“编译器”和“C++编译器”中加入
    “-Wall”和“-W”不包括“”,在“连接器”中加入“-lmysql”不包括“”
如图9



              
图 9
        2)在程序中加入
                  
#include <mysql/mysql.h>

下面给出一个简单的示例程序。
#include <windows.h>
#include 
<iostream>
#include 
<mysql/mysql.h>

#define SELECT_QUERY "select * from stu "

using namespace std;

int main(int argc, char *argv[])
{
    
//connection params
    char *host = "localhost";
    
char *user = "root";
    
char *pass = "123";
    
char *db = "mydb";

    
//sock
    MYSQL *sock;
    MYSQL_RES 
*res;
      sock 
= mysql_init(0);
    
if (sock) cout << "sock handle ok!" << endl;
    
else {
         cout 
<< "sock handle failed!" << endl;
         
return EXIT_FAILURE;
    }


    
//connection
    if (mysql_real_connect(sock, host, user, pass, db, 0, NULL, 0))
         cout 
<< "connection ok!" << endl;
    
else {
         cout 
<< "connection failed!" << endl;
         
return EXIT_FAILURE;
    }

       
    
//query
    if (mysql_query (sock, SELECT_QUERY ))
    
{
      cout 
<< "Query failed " << mysql_error(sock) << endl;
      exit(
1);
    }

    
if ( !( res = mysql_store_result( sock )))
    
{
      cout 
<< "Couldn't get result from " << mysql_error(sock) <<endl;
      exit(
1);
    }

    
    MYSQL_FIELD 
*field;
    MYSQL_ROW row;
    
while ((field = mysql_fetch_field(res)))
    
{
       printf(
"field name %s ", field->name);
    }

    
    
while ( row = mysql_fetch_row ( res ))
    
{
       cout
<<row[0]<<"     "<<row[1]<<endl;
    }


     
    
    system(
"PAUSE");
    
    
//closing connection
    mysql_free_result ( res );
    mysql_close(sock);
    
return EXIT_SUCCESS;
}


运行结果



OpenGL函数集(待续):【上一篇】
gcc与g++有什么区别?:【下一篇】
【相关文章】
  • Tommath学习笔记
  • Link 方式安装 Eclipse 插件 1.1
  • Tomcat 服务器监控软件,含源码(原创)
  • Jini(TM) Technology Starter Kit Overview V2.1 part1
  • Jini(TM) Technology Starter Kit Overview part2(In edit)
  • dojoTree TreeSelector
  • 字符串编码与未公开的DBCSCodePageEncoding
  • Windows Mobile 开发的相关资源
  • ASP.NET AJAX Control Toolkit Update
  • [原创]Object/DataSet Relational Mapping(对象/数据集关系映射)
  • 【随机文章】
  • 数据汇总
  • 《魔兽世界》教你做人的11条哲理
  • informix 和db2 数据库如何根据日期获取星期几
  • 水晶报表的一个重要问题,谁能帮我解决?
  • 配置windows 2003 VPN服务器
  • 在 FreeBSD 5.4/OpenBSD 3.8 上安装 BT Server
  • hash是如何处理冲突的?
  • Excel妙用-公式结果我都要
  • Window2000系统之保密大法
  • PHP中的日期及时间
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.