您的位置:首页 > 数据库 > MySQL

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

2010-03-16 13:11 375 查看
#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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: