怎么连接MYSQL数据库呀,急死我了,我用单个的.C文件能连接MYSQL,可是用到单文档、多文档和对话框时就不能连接MYSQL了,谁遇到过这种问题吗,快帮帮我吧!!

解决方案 »

  1.   

    http://www.pconline.com.cn/pcedu/empolder/db/10207/79554.html
      

  2.   

    我说我的思路吧
    我是想要在一个单文档工程中使用MYSQL(单个文件的已经能连上MYSQL了),
    我不把libmySQL.dll,libmySQL.lib还有MYSQL的这两个目录include,lib都考到我的工程目录中去了(是通过:工具\选择\目录添加的),可用上#include "mysql.h"时就出现错误如下:
    c:\mysql\include\mysql_com.h(116) : error C2146: syntax error : missing ';' before identifier 'fd'
    (源文件代码: my_socket fd; /* For Perl DBI/dbd */)
    c:\mysql\include\mysql_com.h(116) : error C2501: 'SOCKET' : missing storage-class or type specifiers
    (源文件代码: my_socket fd; /* For Perl DBI/dbd */)
    c:\mysql\include\mysql_com.h(116) : error C2501: 'fd' : missing storage-class or type specifiers
    c:\mysql\include\mysql_com.h(180) : error C2065: 'SOCKET' : undeclared identifier
    c:\mysql\include\mysql_com.h(180) : error C2146: syntax error : missing ')' before identifier 's'
    (源文件代码:)
    180-->int my_connect(my_socket s, const struct sockaddr *name, unsigned int namelen,
    181--> unsigned int timeout);
    (结束)
    c:\mysql\include\mysql_com.h(181) : error C2059: syntax error : ')'
    Error executing cl.exe.
      

  3.   

    谁能帮帮我吗?在一个单文档工程连接数据库,能占用一点您的时间把写好的源文件传给我吗
    [email protected]
    感激不尽!!!!!!!!!!
      

  4.   

    你是用的API函数吗?
    一般有三种方法:
    1,API函数方法,
    2,ODBC数据源方法
    3,ADO数据源方法
    前段时间也写了一个是单文档的连MYSQL数据库的,用的API函数,你可以装一下MYSQL的程序,在它的目录下有一个自带的例程,API的话对函数了解要求高一些,如果看了例程还是不行,我可以发我的程序给你,帮你加点注释。
      

  5.   

    你用的就是API的函数,include里的头文件都是要加的,还有。H都要的
      

  6.   

    是呀,我#include"mysql.h"但还是不行,我说了用单个的.C文件可以连接MYSQL
    但是当我建立一个单文档工程时,就练不上MYSQL了
    你把你的单文档连MYSQL的程序发给我看看好吗
    [email protected]
      

  7.   

    谁帮帮我呀
    帮我写一个单文档的连接MYSQL的工程,谢谢了~
      

  8.   

    谁帮帮我呀!
    用MFC连接MYSQL
      

  9.   

    "Provider=MySQLProv;Data Source=dbname;Server=localhost;User ID=user; PWD=password"1.stdafx.h中加入
    #import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF") 
    2。app文件的InitInstance中加入
    if(S_OK!=OleInitialize(NULL))
    {
    AfxMessageBox("初始化COM组件库错误");
    }
    下面就是数据库操作
    _ConnectionPtr pConn;
    _RecordsetPtr  pRs;
    CString strSQL;
    pConn.CreateInstance(__uuidof(Connection));
    pConn->CursorLocation=adUseClient;
    strSQL="Provider=SQLOLEDB;Server=Gooyan;DataBase=SkillsBox;UID=sa;PWD=aaaaaaaa";
    pConn->Open(_bstr_t(strSQL),"","",-1);pRs.CreateInstance(__uuidof(Recordset));
    pRs->CursorLocation=adUseClient;
    pRs->PutActiveConnection(pConn.GetInterfacePtr());pRs1.CreateInstance(__uuidof(Recordset));
    pRs1->CursorLocation=adUseClient;
    pRs1->PutActiveConnection(pConn.GetInterfacePtr());strSQL="select * from catalog order by cataid";
    pRs->Open(_bstr_t(strSQL),vtMissing,adOpenDynamic,adLockBatchOptimistic,adCmdText);
      

  10.   

    通过myodbc使用ado的连接方式比较好,不需要象odbc那样注册数据源。
      

  11.   


    除了include "mysql.h" 外还要 include "winsock2.h"
    ***************************************************************************************
    我说我的思路吧
    我是想要在一个单文档工程中使用MYSQL(单个文件的已经能连上MYSQL了),
    我不把libmySQL.dll,libmySQL.lib还有MYSQL的这两个目录include,lib都考到我的工程目录中去了(是通过:工具\选择\目录添加的),可用上#include "mysql.h"时就出现错误如下:
    c:\mysql\include\mysql_com.h(116) : error C2146: syntax error : missing ';' before identifier 'fd'
    (源文件代码: my_socket fd; /* For Perl DBI/dbd */)
    c:\mysql\include\mysql_com.h(116) : error C2501: 'SOCKET' : missing storage-class or type specifiers
    (源文件代码: my_socket fd; /* For Perl DBI/dbd */)
    c:\mysql\include\mysql_com.h(116) : error C2501: 'fd' : missing storage-class or type specifiers
    c:\mysql\include\mysql_com.h(180) : error C2065: 'SOCKET' : undeclared identifier
    c:\mysql\include\mysql_com.h(180) : error C2146: syntax error : missing ')' before identifier 's'
    (源文件代码:)
    180-->int my_connect(my_socket s, const struct sockaddr *name, unsigned int namelen,
    181--> unsigned int timeout);
    (结束)
    c:\mysql\include\mysql_com.h(181) : error C2059: syntax error : ')'
    Error executing cl.exe.