tft每日頭條

 > 科技

 > c語言操作mysql數據庫

c語言操作mysql數據庫

科技 更新时间:2024-12-11 22:54:25

MySQL數據庫簡介

如今很多大型網站已經選擇MySQL數據庫來存儲數據。那麼MySQL到底有什麼優勢呢?

MySQL數據庫的使用以及非常廣泛,尤其是在Web應用方面。MySQL數據庫有很多的優勢,下面總結了其中幾個優勢:

1.MySQL是開放源代碼的數據庫

2.MySQL的跨平台性

3.價格優勢

4.功能強大且使用方便

c語言操作mysql數據庫(C語言編程中對MySQL數據庫的數據調用詳解)1

登陸數據庫

c語言操作mysql數據庫(C語言編程中對MySQL數據庫的數據調用詳解)2

使用命令 mysql -u root -p 登陸數據庫 然後輸入密碼就可以進入到數據庫裡. 使用命令:show databases;查看數據裡裡面所有的數據庫。

c語言操作mysql數據庫(C語言編程中對MySQL數據庫的數據調用詳解)3

使用命令 use stu 切換到所指定的stu 數據庫。 命令:show tables; 查看數據庫裡面所有的表。

c語言操作mysql數據庫(C語言編程中對MySQL數據庫的數據調用詳解)4

命令:desc stu 可以查看表名stu裡面的字段信息 命令:select * from stu 查看表的記錄。

我的數據庫裡面已經設置好了一張學生的成績表,接下來我們用C語言編程調用數據庫,把裡面的數據提取出來。

涉及到的函數

c語言操作mysql數據庫(C語言編程中對MySQL數據庫的數據調用詳解)5

所有用到的函數都已經一一列出來了,接下來我們開始設計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; }

後面這段代碼實現了對數據庫裡面數據的調用,選擇的數據是剛剛在上面展示數據庫裡面的一張學生成績表。

結果

c語言操作mysql數據庫(C語言編程中對MySQL數據庫的數據調用詳解)6

我們運行完代碼後發現可以把MySQL裡面的數據成功地取出來打印,那就說明程序以及成功,這隻是簡單地讀取操作,但是其他的增删改查也類似,讀者可以舉一反三自己試一下吧對數據庫的增删改查功能也實現了。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved