玖叶教程网

前端编程开发入门

C语言编程中对MySQL数据库的数据调用详解

MySQL数据库简介

如今很多大型网站已经选择MySQL数据库来存储数据。那么MySQL到底有什么优势呢?

MySQL数据库的使用以及非常广泛,尤其是在Web应用方面。MySQL数据库有很多的优势,下面总结了其中几个优势:

1.MySQL是开放源代码的数据库

2.MySQL的跨平台性

3.价格优势

4.功能强大且使用方便

登陆数据库

使用命令 mysql -u root -p 登陆数据库
然后输入密码就可以进入到数据库里.
使用命令:show databases;查看数据里里面所有的数据库。
使用命令 use  stu  切换到所指定的stu 数据库。
命令:show tables;  查看数据库里面所有的表。
命令:desc  stu 可以查看表名stu里面的字段信息
命令:select * from stu 查看表的记录。

我的数据库里面已经设置好了一张学生的成绩表,接下来我们用C语言编程调用数据库,把里面的数据提取出来。

涉及到的函数

所有用到的函数都已经一一列出来了,接下来我们开始设计C语言程序把MySQL连接起来

实现代码

#include <stdio.h>
  #include <mysql/mysql.h>
  #include <string.h>
  
  typedef struct Stu
  {
    int id;
    char name[20];
    float Chinese;
    char English[2];
    float Math;
  }Stu;
  
  int main()
{
    Stu s;
    //定义数据库句柄
    MYSQL mysql;
    //初始化句柄
    if(NULL == mysql_init(&mysql))
    {
     printf("初始化失败!\n");
      return -1;
    }
    //连接数据库
    if(NULL == mysql_real_connect(&mysql,"localhost","root","123456","stu",0,NULL,0))
    {
      printf("%s\n",mysql_error(&mysql));
      return -1;                                                                               
    }
    mysql_set_character_set(&mysql,"utf8");//修改字符集格式
    printf("数据库连接成功!\n");
    //接下面的代码才能运行

代码注释还是比较详细,你们可以自己注意看一下,以上代码段是连接数据库的,如果连接成功会打印出最后那句:数据库连接成功!

调用数据库数据代码

   //发送sql语句
   char sql[1024];
   strcpy(sql,"select * from stu");
   if(0 != mysql_query(&mysql,sql))
   {
     printf("%s\n",mysql_error(&mysql));
     return -1;
   }
   MYSQL_RES *result = NULL;
   int num_rows = 0,num_fields = 0;
   result  = mysql_store_result(&mysql);
   num_rows = mysql_num_rows(result);
   num_fields = mysql_num_fields(result);
   printf("行数:%d,列数:%d\n",num_rows,num_fields);
   MYSQL_ROW row = NULL;
   while(1)
   {
     row = mysql_fetch_row(result);
     if(NULL == row)
       break;
     for(int i=0;i<num_fields;i++)
     {
       printf("%s ",row[i]);
     }
     printf("\n");
   }
   //释放结果集
   mysql_free_result(result);
   //关闭数据库
   mysql_close(&mysql);
   return 0;
 }

后面这段代码实现了对数据库里面数据的调用,选择的数据是刚刚在上面展示数据库里面的一张学生成绩表。

结果

我们运行完代码后发现可以把MySQL里面的数据成功地取出来打印,那就说明程序以及成功,这只是简单地读取操作,但是其他的增删改查也类似,读者可以举一反三自己试一下吧对数据库的增删改查功能也实现了。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言