用C语言操作MySQL数据库,进行连接、插入、修改、删除等操作

本文展示了一个使用 C++ 进行 MySQL 数据库查询的例子,包括数据库连接、执行 SQL 语句、获取并打印查询结果的过程。

#include <winsock.h>
#include <mysql.h>
#include <windows.h>
#pragma comment(lib,"libmySQL.lib")
#pragma comment(lib,"wsock32.lib")
#include <stdio.h>
#define MAX_COLUMN_LEN  32

void main(){
 MYSQL my_connection;   //定义数据库连接的句柄,它被用于几乎所有的MySQL函数
    MYSQL_RES *result;   //查询结果集,结构类型
    MYSQL_ROW sql_row;   //存放一行查询结果的字符串数组
    MYSQL_FIELD *fd;   //包含字段信息的结构
    char column[MAX_COLUMN_LEN][MAX_COLUMN_LEN];
    int res;  
    mysql_init(&my_connection);  
    if(mysql_real_connect(&my_connection,"192.168.3.3" 
  ,"root","tdrtdr","gateway",3306,NULL,0))  
    {  
        perror("connect");
        res=mysql_query(&my_connection,"select * from fcardlist");//查询  
        if(!res)  
        {  
            result=mysql_store_result(&my_connection);//保存查询到的数据到result  
            if(result)  
            {  
                int i,j;  
                printf("the result number is %lu\n ",(unsigned long)mysql_num_rows(result));  
                for(i=0;fd=mysql_fetch_field(result);i++)//获取列名  
                {  
                    memset(column[i],0,sizeof(column[i]));  
                    strcpy(column[i],fd->name);  
                }  
                j=mysql_num_fields(result);  
                for(i=0;i<j;i++)  
                {  
                    printf("%s\t",column[i]);  
                }  
                printf("\n");  
                while(sql_row=mysql_fetch_row(result))//获取具体的数据  
                {  
                    for(i=0;i<j;i++)  
                    {  
                        printf("%s\t",sql_row[i]);  
                    }  
                    printf("\n");  
                }  
    
            }  
        }  
        else 
        {  
            perror("select");
        }  
    }  
    else 
    {  
        perror("connect:error");  
    }  
    mysql_free_result(result);//释放结果资源  
    mysql_close(&my_connection);//断开连接
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值