关于ADO编程的小问题~ 急啊!都3天了还没解决,高手们救我

develoer 2003-09-13 03:01:16

bstr_t m_strFileDSN = L"";
m_strFileDSN = L"DSN=data;UID=sa;PWD=;";
HRESULT hr;
hr = ::CoCreateInstance(__uuidof(Connection), NULL, CLSCTX_SERVER,__uuidof(_Connection), (LPVOID*)&m_pADOConnection);
if( m_pADOConnection )
hr = m_pADOConnection->Open(m_strFileDSN, (BSTR)NULL,(BSTR)NULL, -1);

// 以上是通过ODBC访问SQL Server中的表资源代码。
// 我想不通过ODBC直接访问SQL Server中的表资源怎么做?
// 我是用的msado15.dll 请大侠们帮我啊!
m_pConnection->Open("driver={SQLServer};
Server=127.0.0.1;DATABASE=vckbase;UID=sa;PWD=139","","",adModeUnknown);
...全文
31 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
叶子哟 2003-09-13
  • 打赏
  • 举报
回复
http://www.vckbase.com/document/viewdoc.asp?id=556
flyever 2003-09-13
  • 打赏
  • 举报
回复
up
叶子哟 2003-09-13
  • 打赏
  • 举报
回复
http://www.vckbase.com/document/viewdoc.asp?id=719
叶子哟 2003-09-13
  • 打赏
  • 举报
回复
http://www.vckbase.com/document/viewdoc.asp?id=668
http://www.vckbase.com/document/viewdoc.asp?id=669
ufox 2003-09-13
  • 打赏
  • 举报
回复

在头文件中包含如下语句:其中C:指的是系统盘。
#import "C:\Program Files\Common Files\System\ADO\msado15.dll" \no_namespace rename("EOF", "adoEOF")

int CCommManager::InitDBConn()
{
//在其他地方已经定义了的:_ConnectionPtr pDBConn

time_t tCurrent;
time(&tCurrent);
if((m_tAdoConn != 0) && (tCurrent-m_tAdoConn < MIN_ADO_CONN_PERIOD))
return 0;

time(&m_tAdoConn);
::CoInitialize( NULL );

HRESULT hr = 0;

// 与数据库建立ADO连接
try
{
// 初始化数据库实例句柄
hr = pDBConn.CreateInstance( __uuidof( Connection ) );
if ( !SUCCEEDED( hr ) )
{
TRACE( "\ntServerDll Error: CreateInstance failed..." );
return 0;
}

// 连接数据库串
CString strConnect;
strConnect.Format( "Provider=SQLOLEDB;Data Source=%s;Initial CataLog=%s;"
"User ID=%s; Password=%s",m_config.strDBServer,
m_config.strDBName, m_config.strUserID,
m_config.strPassword );

// 连接数据库
hr = pDBConn->Open( _bstr_t( strConnect ), L"", L"", adModeUnknown );
if ( !SUCCEEDED( hr ) )
{
TRACE("\n%s:%dConnect Database failed but no exception",__FILE__,__LINE__);
return 0;
}
}
catch ( _com_error &e )
{
TRACE("\n异常!%x: %s; %s:%d",
e.Error(),(LPCTSTR)e.Description(),__FILE__,__LINE__);

m_bDBConnOK = FALSE;
return 0;
}
catch ( ... )
{
g_logObj.writeLog(LOG_ERR, "tServer.DLL-- 异常! 不明异常; %s:%d",__FILE__,__LINE__);
m_bDBConnOK = FALSE;
return 0;
}

TRACE("\n%s:%d建立数据库连接成功",__FILE__,__LINE__);
m_bDBConnOK = TRUE;

return pDBConn;
}


使用:
CString strSQL = "INSERT (...) VALUES(...)";
m_pDBConn->Execute(_bstr_t(strSQL),NULL,adCmdText);

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧