📄 departments.cpp
字号:
// Departments.cpp: implementation of the CDepartments class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "HrSys.h"
#include "Departments.h"
#include "ADOConn.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CDepartments::CDepartments()
{
DepId = 0;
DepName = "";
Describes = "";
UpperId = 0;
}
CDepartments::~CDepartments()
{
}
//读取和设置成员变量
//数据库操作
int CDepartments::HaveName(CString cDepName)
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置SELECT语句
_bstr_t vSQL;
vSQL = "SELECT * FROM Departments WHERE DepName='" + cDepName + "'";
//执行SELECT语句
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
if (m_pRecordset->adoEOF)
return -1;
else
return 1;
//断开与数据库的连接
m_AdoConn.ExitConnect();
}
int CDepartments::HaveSon(CString cDepId)
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置SELECT语句
_bstr_t vSQL;
vSQL = "SELECT * FROM Departments WHERE UpperId=" + cDepId;
//执行SELECT语句
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
if (m_pRecordset->adoEOF)
return -1;
else
return 1;
//断开与数据库的连接
m_AdoConn.ExitConnect();
}
int CDepartments::HaveEmp(CString cDepId)
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置SELECT语句
_bstr_t vSQL;
vSQL = "SELECT * FROM Employees WHERE DepId=" + cDepId;
//执行SELECT语句
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
if (m_pRecordset->adoEOF)
return -1;
else
return 1;
//断开与数据库的连接
m_AdoConn.ExitConnect();
}
void CDepartments::Load_dep()
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置SELECT语句
_bstr_t vSQL;
vSQL = "SELECT * FROM Departments ORDER BY UpperId";
//执行SELETE语句
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
//初始化数组
a_DepName.RemoveAll();
a_DepId.RemoveAll();
a_UpperId.RemoveAll();
//执行SELECT语句
while (m_pRecordset->adoEOF == 0)
{
a_DepId.Add((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("DepId"));
a_DepName.Add((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("DepName"));
a_UpperId.Add((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("UpperId"));
m_pRecordset->MoveNext();
}
//断开与数据库的连接
m_AdoConn.ExitConnect();
}
long CDepartments::sql_insert()
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置INSERT语句
CString strUpperId;
strUpperId.Format("%d", UpperId);
_bstr_t vSQL;
vSQL = "INSERT INTO Departments (DepName, Describes, UpperId) VALUES('"
+ DepName + "','" + Describes + "'," + strUpperId + ")";
//执行INSERT语句
m_AdoConn.ExecuteSQL(vSQL);
//读取最大编号
long lDepId;
vSQL = "SELECT MAX(DepId) AS MaxId FROM Departments";
//执行SELETE语句
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
//返回各列的值
if (m_pRecordset->adoEOF)
lDepId = 0;
else
lDepId = atol((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("MaxId"));
//断开与数据库的连接
m_AdoConn.ExitConnect();
return lDepId;
}
void CDepartments::sql_update(CString cDepId)
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置UPDATE语句
_bstr_t vSQL;
vSQL = "UPDATE Departments SET DepName='" + DepName
+ "', Describes='" + Describes +"' WHERE DepId=" + cDepId;
//执行UPDATE语句
m_AdoConn.ExecuteSQL(vSQL);
//断开与数据库的连接
m_AdoConn.ExitConnect();
}
void CDepartments::sql_delete(CString cDepId)
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置DELETE语句
_bstr_t vSQL;
vSQL = "DELETE FROM Departments WHERE DepId=" + cDepId;
//执行DELETE语句
m_AdoConn.ExecuteSQL(vSQL);
//断开与数据库的连接
m_AdoConn.ExitConnect();
}
//根据部门编号读取所有字段值
void CDepartments::GetData(CString cDepId)
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置SELECT语句
_bstr_t vSQL;
vSQL = "SELECT * FROM Departments WHERE DepId=" + cDepId;
//执行SELETE语句
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
//返回各列的值
if (m_pRecordset->adoEOF)
CDepartments();
else
{
DepId = atoi(cDepId);
DepName = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("DepName");
Describes = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Describes");
UpperId = atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("UpperId"));
}
//断开与数据库的连接
m_AdoConn.ExitConnect();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -