低级问题:为什么需要数据源,直接打开数据库*.mdb可以吗 急,在线等

sodangerous 2004-11-19 12:28:28
低级问题:为什么需要数据源,直接打开数据库*.mdb可以吗
1)我是直接打开数据库 db.Open(szFile);完全可以操纵数据库,数据源的作用是什么,2)还有如果用数据源sourename 数据库dbname,想去连接数据源sourename,
如果不成功再创建数据源(动态创建数据源的代码已经有了),怎么判断连接成功否?
...全文
259 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
TrueIAm 2004-11-24
  • 打赏
  • 举报
回复
用DAO+ISAM就是直接打开的...

这是微软以前推崇的技术....现在微软已经不提倡这样用了...

建议用ADO,也可以的....
3m2u 2004-11-21
  • 打赏
  • 举报
回复
和用ado连sql server之类的是一样的。不过连接串不同而已
DentistryDoctor 2004-11-19
  • 打赏
  • 举报
回复
DAO就可以,如果是ODBC/ADO还是需要数据源的。
Kudeet 2004-11-19
  • 打赏
  • 举报
回复
1) 没用过CDatabase::Open();直接打开文件的方式,(ODBC)数据源是提供了一个通用的编程接口,允许程序与多种不同的数据库连接
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()的返回值
sodangerous 2004-11-19
  • 打赏
  • 举报
回复
高人帮帮小弟呀,实在是急呀
DebugXP 2004-11-19
  • 打赏
  • 举报
回复
一般不需要数据源,用JET驱动直接打开就可以。
不过用Rds的时候就要用到。
gooyan 2004-11-19
  • 打赏
  • 举报
回复
No OBDC Connect SQL SERVER
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);
ipgk 2004-11-19
  • 打赏
  • 举报
回复
要数据源是为了能用统一的接口访问不同的数据库,要实现这个目的应用程序和数据库间就要有一个中介,ODBC就是这个中介,所以用数据源访问数据库必须先与ODBC建立一个链接。
DAO不需数据源,但只能访问Microsoft Jet引擎的数据库。

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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