mydatabase.cpp
来自「对 MFC ODBC 访问数据库的二次封装」· C++ 代码 · 共 107 行
CPP
107 行
// MyDatabase.cpp : 实现文件
/*#####################################################################
程序:MyDatabase.cpp
类名:CMyDatabase
功能: 建立数据源的连接并执行 SQL 查询命令
类设计: 付恩宇
日期: 2006年12月 11 日星期一
#####################################################################*/
#include "stdafx.h"
#include "TelNetVod.h"
#include "MyDatabase.h"
/***********************************************************
* 功能:类实例初始化并建立与数据源的连接
* 参数 无
* 返回值:0 无
************************************************************/
// 构造函数建立与数据源的连接
CMyDatabase::CMyDatabase()
{
do
{
try
{
// 连接数据源
pDb.Open("TelVodDSN");
break;
}
catch (CDBException *ex)
{
CString sTemp;
sTemp = ex->m_strError + ex->m_strStateNativeOrigin;
ex->Delete();
// 将异常信息写入异常日志
CReadOrWriteInfo::WriteInfoToiniFile("CMyDatabase 类","连接数据源时出现了异常: " + sTemp,1);
}
// 延时 0.8 秒后重新连接数据源
::Sleep(8000L);
} while(true);
}
/***********************************************************
* 功能:资源回收并断开与数据源的连接
* 参数 无
* 返回值:0 无
************************************************************/
CMyDatabase::~CMyDatabase()
{
try
{
// 断开与数据源的连接
pDb.Close();
}
catch (CDBException *ex)
{
CString sTemp;
sTemp = ex->m_strError + ex->m_strStateNativeOrigin;
ex->Delete();
// 将异常信息写入异常日志
CReadOrWriteInfo::WriteInfoToiniFile("CMyDatabase 类","断开与数据源的连接时出现了异常: " + sTemp,1);
return ;
}
}
/***********************************************************
* 功能:执行 SQL 命令
* 参数 1:SQL 命令语句
* 返回值:0 执行 SQL 语句成功
* 1 出现了异常
************************************************************/
int CMyDatabase::MyExecuteSQL(CString sParam)
{
try
{
pDb.ExecuteSQL(sParam);
return 0;
}
catch(CDBException* ex)
{
//
CString sTemp;
sTemp = ex->m_strError + ex->m_strStateNativeOrigin;
ex->Delete();
// 将异常信息写入异常日志
CReadOrWriteInfo::WriteInfoToiniFile("CMyDatabase 类","执行 SQL 语句时出现了异常: " + sTemp,1);
}
catch(...)
{
// 将异常信息写入异常日志
CReadOrWriteInfo::WriteInfoToiniFile("CMyDatabase 类","执行 SQL 语句时出现了异常",1);
}
return 1;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?