用ADO的 _ConnectionPtr不创建数据源,连接SQL Server数据库
时间:2011-12-27
来源:互联网
//初始化数据库连接对象
_ConnectionPtr pConn("ADODB.Connection");
//定义数据库连接字符串
_bstr_t Connection = "Provider=SQLOLEDB;Server=127.0.0.1;Database=LoginDemo;Uid=; PWD= ";
//打开数据库连接
pConn->Open(Connection, "", "", adModeUnknown);
我连接的时候把 LoginDome.mdf 这个数据库文件和日志文件LoginDemo_log.ldf放在工程下面。
然后代码中用上面的语句访问。 可总是失败。是什么原因啊??
连接字串中的 用户名UID 和密码PWD 怎么设置啊???
高水给个范例吧。。
_ConnectionPtr pConn("ADODB.Connection");
//定义数据库连接字符串
_bstr_t Connection = "Provider=SQLOLEDB;Server=127.0.0.1;Database=LoginDemo;Uid=; PWD= ";
//打开数据库连接
pConn->Open(Connection, "", "", adModeUnknown);
我连接的时候把 LoginDome.mdf 这个数据库文件和日志文件LoginDemo_log.ldf放在工程下面。
然后代码中用上面的语句访问。 可总是失败。是什么原因啊??
连接字串中的 用户名UID 和密码PWD 怎么设置啊???
高水给个范例吧。。
作者: zhangkaihang 发布时间: 2011-12-27
UID=username;Password=password
就是这个格式。
就是这个格式。
作者: fight_in_dl 发布时间: 2011-12-27
发错了,应该是:
ID=username;Password=password
ID=username;Password=password
作者: fight_in_dl 发布时间: 2011-12-27
晕死了,又发错了,今晚怎么了....
应该是:
User ID=username;Password=password
应该是:
User ID=username;Password=password
作者: fight_in_dl 发布时间: 2011-12-27
HRESULT hr;
CString strDBSource;
_ConnectionPtr m_pConn;
_CommandPtr m_pCommand;
_RecordsetPtr m_pRecordset;
//SQL Server数据库的连接串
strDBSource="Provider=SQLOLEDB.1;Password=abcde;Persist Security Info=True;User ID=sa;Initial Catalog=YourDataBaseName;Data Source=.;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=xxx;Use Encryption for Data=False;Tag with column collat"
_bstr_t strCnn(strDBSource);
try{
hr=m_pConn.CreateInstance("ADODB.Connection");
if(FAILED(hr)){
return FALSE;
}
}catch(_com_error &e){
_bstr_t bstrSource(e.Source());
_bstr_t bstrDescription(e.Description());
}catch(...){
return FALSE;
}
m_pConn->ConnectionTimeout=15;
m_pConn->Mode=adModeReadWrite;
m_pConn->IsolationLevel=adXactIsolated;
m_pConn->Attributes&=!adXactCommitRetaining;
m_pConn->Attributes&=!adXactAbortRetaining;
try{
m_pConn->Open(strCnn,"","",NULL);
}
catch(_com_error &e){
_bstr_t bstrSource(e.Source());
_bstr_t bstrDescription(e.Description());
return FALSE;
}catch(...){
return FALSE;
}
try{
m_pCommand.CreateInstance("ADODB.Command" ); // creating command object
} catch(...){
return false;
}
try{
hr=m_pRecordset.CreateInstance("ADODB.Recordset");
}catch(...){
return false;
}
//Recordset例子
_variant_t vConn;
_variant_t sqlStr=_T("select * from table1");
vConn=(IDispatch*) m_pConn;
try{
hr=m_pRecordset->Open(sqlStr,vConn,adOpenStatic,adLockOptimistic,-1);
if(!FAILED(hr)){
while (!m_pRecordset->EndOfFile){
VARIANT varTemp;
varTemp=m_pRecordset->Fields->Item["FldName"]->Value;
CString mValue=varTemp.bstrVal;
m_pRecordset->MoveNext();
}
}
}catch(_com_error &e){
_bstr_t bstrSource(e.Source());
_bstr_t bstrDescription(e.Description());
TRACE("%s\n",(LPCSTR) bstrDescription);
}catch(...){
}
m_pRecordset->Close();
//Command例子
try{//
passing string value as argument to stored procedure
_bstr_t bstrProc=( L"storeProcedureName" ); //Stored procedure name
_variant_t vtEmpty (DISP_E_PARAMNOTFOUND, VT_ERROR);
_variant_t vtEmpty2(DISP_E_PARAMNOTFOUND, VT_ERROR);
pCOMBUFFER->m_pCommand->ActiveConnection = m_pConn;
pCOMBUFFER->m_pCommand->CommandText = _bstr_t( bstrProc ); // passing the stored procedue
pCOMBUFFER->m_pCommand->CommandType = adCmdStoredProc; // type
pCOMBUFFER->m_pCommand->Parameters->Refresh(); // passing string value as argument to stored procedure
m_pCommand->Parameters->Item[ _variant_t( (long) 1 ) ]->Value =
_variant_t( (LPCTSTR)mParam1);
m_pRecordset = m_pCommand->Execute( &vtEmpty, &vtEmpty2, adCmdStoredProc );
VARIANT varTemp;
varTemp=m_pRecordset->Fields->Item["FldName"]->Value;
mPwd=varTemp.bstrVal;
m_pRecordset->Close();
}
catch(_com_error &e){
_bstr_t bstrSource(e.Source());
_bstr_t bstrDescription(e.Description());
}catch(...){
}
m_pConn->Close();
作者: newzelg 发布时间: 2011-12-27
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28