VC++中如何使用ADO连接局域网服务器中access数据库?急!

hr = m_pConnection->Open( "Provider=SQLOLEDB.1;Password=密码;Persist Security Info=True;User ID=用户名;Initial Catalog=数据库名;Data Source=127.0.0.1(本机)", "", "", adConnectUnspecified); 不大明白 这好像是访问SQL数据库的代码啊?最上面的代码只能访问本地access数据库

这是连接access数据库的代码:try
{
hr=m_pCon.CreateInstance("ADODB.Connection");
if(SUCCEEDED(hr))
{
m_pCon->ConnectionTimeout=3;//异常超时时间

hr=m_pCon->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=canyin.mdb","","",adModeUnknown); //设置数据库名,用户名,密码

}
}

ADO访问数据库的基本步骤:

(1)、引入ADO类 ,加到stdafx.h中#endif // _AFX_NO_AFXCMN_SUPPORT后面

#import "c:\program files\common files\system\ado\msado15.dll" \
no_namespace \
rename ("EOF", "adoEOF")

(2)、初始化COM (放在对话框初始化函数里面或者CXXXApp::InitInstance()中)

在MFC中可以用AfxOleInit();非MFC环境中用:
CoInitialize(NULL);
CoUnInitialize();

(3)、包含后就可以用3个智能指针了:_ConnectionPtr、_RecordsetPtr和_CommandPtr

(4)、连接数据库
HRESULT hr;
try
{
hr = m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象
if(SUCCEEDED(hr))
{
m_pConnection->ConnectionTimeout = 0;
hr = m_pConnection->Open( "Provider=SQLOLEDB.1;Password=密码;Persist Security Info=True;User ID=用户名;Initial Catalog=数据库名;Data Source=127.0.0.1(本机)", "", "", adConnectUnspecified);

m_pCommand.CreateInstance(__uuidof(Command));
m_pCommand->CommandTimeout = 5;
m_pCommand->ActiveConnection = m_pConnection;
}
}
catch(_com_error e)///捕捉异常
{
CString errormessage;
errormessage.Format("连接数据库失败!\r\n错误信息:%s,%s",e.ErrorMessage(),e.Description());
AfxMessageBox(errormessage);///显示错误信息
}

(5)、打开记录集
首先创建一个_RecordsetPtr实例,然后调用Open()得到一条SQL语句的执行结果
_RecordsetPtr m_pRecordset;
m_pRecordset.CreateInstance(__uuidof(Recordset));

// 在ADO操作中建议语句中要常用try...catch()来捕获错误信息,
// 因为它有时会经常出现一些意想不到的错误
try
{
m_pRecordset->Open("SELECT * FROM DemoTable",// 查询DemoTable表中所有字段
m_pConnection.GetInterfacePtr(), // 获取库接库的IDispatch指针
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}

……
温馨提示:内容为网友见解,仅供参考
无其他回答

VC++中使用ADO操作ACCESS数据库
在这段代码中我们是通过Connection对象的Open方法来进行连接数据库的,下面是该方法的原型:HRESULT Connection15::Open ( _bstr_t ConnectionString, _bstr_t UserID, _bstr_t Password, long Options );上述函数中参数ConnectionString为连接字串;参数UserID是用户名;参数Password是登陆密码;参数Options是连接选项,用于...

VC++6.0与access数据库的连接
使用ADO连接数据库是通过Connection对象的Open方法实现的,语法是:Connection.Open Connectionstring.userID.password,openoptions 参数说明:Connectionstring:(可选)字符串,包含连接信息 userID:(可选)字符串,包含连接时所使用的用户名称 password:(可选)字符串,包含建立连接时多用密码 openoptions:(...

vc++ 用ADO链接数据库怎么连?
1、_ConnectionPtr智能指针,通常用于打开、关闭一个库连接或用它的Execute方法来执行一个不返回结果的命令语句(用法和_CommandPtr中的Execute方法类似)。——打开一个库连接。先创建一个实例指针,再用Open打开一个库连接,它将返回一个IUnknown的自动化接口指针。代码如下所示:_ConnectionPtr m_pConnection...

VC++ ADO独占方式连接ACCESS数据库
_ConnectionPtr m_pConnection;m_pConnection.CreateInstance(__uuidof(Connection));m_pConnection->Mode = adModeShareExclusive;m_pConnection->Open(“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=TEST.mdb”, "", "", adConnectUnspecified);

用vc++对access数据库操作要用什么头文件
VC连接access有两种方法。一种是通过ODBC,一种是通过ADO:1、如果用ADO的方法 应确保包含进了afxdao.h头文件,可以在StdAfx.h文件中包含它,如下:include <afxdao.h> \/\/加入DAO数据库支持MFC用下面代码:import "C:\/Program Files\/Common Files\/System\/ado\/msadox.dll" \/\/no_namespace \/\/...

VC如何通过ADO连接数据库,最好能给个实例
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=你的access数据库名","","",adModeUnknown);} catch(_com_error e){ AfxMessageBox("数据库连接失败,确认数据库是否在当前路径下!");flag=false;} return flag;} bool accdata::Execute_sql(LPCTSTR str){ bool Flag =true...

在VC++ ADO中如何查看Access数据库视图?
CString strSQL;strSQL.Fomate("SELECT 商品.商品编码, 商品.商品名称, 商品.规格 FROM %s WHERE (((商品.商品编码=%d))",表名,商品编码);

VC++的ADO控件在哪?怎么打开?急!
首先请确定你安装了 ActiveX 空间相应的ADO空间,比如 微软提供的 ACCESS,SQL SERVER 2005,在visual studio 2008系列下的资源视图下张开,打开主窗体,在窗体上的空白处点击鼠标右键——增加ActiveX控件,就能找到“Microsoft ADO data control 6.0(sp6)(oledb)不管你用的是什么语言也好,都可以在窗体...

VC++连接ACCess数据库
注意加异常判断,你这个程序,如果pConn->Open是错误的或者说没有打开,那后面肯定会报错的,你可以用HRESULT hr=pConn->Open来判断, if(SUCCESS(hr)) pRst=pConn->Execute 最后释放的时候注意判断状态, if(pConn->state !=NULL) pConn->Close(),否则如果你 pConn失败的,必然会报错,注意各种异常...

vc++连接access
那就是再加一个控件:DataGrid 控件 这个控件和ado控件的加法是一样的。加了以后你可以通过修改属性的办法把DataGrid 控件和ado控件帮在一起。再把DataGrid 控件的属性做相应的修改,比如改成可写的,程序运行后就可以在DataGrid 控件上对数据库执行查询、插入、删除等的操作了。如果你界面上不能有...

相似回答