C++操作MySQL例子(1)

来源:互联网 发布:严重程度评估矩阵图 编辑:程序博客网 时间:2024/06/05 00:43
//vc6.0编译成功 无措  复制代码的时候注意编码全角半角问题#include "stdafx.h"#include <stdio.h>#include <stdlib.h>#include <winsock2.h>#pragma comment(lib, "ws2_32")#pragma comment(lib, "libmysql")#include "mysql.h"  int main(int argc, char* argv[]){int res,j;    MYSQL mysql;    MYSQL_RES *resultset;    MYSQL_ROW row;      mysql_init(&mysql);// 初始化mysql结构  //连接本机,用户名是root,密码是hope,数据库是hope,端口是3306    if (!mysql_real_connect(&mysql, "localhost", "root", "hope", "hope", 3306, NULL, 0))    {        printf("\n数据库连接发生错误!");    }    else    {        printf("\n数据库连接成功!\n");  //插入一条数据到数据库res = mysql_query(&mysql, "insert into student(name,age,rollno) values('elisa',33,'3')");        if(!res)        {             printf("插入%lu行数据成功!\n",(unsigned long)mysql_affected_rows(&mysql));        }        else printf("插入数据失败!\n");                if(mysql_query(&mysql,"select * from student")){printf("数据库查询发生错误");}else{                              //检索数据            printf("\n查询数据为:\n");                    resultset = mysql_store_result(&mysql);// 获得结果集                    if (mysql_num_rows(resultset) != NULL)           {int numRows = mysql_num_rows(resultset); // 获得结果集中的记录数int numFields = mysql_num_fields(resultset);// 获得表中字段数printf("共 %d 行记录,每行 %d 个字段。", numRows, numFields);j = 1;                while (row = mysql_fetch_row(resultset))                {                    int i = 0;                    printf("\n 第 %d 行:", j);for (i = 0; i < numFields; i++)                    {                        fprintf(stdout, " %s", row[i]); // 打印字段值                    }                    j++;                 }           }           else           {               printf("\n无查询结果!");           }            mysql_free_result(resultset);  // 释放结果集       }    }      mysql_close(&mysql); // 释放数据库连接 fgetchar();return 0;


原创粉丝点击