热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

c如何和mysql连接

c和mysql连接的方法:首先将x项目属性页的【CC++->常规->附加】包含目录指向【mysql.h】所在的位置;然后将项目属性页的【链接器->常规->附加库目录】指向【libmysql.lib】所在的路径;最后将附加依赖项添加到【libmysql】。
本篇文章以环境:win7 x64、vs2008、mysql为例进行讲解C如何与MySQL连接

对于已经安装mysql的,查看mysql安装目录,如果安装目录下没有include和lib目录,

说明没有完全安装,需要下载mysql-connector类库,官方下载地址:http://dev.mysql.com/downloads/connector/c/

推荐课程:C语言教程。

无法解析的外部符号 _mysql_init@4,该符号在

经过网友帮助,我将原来下载的64位mysql-connector卸载,又重新下了一个32位安装,结果错误消失,百思不得其解,可能是我的mysql数据库是32位的吧。

最后附上c连接mysql的示例代码:

// test9.24.cpp : 定义控制台应用程序的入口点。
//
//#include  
//#include  
//#include   //包含MySQL所需要的头文件 
//#include  //Socket,连接MySQL也需要用的 
 
#include 
#include "stdio.h"
#include "winsock.h" 
#include "mysql.h" 
 
MYSQL mysql, *sock;   //声明MySQL的句柄 
 
int main(void) 
{  
    const char * host = "127.0.0.1";  //因为是作为本机测试,所以填写的是本地IP 
    const char * user = "root";       //这里改为你的用户名,即连接MySQL的用户名 
    const char * passwd = "123"; //这里改为你的用户密码 
    const char * db = "yiersan";      //这里改为你要连接的数据库的名字 
    unsigned int port = 3306;           //这是MySQL的服务器的端口,如果你没有修改过的话就是3306。 
    const char * unix_socket = NULL;    //unix_socket这是unix下的,我在Windows下,所以就把它设置为NULL 
    unsigned long client_flag = 0;      //这个参数一般为0 
    int t;
    const char * i_query = "select * from yes_msg"; //查询语句 
 
    MYSQL_RES * result;                          //保存结果集的 www.2cto.com  
    MYSQL_ROW row;                               //代表的是结果集中的一行 
 
    mysql_init(&mysql);                          //连接之前必须使用这个函数来初始化 
    if ( (sock = mysql_real_connect(&mysql, host, user, passwd, db, port, unix_socket, client_flag) ) == NULL ) //连接MySQL 
    { 
        printf("连接失败,原因是: \n"); 
        fprintf(stderr, " %s\n", mysql_error(&mysql)); 
        exit(1); 
    } 
    else 
    { 
        fprintf(stderr, "连接MySQL成功!!\n"); 
    } 
 
    if ( mysql_query(&mysql, i_query) != 0 )       //如果连接成功,则开始查询 
    { 
        fprintf(stderr, "查询失败!\n"); 
        exit(1); 
    } 
    else 
    { 
        if ( (result = mysql_store_result(&mysql)) == NULL ) //保存查询的结果 
        { 
            fprintf(stderr, "保存结果集失败!\n"); 
            exit(1); 
        } 
        else 
        { 
            while ( (row = mysql_fetch_row(result)) != NULL ) //读取结果集中的数据,返回的是下一行。因为保存结果集时,当前的游标在第一行【之前】 
            { 
                printf("name is %s\t", row[0]);               //打印当前行的第一列的数据 
                printf("age is %s\t\n", row[1]);              //打印当前行的第二列的数据 
            } 
        } 
 
    } 
    mysql_free_result(result);                                //释放结果集 
    mysql_close(sock);
	scanf("%d",&t);//关闭连接 
    system("pause"); 
    exit(EXIT_SUCCESS); 
}

以上就是c如何和mysql连接的详细内容,更多请关注其它相关文章!


推荐阅读
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文介绍了使用PHP实现断点续传乱序合并文件的方法和源码。由于网络原因,文件需要分割成多个部分发送,因此无法按顺序接收。文章中提供了merge2.php的源码,通过使用shuffle函数打乱文件读取顺序,实现了乱序合并文件的功能。同时,还介绍了filesize、glob、unlink、fopen等相关函数的使用。阅读本文可以了解如何使用PHP实现断点续传乱序合并文件的具体步骤。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • 本文介绍了关于apache、phpmyadmin、mysql、php、emacs、path等知识点,以及如何搭建php环境。文章提供了详细的安装步骤和所需软件列表,希望能帮助读者解决与LAMP相关的技术问题。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • 本文介绍了在Windows系统上使用C语言命令行参数启动程序并传递参数的方法,包括接收参数程序的代码和bat文件的编写方法,同时给出了程序运行的结果。 ... [详细]
author-avatar
站在屋顶上的小柱子
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有