C语言MySQL 基础操作(添加、查询和删除)

MySQL 之数据添加

/*练习mysql数据库的查询*/
#include <stdio.h>
#include <string.h>
#include "/usr/local/mysql/include/mysql.h"


int main()
{
	MYSQL mysql;
	MYSQL_RES *res;
	MYSQL_ROW row;
	char *query;
	int flag, t;
	mysql_init(&mysql);
	if(!mysql_real_connect(&mysql, "localhost", "root", "123456", "test", 0, NULL, 0)) {
		printf("Failed to connect to Mysql!\n");
		return 0;
	}else {
		printf("Connected to Mysql successfully!\n");
	}
	query = "select * from student";
	/*查询,成功则返回0*/
	flag = mysql_real_query(&mysql, query, (unsigned int)strlen(query));
	if(flag) {
		printf("Query failed!\n");
		return 0;
	}else {
		printf("[%s] made...\n", query);
	}


	/*mysql_store_result讲全部的查询结果读取到客户端*/
	res = mysql_store_result(&mysql);
	/*mysql_fetch_row检索结果集的下一行*/
	while(row = mysql_fetch_row(res)) {
		/*mysql_num_fields返回结果集中的字段数目*/
		for(t=0; t<mysql_num_fields(res); t++)
		{
			printf("%s\t", row[t]);
		}
		printf("\n");
	}
	mysql_close(&mysql);
	return 0;
}

编译:gcc -o mysqlselect -I /usr/local/include/mysql/ -L /usr/local/mysql/lib -lmysqlclient mysqlselect.c

执行:./mysqlselect

结果展示:

[root@iZ94qvmp90hZ c]# gcc -o mysqlselect -I /usr/local/include/mysql/ -L /usr/local/mysql/lib -lmysqlclient mysqlselect.c
[root@iZ94qvmp90hZ c]# ls -a
.   a.out       hello.c      mysqlselect.c  testmysql.c
..  datatype.c  mysqlselect  testmysql      testmysql.o
[root@iZ94qvmp90hZ c]# ./mysqlselect
Connected to Mysql successfully!
[select * from student] made...
1	1	
2	2	
3	3	



MySQL 之插入

/*练习mysql数据库的数据添加*/  
#include <stdio.h>  
#include <string.h>  
#include "/usr/local/mysql/include/mysql.h"  
  
  
int main()  
{  
    MYSQL mysql;  
    MYSQL_RES *res;  
    MYSQL_ROW row;  
    char *query;  
    int flag, t;  
    mysql_init(&mysql);  
    if(!mysql_real_connect(&mysql, "localhost", "root", "123456", "test", 0, NULL, 0)) {  
        printf("Failed to connect to Mysql!\n");  
        return 0;  
    }else {  
        printf("Connected to Mysql successfully!\n");  
    }  
    query = "insert into student(id,name) values(4,'5')";  
    /*插入,成功则返回0*/  
    flag = mysql_real_query(&mysql, query, (unsigned int)strlen(query));  
    if(flag) {  
        printf("Insert data failure!\n");  
        return 0;  
    }else {  
        printf("Insert data success!\n");  
    }  
  
  
    mysql_close(&mysql);  
    return 0;  
}  

编译:gcc -o mysqlinsert -I /usr/local/include/mysql/ -L /usr/local/mysql/lib -lmysqlclient mysqlinsert.c

执行:./mysqlinsert

结果展示:

[root@iZ94qvmp90hZ c]# gcc -o mysqlinsert -I /usr/local/include/mysql/ -L /usr/local/mysql/lib -lmysqlclient mysqlinsert.c
[root@iZ94qvmp90hZ c]# ls -a
.   a.out       hello.c      mysqlinsert.c  mysqlselect.c  testmysql.c
..  datatype.c  mysqlinsert  mysqlselect    testmysql      testmysql.o
[root@iZ94qvmp90hZ c]# ./mysqlinsert
Connected to Mysql successfully!
Insert data success!


MySQL 之删除

/*练习mysql数据库的删除*/  
#include <stdio.h>  
#include <string.h>  
#include "/usr/local/mysql/include/mysql.h"  
  
int main()  
{  
    MYSQL mysql;  
    MYSQL_RES *res;  
    MYSQL_ROW row;  
    char *query;  
    int flag, t;  
    mysql_init(&mysql);  
    if(!mysql_real_connect(&mysql, "localhost", "root", "123456", "test", 0, NULL, 0)) {  
        printf("Failed to connect to Mysql!\n");  
        return 0;  
    }else {  
        printf("Connected to Mysql successfully!\n");  
    }  
    query = "delete from student  where log_id=1";  
    /*删除,成功则返回0*/  
    flag = mysql_real_query(&mysql, query, (unsigned int)strlen(query));  
    if(flag) {  
        printf("Delete data failure!\n");  
        return 0;  
    }else {  
        printf("Delete data success!\n");  
    }  
  
    mysql_close(&mysql);  
    return 0;  
}  


编译:gcc -o mysqldelete -I /usr/local/include/mysql/ -L /usr/local/mysql/lib -lmysqlclient mysqldelete.c

执行:./mysqldelete

执行结果:

[root@iZ94qvmp90hZ c]# gcc -o mysqldelete -I /usr/local/include/mysql/ -L /usr/local/mysql/lib -lmysqlclient mysqldelete.c
[root@iZ94qvmp90hZ c]# ./mysqldelete
Connected to Mysql successfully!
Delete data success!




  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值