我想通过对话框来连接数据库(SQL Server)
从对话框接收连接数据库的字符串,如Server,DATABASE,UID,PWDCString SerName,DBName,SerAccount,SerPsw;//从对话框接来的数据,对应连接字符串的四项
UpdateData(TRUE);
SerName=pDlg.m_serName;
DBName=pDlg.m_dbName;
SerAccount=pDlg.m_serAccount;
SerPsw=pDlg.m_serPsw;
m_pConnection.CreateInstance(__uuidof(Connection));
m_pRecordset.CreateInstance(__uuidof(Recordset));
HRESULT succ=m_pConnection->Open("Provider=SQLOLEDB;Server=SerName;DATABASE=DBName;UID=SerAccount;PWD=SerPsw","","",adModeUnknown);
但是无法成功连接,请高手帮帮忙,这是不是得需要强制类型转换,还是怎么的?
应该如何写?
谢谢!
从对话框接收连接数据库的字符串,如Server,DATABASE,UID,PWDCString SerName,DBName,SerAccount,SerPsw;//从对话框接来的数据,对应连接字符串的四项
UpdateData(TRUE);
SerName=pDlg.m_serName;
DBName=pDlg.m_dbName;
SerAccount=pDlg.m_serAccount;
SerPsw=pDlg.m_serPsw;
m_pConnection.CreateInstance(__uuidof(Connection));
m_pRecordset.CreateInstance(__uuidof(Recordset));
HRESULT succ=m_pConnection->Open("Provider=SQLOLEDB;Server=SerName;DATABASE=DBName;UID=SerAccount;PWD=SerPsw","","",adModeUnknown);
但是无法成功连接,请高手帮帮忙,这是不是得需要强制类型转换,还是怎么的?
应该如何写?
谢谢!
改成
HRESULT succ=m_pConnection->Open("Provider=SQLOLEDB;Server=hanyu;DATABASE=111;UID=sa;PWD=12345","","",adModeUnknown);
就可以正常连接,而且也可以操作,换了上边的方式就不行啊!
CString str;
str.Format("Provider=SQLOLEDB;Server=%s;DATABASE=%s;UID=%s;PWD=%s",SerName,DBName,SerAccount,SerPsw);
HRESULT succ=m_pConnection->Open(str,"","",adModeUnknown);
不过有个小毛病,我已经改了,如下:m_pConnection->Open((_bstr_t)str,"","",adModeUnknown);
问题解决了,我结帖了,多谢两位!