我用VC++6.0做数据库方面的,代码如下,编译没有错误,但是运行老是显示数据库连接失败,确认数据库Demo.mdb是否在当前路径下!我实在是不知道是怎么回事情了,请告知!
AfxOleInit();
m_pConnection.CreateInstance(__uuidof(Connection)); try                 
{

m_pConnection->Open("driver={SQL   Server};Server=LOCAL;DATABASE=Demo","","",adConnectUnspecified);

}
catch(_com_error e)
{
AfxMessageBox("数据库连接失败,确认数据库Demo.mdb是否在当前路径下!");
return FALSE;

解决方案 »

  1.   

    It looks like your m_pConnection->Open(XXX) has some problem..........
      

  2.   

    我想问一下
    你是连接access还是sqlserver?
      

  3.   


    ADO 连接 SQL SERVER:
    m_pConnection->Open("Provider=sqloledb;Server=127.0.0.1;Database=pubs","sa","",adModeUnknown);
    Server=127.0.0.1可以改为 SQL Server 的实例名字;一般情况,在本机则为计算机名,在另一台计算机,则为它的计算机名。如:Server=sb001
      

  4.   

    会不会是没加扩展名的原因啊?
    m_pConnection->Open("driver={SQL   Server};Server=LOCAL;DATABASE=Demo.mdb","","",adConnectUnspecified); 
    你使用这个捕获异常,看错误信息是什么,不要用自己的错误提示
    catch(_com_error e)///捕捉异常
    {
      CString errormessage;
      errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
      AfxMessageBox(errormessage);///显示错误信息
      

  5.   

    看数据库名称,想必连接的是ACCESS,而后面怎么能这样写呢?
    m_pConnection->Open("driver={SQL   Server};Server=LOCAL;DATABASE=Demo","","",adConnectUnspecified); 
      

  6.   

    我连的是SQL,名字是随便写的。
      

  7.   

    你的数据库Demo.mdb是否在当前路径啊?