lnlidawei

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

[c][cpp]:  c(cpp)  connect to MariaDB -- (Codes)

 

 

 

 

一、注意事项

 

  1、操作系统: 【 fedora38 】

 

  2、c/cpp 连接 MariaDB数据库,需要使用额外的文件。

 

  3、头文件【 /usr/include/mysql/mysql.h 】:mysql.h

 

  4、库文件【 /usr/lib64/mysql/libmysqlclient.so 】:libmysqlclient.so

 

  5、编译命令: [wit@fedora mysql]$    gcc    -L/usr/lib64/mysql    -lmysqlclient     -o work01_mariadb    work01_mariadb.c     &&     ./work01_mariadb 

 

 

 

二、代码

 1 // work01_mariadb.c
 2 
 3 
 4 #include <stdio.h>
 5 #include <mysql/mysql.h>
 6 #include <string.h>
 7 
 8 
 9 void main()
10 {
11 
12         MYSQL* mysql = mysql_init(NULL);
13 
14 
15         if ( mysql == NULL ) 
16         {
17                 return ;
18         }
19 
20 
21         if ( 
22                 mysql_real_connect
23                         ( 
24                                 mysql,
25                                 "127.0.0.1",
26                                 "YOUR_USER_NAMES",
27                                 "YOUR_PASSWORD",
28                                 "dbtest",
29                                 3306, 
30                                 NULL, 
31                                 0
32                         )  ==  NULL 
33           ) 
34         {
35                 return ;
36         }
37 
38 
39         MYSQL_ROW row = NULL;
40 
41         MYSQL_RES* res = NULL;
42 
43         char* query = "select * from info";
44 
45         if (mysql_real_query(mysql, query, strlen(query)) != 0)
46         {
47                 return ;
48         }
49 
50         res = mysql_store_result( mysql );
51 
52         while ( row = mysql_fetch_row(res) )
53         {
54                 printf("\n");
55                 for(int i=0; i<2; i++){
56                         printf("%s\t", row[i]);
57                 }
58                 printf("\n");
59         }
60         printf("\n");
61 
62         return ;
63 }

 

 

三、运行结果

 1 [wit@fedora mysql]$ gcc -L/usr/lib64/mysql -lmysqlclient  -o work01_mariadb work01_mariadb.c  &&  ./work01_mariadb 
 2 
 3 1       laohu
 4 
 5 2       wit
 6 
 7 3       cat
 8 
 9 4       ox
10 
11 5       niu
12 
13 6       cat
14 
15 7       ox
16 
17 8       wit
18 
19 9       cat
20 
21 10      ox
22 
23 11      wit
24 
25 12      cat
26 
27 13      ox
28 
29 14      wit
30 
31 15      cat
32 
33 16      ox
34 
35 17      wit
36 
37 [wit@fedora mysql]$ 
38 [wit@fedora mysql]$ 

 

 

四、参考文档

 

  1、  在Linux下,使用c语言连接数据库  --  https://baijiahao.baidu.com/s?id=1727460130512714566&wfr=spider&for=pc

 

posted on 2024-01-19 08:06  lnlidawei  阅读(9)  评论(0编辑  收藏  举报