如何使用c语言来操作数据库,需要一下几个步骤:
第一:安装mysql;
第二:sudo apt-get install libmysqlclient15 -dev 安装此软件包,然后在/usr/include/mysql里可以找到mysql.h 
第三:使用emacs 将下面代码复制

ubuntu下  :  audo apt-get install libmysqlclient-dev

centos下 : yum install mysql-devel
测试代码
代码#include <stdlib.h>
#include <stdio.h>#include "mysql.h"int main(int argc, char *argv[]) {MYSQL *conn_ptr;conn_ptr = mysql_init(NULL);//初始化if (!conn_ptr) {fprintf(stderr, "mysql_init failed\n");return EXIT_FAILURE;}conn_ptr = mysql_real_connect(conn_ptr, "localhost", "root", "123456","lianxi", 0, NULL, 0);//连接数据库 1则success or failedif (conn_ptr) {printf("Connection success\n");} else {printf("Connection failed\n");}mysql_close(conn_ptr);return EXIT_SUCCESS;
}
代码解释:

#include <mysql.h>
#include <stdio.h>

main() {
    MYSQL *conn;
    MYSQL_RES *res;
    MYSQL_ROW row;

char *server = "localhost";
   char *user = "root";
   char *password = "12345";
   char *database = "mysqltest";

conn = mysql_init(NULL);

if (!mysql_real_connect(conn, server,
          user, password, database, 0, NULL, 0)) {
      fprintf(stderr, "%s\n", mysql_error(conn));
      exit(1);
   }

if (mysql_query(conn, "show tables")) {
      fprintf(stderr, "%s\n", mysql_error(conn));
      exit(1);
   }

res = mysql_use_result(conn);

printf("MySQL Tables in mysql database:\n");
   while ((row = mysql_fetch_row(res)) != NULL)
      printf("%s \n", row[0]);

mysql_free_result(res);
    mysql_close(conn);
}
第四 :输入这行命令编译 gcc $(mysql_config --cflags) xxx.c -o xxx $(mysql_config --libs)
第五:如果存在这样的错误,'/var/run/mysqld/mysqld.sock' (2),这需要做sudo ln -s /opt/lampp/var/mysql/mysql.sock /var/run/mysqld/mysqld.sock,这一步的工作。当然每次系统重新启动之后,你都需要重新做这样一个工作,因此你可以这样来做。编写一段这样的代码如下,文件名称为mysql.sh
#!/bin/bash
sudo rm rf /var/run/mysqld
sudo mkdir /var/run/mysqld
sudo touch /var/run/mysqld mysqld.sock
sudo ln -s /opt/lampp/var/mysqld.sock /var/run/mysqld/mysqld.sock
这样系统重启之后可以不用再次链接了了。

添加mysql.h头文件相关推荐

  1. string.h头文件

    string.h头文件包含了许多用于字符数组的函数.使用以下函数时需要在开头添加string.h头文件. 1.strlen():该函数可以得到字符数组中第一个\0前的字符的个数,其格式为:strlen ...

  2. iOS架构-静态库.a编译时自动导出.h头文件(24)

    在使用Xcode成功编译一个静态库时,在对应的输出目录下有一个include目录,但是其中没有相关的.h头文件.由于.h文件和 .cpp文件是在同一个目录下,再加上文件数量较多,如果手动的将.h文件导 ...

  3. .h头文件 .lib动态链接库文件 .dll 动态链接库

    .h头文件是编译时必须的,lib是链接时需要的,dll是运行时需要的. 附加依赖项的是.lib不是.dll,若生成了DLL,则肯定也生成 LIB文件.如果要完成源代码的编译和链接,有头文件和lib就够 ...

  4. .h头文件 .lib库文件 .dll动态链接库文件关系

    .h头文件是编译时必须的,lib是链接时需要的,dll是运行时需要的. 附加依赖项的是.lib不是.dll,若生成了DLL,则肯定也生成 LIB文件.如果要完成源代码的编译和链接,有头文件和lib就够 ...

  5. .h头文件 .lib库文件 .dll动态库文件之间的关系

     .h头文件是编译时必须的,lib是链接时需要的,dll是运行时需要的. 附加依赖项的是.lib不是.dll,若生成了DLL,则肯定也生成 LIB文件.如果要完成源代码的编译和链接,有头文件和li ...

  6. Android JNI开发生成.h头文件问题(转)

    在JNI开发中,首先要将建立的anroid类编译成.h文件,编译用到命令javah,由于第一次用,以前对java的编译过程也不怎么了解,所以走了好多弯路,网络没有对这一步的详细介绍,这里讲一下: 通过 ...

  7. rf中resourceid_解决VC++ MFC程序resource.h头文件中ID重复问题

    解决VC++ MFC程序resource.h头文件中ID重复问题 2018-12-07 一般MFC开发的时候,如果有些资源是从其他工程中移植到本工程的, 而在资源移植的时候都要将对应的资源ID复制到本 ...

  8. 为什么我的程序中没有stdafx.h头文件?

    这是我的程序中出现的问题,stdafx.h头文件前的include下面有红色的波浪线.这个问题是我刚开始学习vs2010的时候出现的,到现在我才想着把它整理一下,虽然是小问题,但是还是值得注意一下.对 ...

  9. VS+QT没有自动生成.ui对应的ui_XXXX.h头文件问题

    1.在qt安装包下-> qbase -> bin 目录下有对应的uic.exe用来生成 .ui对应的ui_XXXX.h头文件  所以 cmd进入bin目录,运行uic XXXX.ui ui ...

  10. 【STM32学习笔记】(5)—— STM32工程添加源文件和头文件

    向工程目录里创建头文件和源文件 STM32的工程文件构成较为复杂,同时为STM32工程文件添加源文件和头文件也是较为复杂的,下面就由此文章来介绍怎么给STM32工程添加源文件(.c)与头文件(.h), ...

最新文章

  1. 给网页图标字体 Font Awesome 添加动画效果
  2. SAP PO相关打印编程
  3. 基于若依框架的二次开发_SAP Commerce(原Hybris)的订单处理框架和SAP CRM One Order框架...
  4. db2查询字段备注_通过逐浪数据精灵管理sqlserver数据表备注以及字段说明
  5. tensorflow的一些函数
  6. c语言中如何取消最后一个空格,新人提问:如何将输出时每行最后一个空格删除...
  7. loadrunner 录制java_LoadRunner脚本录制流程
  8. kali rpm 安装方法_linux下制作安装rpm包的方法
  9. C# 异常处理(一)
  10. 读取文本中的数用英文转换过来
  11. 使用可重启AD DS 整理活动目录数据库
  12. 2022最新高级java面试题
  13. 入侵检测:User-Agent
  14. win10误删的注册表能还原吗_手把手讲解win10系统误删注册表恢复的还原办法
  15. IMX6 VPU解码流程
  16. 【计算理论】图灵机 ( 图灵机引入 | 公理化 | 希尔伯特纲领 | 哥德尔不完备定理 | 原始递归函数 )
  17. GoAhead_UserGuide_1
  18. C++算法设计与分析例题代码(基础篇)
  19. 读书笔记 | 为什么从世界500强CEO、政界要员,到著名演员都用这个方法来提高效率?
  20. Web安全-HTTP响应拆分(CRLF注入)漏洞

热门文章

  1. 微信服务号/企业号防止AccessToken过期的操作指南深入浅出
  2. t-sql中引号的使用规则 转
  3. 【SpringBoot_ANNOTATIONS】自动装配 02 @Resource @Inject
  4. 【狂神说Redis】1NoSQL概述1-2什么是NoSQL
  5. c# Conditional用法详解
  6. vue获取接口id_05vue2.0-vue中_接口的调用
  7. SpringBoot 根据条件注入需要的 Bean
  8. android studio2.4,Android Studio 2.4 Preview 7 发布
  9. ios+android+内存管理,iOS内存管理
  10. jenkins使用_Spring Boot 系列:使用 Jenkins 部署 Spring Boot