我想做一个学生信息管理系统,想学习一下链接数据库,出现问题,望高手解答
我连接数据库的代码如下:
mysql_init (&mysql);
if(!mysql_real_connect(&mysql,"localhost","root",NULL,"mydb",3306,NULL,0))

AfxMessageBox("数据库连接失败"); 
return FALSE;
}
总是显示“数据库连接失败”的信息,望高手解答~
小弟是初学者,希望高手指点~

解决方案 »

  1.   

    参考下。#include "stdafx.h"
    #include <windows.h>
    #include <winsock2.h>
    #include "mysql\include\mysql.h"//忽略LIBCMT.lib, MSVCRTD.lib这些库,不然链接时会报lnk2005错误
    #pragma comment(linker,"/nodefaultlib:LIBCMT.lib")
    #pragma comment(linker,"/nodefaultlib:MSVCRTD.lib")/*用mysqlclient.lib,不要用libmysql.lib,要不你要多带一个libmysql.dll
    静态库有两个,一个是debug版的,一个是release版的,要注意
    */
    #if defined _DEBUG
    #pragma comment(lib, "mysqlclient_debug.lib") 
    #else
    #pragma comment(lib, "mysqlclient.lib")
    #endif#pragma comment(lib, "wsock32.lib")
    #pragma comment(lib, "Advapi32.lib")
    int _tmain(int argc, _TCHAR* argv[])
    {
    MYSQL* mysql = NULL;
    mysql = mysql_init(mysql); MYSQL_RES* res;
    MYSQL_ROW record; mysql_real_connect(mysql, "192.168.0.240", "root","root", "amx", 3306, NULL, NULL);
    mysql_query(mysql, "select auth, password, access from admins where length(access)>3");
    res = mysql_store_result(mysql);
    while((record=mysql_fetch_row(res)))
    {
    printf("auth=%s,password=%s,access=%s\n", record[0], record[1], record[2]);
    }
    mysql_free_result(res);
    mysql_close(mysql); return 0;
    }
      

  2.   

    http://www.vckbase.com/code/
    这个网站里有源代码下载,你搜一下。
      

  3.   

    用的libmysql那个dll吧,检查一下版本对不对先
      

  4.   

    NULL改为"",另外看下有没有mydb数据库
      

  5.   


    我以前去mysql主页下的好像只有dll,少头文件也不知是lib(忘记了),所以当时用了别人的,然后就是连接报错的,后来重新找了头文件,自己用dll生成lib之后就能用了,反正你用的时候dll,lib和头文件是一套的就行