[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
本文由 lnlidawei 原创、整理、转载,本文来自于【博客园】; 整理和转载的文章的版权归属于【原创作者】; 转载或引用时请【保留文章的来源信息】:https://www.cnblogs.com/lnlidawei/p/17973838