低级问题:为什么需要数据源,直接打开数据库*.mdb可以吗
1)我是直接打开数据库 db.Open(szFile);完全可以操纵数据库,数据源的作用是什么,2)还有如果用数据源sourename 数据库dbname,想去连接数据源sourename,
如果不成功再创建数据源(动态创建数据源的代码已经有了),怎么判断连接成功否?
1)我是直接打开数据库 db.Open(szFile);完全可以操纵数据库,数据源的作用是什么,2)还有如果用数据源sourename 数据库dbname,想去连接数据源sourename,
如果不成功再创建数据源(动态创建数据源的代码已经有了),怎么判断连接成功否?
解决方案 »
- 谁 那里有类似rar加密解密的函数??
- MSCOMM控件缓冲设置问题
- ClistCtrl 中的 GetItemText()函数用法
- DLL和程序共享数据问题
- 为什么这两段代码都可以实现桌面的捕捉??
- SIO_RCVALL不支持WIN9X,只支持2000以后的版本,WIN9X因该如何监听呢?
- CListCtrl????
- 一个很小的问题!!!!!!!!!!!!!
- 哪位大侠帮我看看,我显示的bmp图像为什么会失真??
- 初级问题,如何访问局域网内另一台机子的数据库(可读写,修改),请高手赐教!
- 如何利用API写一个文本文件
- GetPrivateProfileSectionNames 如何使用, 用與將ini文件的sectors名讀出來.
2)
// Embed a CDatabase object in your document class
CDatabase m_dbCust;// Connect the object to a data source (no password)
// the ODBC connection dialog box
// will always remain hidden
m_dbCust.Open( _T( "MYDATASOURCE" ), FALSE,FALSE, _T( "ODBC;UID=JOES" );
怎么判断连接成功否?
可以直接用CDatabase::IsOpen()的返回值
DAO不需数据源,但只能访问Microsoft Jet引擎的数据库。
1.stdafx.h中加入
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")
2。app文件的InitInstance中加入
if(S_OK!=OleInitialize(NULL))
{
AfxMessageBox("初始化COM组件库错误");
}
下面就是数据库操作
_ConnectionPtr pConn;
_RecordsetPtr pRs;
CString strSQL;
pConn.CreateInstance(__uuidof(Connection));
pConn->CursorLocation=adUseClient;
strSQL="Provider=SQLOLEDB;Server=Gooyan;DataBase=SkillsBox;UID=sa;PWD=aaaaaaaa";
pConn->Open(_bstr_t(strSQL),"","",-1);pRs.CreateInstance(__uuidof(Recordset));
pRs->CursorLocation=adUseClient;
pRs->PutActiveConnection(pConn.GetInterfacePtr());pRs1.CreateInstance(__uuidof(Recordset));
pRs1->CursorLocation=adUseClient;
pRs1->PutActiveConnection(pConn.GetInterfacePtr());strSQL="select * from catalog order by cataid";
pRs->Open(_bstr_t(strSQL),vtMissing,adOpenDynamic,adLockBatchOptimistic,adCmdText);
不过用Rds的时候就要用到。