数据库和记录集打开关闭有关问题,VS2010:未发现数据源名称并且未指定默认驱动程序
数据库和记录集打开关闭问题,VS2010:未发现数据源名称并且未指定默认驱动程序
不要跟我说没有设置数据源,我设置了。。。在自己的电脑上运行完全没有问题,但是到别人电脑上 就出现上面的错误。。。
两个按钮,一个显示全部图书,一个查询。。里面都有这些语句
CDatabase db;
CString szSQL;
//设置ODBC连接的驱动。
CString sDriver = _T("MICROSOFT ACCESS DRIVER (*.mdb)");
CString sDsn;
//设置要打开Access数据库路径。
CString sFile = _T("db1.mdb");
int iRec = 0;
//设置ODBC连接字符串。
sDsn.Format(_T("ODBC;DRIVER={%s};DSN='';DBQ=%s"),sDriver,sFile);
try
{
//打开数据库。
db.Open(NULL,false,false,sDsn);
//创建记录集。
CbookSet rt( &db );
。。。。。。。
db.Close();
}
catch(CDBException* e)
{
//若出现错误,弹出错误提示。
AfxMessageBox(L"Database error: "+e->m_strError);
}
我想问是不是因为数据库打开了两次的问题。。。但是在本机上为什么没有问题?
有谁知道吗?
------解决方案--------------------
另外电脑的环境和你的电脑一致吗
不要跟我说没有设置数据源,我设置了。。。在自己的电脑上运行完全没有问题,但是到别人电脑上 就出现上面的错误。。。
两个按钮,一个显示全部图书,一个查询。。里面都有这些语句
CDatabase db;
CString szSQL;
//设置ODBC连接的驱动。
CString sDriver = _T("MICROSOFT ACCESS DRIVER (*.mdb)");
CString sDsn;
//设置要打开Access数据库路径。
CString sFile = _T("db1.mdb");
int iRec = 0;
//设置ODBC连接字符串。
sDsn.Format(_T("ODBC;DRIVER={%s};DSN='';DBQ=%s"),sDriver,sFile);
try
{
//打开数据库。
db.Open(NULL,false,false,sDsn);
//创建记录集。
CbookSet rt( &db );
。。。。。。。
db.Close();
}
catch(CDBException* e)
{
//若出现错误,弹出错误提示。
AfxMessageBox(L"Database error: "+e->m_strError);
}
我想问是不是因为数据库打开了两次的问题。。。但是在本机上为什么没有问题?
有谁知道吗?
------解决方案--------------------
另外电脑的环境和你的电脑一致吗