注册 登录
编程论坛 VC++/MFC

求教——VC6.0中如何连接mysql数据库

菜鸟在线 发布于 2014-12-09 21:17, 692 次点击
小弟最近自学C++,不知道怎么连接mysql数据库,求各位大神指点啊,给点资料啥的
3 回复
#2
wp2319572014-12-10 14:49
mysql好像应用于linux系统多一些吧
#3
菜鸟在线2014-12-10 17:52
回复 2楼 wp231957
windows里面也用吧。linux不太懂啊
#4
StadyC2016-10-14 12:03
安装好MySQL后,在项目加入附加目录,就那个MySQL里面的include目录,再加上库目录就是MySQL里面的lib目录,然后把lib目录下的那个libmysql.dll复制到代码目录下。
在代码开始加上几句:
#include<windows.h>    //windows.h必须放在mysql.h前面,有可能还要加上winsock.h
#include<mysql.h>
#pragma comment(lib, "libmysql.lib")

然后就可以调用mysql的各种API了。给你发个例子的源码,前提先设置好包含附加目录和库目录,还有要把libmysql.dll复制到代码目录。


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

#define SERVER "Localhost"
#define USER "root"
#define PASSWORD "123456"
#define DATABASE "worker"

int main(void)
{
    MYSQL *conn;
    conn = mysql_init(NULL);

    if(!mysql_real_connect(conn, SERVER, USER, PASSWORD, DATABASE, 0, NULL, 0))
        printf("连接失败:%s\n", mysql_error(conn));
   
    mysql_real_query(conn, "SELECT * FROM user WHERE Role = 'Administrator'",
        strlen("SELECT * FROM user WHERE Role = 'Administrator'") + 1);

    MYSQL_RES *result = mysql_store_result(conn);
   
    int field_num = mysql_field_count(conn);
   
    MYSQL_ROW row = NULL;
    printf("您查找的内容:\n");
    while(row = mysql_fetch_row(result))
    {
        for(int i = 0; i < field_num; i++)
        {
            printf("%s\t", row[i]);
        }
        printf("\n");
    }

    mysql_free_result(result);        //释放内存
    mysql_close(conn);

    system("pause");
    return 0;
}
另外给你个建议就是别用VC++ 6.0了,要用还是用VS2010以上的吧


[此贴子已经被作者于2016-10-14 12:05编辑过]

1