原先我的两个问题在这
http://community.csdn.net/Expert/topic/4789/4789588.xml?temp=.6855738http://community.csdn.net/Expert/topic/4777/4777297.xml?temp=.569729现在发现连接同学数据库必须要用
"Provider=MSDASQL; DRIVER={SQL Server}; SERVER=211.45.246.221; DATABASE=数据库1; UID=a; PWD=a";连接我自己的必须要用
"Provider=SQLOLEDB.1;Password=a;Persist Security Info=True;User ID=a;Initial Catalog=数据库1;;Data Source=211.45.246.244"互换的话就会出错,连不上
这我真是不太理解了? 为什么,为什么??

解决方案 »

  1.   

    Persist Security Info=True ;去掉
    用后一个字符串
    不可能连不上
      

  2.   

    楼上的,你太强了,请到下面两个帖子里面顶一下,结贴给分
    http://community.csdn.net/Expert/topic/4789/4789588.xml?temp=.6855738http://community.csdn.net/Expert/topic/4777/4777297.xml?temp=.569729
      

  3.   

    Persist Security Info的True和false分别意味着什么呢?
      

  4.   

    int CADOClass::ConnDataBase(CString m_strDBName,CString m_strServerName, int m_iDelayTime, CString m_strUserName, CString m_strPassWord, int m_iConnFlag)
    {
    int m_iReturnFlag=0;

    CString m_strConnsql;
    try
    { //有效性检查
    m_strDBName.Trim();
    m_strUserName.Trim();
    m_strPassWord.Trim();
    if(m_strDBName.GetLength()<1||m_strUserName.GetLength()<1||m_strPassWord.GetLength()<1)
    m_iReturnFlag=1001;//有效性检查没有通过
    //关闭
    if(m_pConnsql!=NULL&&(m_pConnsql->State&adStateOpen))
    {

    m_pConnsql->Close();
    m_pConnsql=NULL;
    } // //初始化COM环境
    ::CoInitialize(NULL);
    //
    m_strConnsql.Format("Provider=SQLOLEDB; Data Source=%s;Initial Catalog=%s;User ID=%s;Password=%s",\
                                           m_strServerName,m_strDBName,m_strUserName,m_strPassWord);




    m_pConnsql.CreateInstance("ADODB.Connection");
    m_pConnsql->CommandTimeout=m_iDelayTime;

    HRESULT hr=m_pConnsql->Open((_bstr_t)m_strConnsql,(_bstr_t)m_strUserName,(_bstr_t)m_strPassWord,adConnectUnspecified);     if (FAILED(hr))
    {
    //AfxMessageBox("打开数据库失败");
    m_iReturnFlag=1002;

    }
    else
    {
    m_iReturnFlag=1;
    }
    }
    catch(_com_error &e)
    {
    //AfxMessageBox("请你确认是否装了MDAC2.7以上的补丁,服务器数据库确认是否安装SP4补丁");
    gDBStatusIndex=1;
    m_pConnsql=NULL;
    m_pRecordSetPtr=NULL;
    m_iReturnFlag=1003;
    TRACE("%s",e.Description());;
    CString m_strLog;
    m_strLog.Format("数据库连接字符串%s;返回值%d",m_strConnsql,m_iReturnFlag);
    m_csLog.WriteLog(0,m_strLog,_T(".\\Log\\PRun.log"));
     

    }
        


    return m_iReturnFlag;
    }