现在首选有两个数据库 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分
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分
解决方案 »
- 如何复制多个文件夹(注意是多个)
- 一个比较不常见的问题,WinINet能穿透SOCKS5代理吗?
- 如何编写一个高性能的文件服务器?(50分)
- 请问有关头文件的包含问题
- WriteString出现异常。怎么解决?内有代码。
- 求教 :DICOM文件中关于截距和斜率的相关知识
- 怎样得到UINT TEST{1,2,2,3,6,5...}数组的大小?像CStringArray类有一个GETCOUNT方法,一般的数组怎样得到呢?
- 为什么一解封,回了斑竹帖子之后,就不能发帖了?
- 求助,文本文件的读写
- VC2005怎么链接msvcrt.dll
- 200分求setup factory 打包软件收到即给分,分不够另开贴。
- VC初学者的问题请多指教.
(是不是通过classwizard create new recordset class from gcl table of bb.mdb ?)
这是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.
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();
}
}不知怎么会出错!
应是extern CString strMDB;
总之是用了全局变量,
在记录集中也用相同全局变量
BB.mdb ,cc.mdb,...都是通过改变全局变量来实现
和
BB.mdb ,cc.mdb ...用的是定义不同全局变量的 不同名的记录集(GCL表)