一直有一个遗憾,没有用C语言操作过数据库。
最近趁着对C语言的一点兴趣,重新熟悉起来,不是从基础语法开始,而是直接用操作数据库开始。
MySQL提供了很多编程语言与自身通信的API,其中就有C语言的API,利用这些API就能及其便利的操作MySQL。C API的数据类型及函数可以参考:这里。
具体代码如下:
#include <stdio.h> #include "/usr/local/mysql/include/mysql.h" MYSQL_RES *result; void print(MYSQL *res); int main() { MYSQL mysql_conn; mysql_init(&mysql_conn); mysql_real_connect(&mysql_conn, "127.0.0.1", "root", "", "test", 3306, NULL, 0); mysql_query(&mysql_conn, "select * from language limit 5;"); print(&mysql_conn); mysql_close(&mysql_conn); }
gcc -o conn_mysql conn_mysql.c -I/usr/local/mysql/include -L/usr/local/mysql/lib -lmysqlclient
有没有发现跟PHP操作MySQL很像,甚至很多函数都一样。完全没有想象中的复杂。
突然想起来刚上大一那会,C语言课第一周结束后,老师的上机作业就是打印一棵圣诞树。那会认为比登天还难,后来大家千方百计实现后,对程序时间有了一对认识。现在都还感激那位老师的这种教学方式。
参考:
https://blog.csdn.net/JesseYoung/article/details/40372047
https://typecodes.com/cseries/linuxgccgconnectmysql.html
https://blog.csdn.net/shuangde800/article/details/17586027
http://asyty.iteye.com/blog/1447092