一个简单访问Mysql数据库的例程

来源:互联网 发布:360安全软件管家 编辑:程序博客网 时间:2024/04/29 16:03

#include <winsock.h>
#include <mysql.h>

#include <iostream>

using namespace std;

 

#ifndef NULL
#define NULL 0
#endif

 

int main(int argc, char* argv[])
{
 MYSQL mysql;
 
 mysql_init(&mysql);

 MYSQL* pMysql = mysql_real_connect(&mysql //! mysql [3月/16日/2010年 马强]
                                                             ,_T("127.0.0.1") //! 数据库所在地址 [3月/16日/2010年 马强]
                                                             ,_T("root") //! 用户名 [3月/16日/2010年 马强]
                                                             ,_T("") //! 密码 [3月/16日/2010年 马强]
                                                             ,_T("") //! 使用的数据库名 [3月/16日/2010年 马强]
                                                             ,MYSQL_PORT //! 连接端口 [3月/16日/2010年 马强]
                                                             ,NULL
                                                             ,0);

 if (NULL != pMysql)
 {
        char szSql[] = _T("select * from shool");

  

        //! 执行查询 [3月/16日/2010年 马强]
        if (0 == mysql_query(&mysql,szSql))
        {
               MYSQL_FIELD* pmysql_field = NULL;
               MYSQL_RES*   pmysql_res   = NULL;
               MYSQL_ROW    mysql_row    = NULL;

              

               pmysql_res = mysql_store_result(&mysql);

  

               int n = 0;

              //! 列出所有列标 [3月/16日/2010年 马强]
              unsigned int nNum = mysql_num_fields(pmysql_res);
              printf(_T("--------------------------------------------/n| "));
              for (int i = 0; i < nNum; ++i)
              {
                   pmysql_field = mysql_fetch_field(pmysql_res);
                   printf(_T("%s | "),pmysql_field->name);
              }
              

              printf(_T("/n--------------------------------------------/n"));

   

             //! 数据 [3月/16日/2010年 马强]
            while (mysql_row = mysql_fetch_row(pmysql_res))
            {
                for (int i = 0; i < nNum; ++i)
               {
                   printf(_T("| %s     "),mysql_row[i]);
               }

               printf(_T("/n"));
            }

 

            cout<<_T("/n--------------------------------------------/n");

           

            //! 释放查询占用内存 [3月/16日/2010年 马强]
            mysql_free_result(pmysql_res);
      }
   }

   mysql_close(&mysql);

   return 0;
}

原创粉丝点击