DAO 数据库问题 200分

uuwcl 2003-01-24 08:41:26
现在首选有两个数据库 m_DAODatabase1,m_DAODatabase2
m_DAODatabase1,连接数据库AA.mdb
m_DAODatabase2,连接数据库BB.mdb
方法
//连接工程数据库,AA
try
{
m_DAODatabase1.Open("AA.mdb",FALSE,FALSE);
}
catch (CDaoException *e)
{
AfxMessageBox(e->m_pErrorInfo->m_strDescription);
e->Delete();
}

//连接工程数据库,BB
try
{
m_DAODatabase2.Open("BB.mdb",FALSE,FALSE);
}
catch (CDaoException *e)
{
AfxMessageBox(e->m_pErrorInfo->m_strDescription);
e->Delete();
}

AA,BB均有 gcl表
从BB库中增加GCL表记录到AA库的GCL表中
现在一切都成功,
然后关闭 m_DAODatabase2
m_DAODatabase2.Close();
再用m_DAODatabase2连接CC.MDB

//连接工程数据库,CC
try
{
m_DAODatabase2.Open("CC.mdb",FALSE,FALSE);
}
catch (CDaoException *e)
{
AfxMessageBox(e->m_pErrorInfo->m_strDescription);
e->Delete();
}
连接成功,
但是CC的GCL表OPEN时,里连的记录是BB库中的GCL表记录,为什么会出现这个情况怎样
才能得到CC库中的GCL记录

前提是只能利用m_DAODatabase2,因为还有几十个库的GCL表记录要增加到AA.mdb的GCL表中,不能定义很多的m_DAODatabaseXXX,只能通过m_DAODatabase2.open(....),m_DAODatabase2.Clos()来实现,但是后面连接正确的库的GCL表记录,还是BB库中的GCL表记录,怎样解决!
请教各位大虾了,200分





...全文
90 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
uuwcl 2003-01-24
  • 打赏
  • 举报
回复
AA.mdb

BB.mdb ,cc.mdb ...用的是定义不同全局变量的 不同名的记录集(GCL表)
uuwcl 2003-01-24
  • 打赏
  • 举报
回复
entern CString strMDB;//在函数外写
应是extern CString strMDB;
总之是用了全局变量,
在记录集中也用相同全局变量
BB.mdb ,cc.mdb,...都是通过改变全局变量来实现
uuwcl 2003-01-24
  • 打赏
  • 举报
回复
classwizard 中定义了一个全局变量,通过对这个变量赋不同的值(BB.mdb ,cc.mdb,....)改变这此表对应的库

//连接工程数据库时,通过改变全局变量来改变库
entern CString strMDB;//在函数外写
voidXXXX函数
{
strMDB="cc.mdb";
try
{
m_DAODatabase2.Open(strMDB,FALSE,FALSE);
}
catch (CDaoException *e)
{
AfxMessageBox(e->m_pErrorInfo->m_strDescription);
e->Delete();
}
}

不知怎么会出错!
small_wei 2003-01-24
  • 打赏
  • 举报
回复
不太可能吧?可能是别的原因
这是MSDN上的
CDaoDatabase::Close
Because Close does not destroy the CDaoDatabase object, you can reuse the object by opening the same database or a different database.
masterz 2003-01-24
  • 打赏
  • 举报
回复
你的记录集是否绑定在bb.mdb了
(是不是通过classwizard create new recordset class from gcl table of bb.mdb ?)

4,011

社区成员

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

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