⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 users.cpp

📁 检查叉头施加的约束是不是有问题。检查叉头施加的约束是不是有问题。
💻 CPP
字号:
// Users.cpp: implementation of the CUsers class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "HrSys.h"
#include "Users.h"
#include "ADOConn.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CUsers::CUsers()
{
	UserName = "";
	EmpId = 0;
	UserPwd = "";
	UserType = "";
}

CUsers::~CUsers()
{

}
//数据库操作
void CUsers::sql_insert()
{	
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置INSERT语句
	CString strEmpId;
	strEmpId.Format("%d", EmpId);

	_bstr_t vSQL;
	vSQL = "INSERT INTO Users VALUES('" + UserName + "'," 
		+ strEmpId + ",'111111','" + UserType + "')";	
	//执行INSERT语句
	m_AdoConn.ExecuteSQL(vSQL);	
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}
//更新用户信息,但不能更新用户名和用户密码
void CUsers::sql_update(CString cUserName)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置UPDATE语句
	CString strEmpId;
	strEmpId.Format("%d", EmpId);
	_bstr_t vSQL;
	vSQL = "UPDATE Users SET EmpId=" + strEmpId 
		+ ",UserType='" + UserType + "' WHERE UserName='" + cUserName + "'";
	//执行UPDATE语句
	m_AdoConn.ExecuteSQL(vSQL);	
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}
//删除用户信息
void CUsers::sql_delete(CString cUserName)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置DELETE语句
	_bstr_t vSQL;
	vSQL = "DELETE FROM Users WHERE UserName='" + cUserName	+ "'";
	//执行DELETE语句
	m_AdoConn.ExecuteSQL(vSQL);	
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}
//更新指定用户密码
void CUsers::sql_updatePassword(CString cUserName)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置UPDATE语句
	_bstr_t vSQL;
	vSQL = "UPDATE Users SET UserPwd='" + UserPwd 
		+ "' WHERE UserName='" + cUserName + "'";
	//执行UPDATE语句
	m_AdoConn.ExecuteSQL(vSQL);	
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}
//根据用户名读取所有字段值
void CUsers::GetData(CString cUserName)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置SELECT语句
	_bstr_t vSQL;
	vSQL = "SELECT * FROM Users WHERE UserName='" + cUserName + "'";
	//执行SELETE语句
	_RecordsetPtr m_pRecordset;
	m_pRecordset = m_AdoConn.GetRecordSet(vSQL);

	//返回各列的值
	if (m_pRecordset->adoEOF)
		CUsers();
	else
	{
		UserName = cUserName;
		EmpId = atol((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("EmpId"));
		UserPwd = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("UserPwd");
		UserType = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("UserType");
	}
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}

//判断指定用户名是否存在
bool CUsers::HaveRecord(CString cUserName)
{	
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置SELECT语句
	_bstr_t vSQL;
	vSQL = "SELECT * FROM Users WHERE UserName='" + cUserName + "'";
	
	//执行SELECT语句
	_RecordsetPtr m_pRecordset;
	m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
	if (m_pRecordset->adoEOF)
		return false;
	else
		return true;

	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}
//判断指定员工是否存在用户名
bool CUsers::EmpIn_DB(CString cEmpId)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置SELECT语句
	_bstr_t vSQL;
	vSQL = "SELECT * FROM Users WHERE EmpId=" + cEmpId;
	
	//执行SELECT语句
	_RecordsetPtr m_pRecordset;
	m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
	if (m_pRecordset->adoEOF)
		return false;
	else
		return true;

	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}
//将用户密码初始化为111111
void CUsers::ResetPassword(CString cUserName)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置UPDATE语句
	_bstr_t vSQL;
	vSQL = "UPDATE Users SET UserPwd='111111'" ;
	vSQL = vSQL	+ " WHERE UserName='" + cUserName + "'";
	//执行UPDATE语句
	m_AdoConn.ExecuteSQL(vSQL);	
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}
//根据用户名取得此员工的姓名
CString CUsers::GetEmpName(CString cUserName)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置SELECT语句
	_bstr_t vSQL;
	vSQL = "SELECT e.EmpName FROM Users u,Employees e";
	vSQL = vSQL	+ " WHERE u.UserName='" + cUserName + "'";
	vSQL = vSQL	+ " AND u.EmpId=e.EmpId";
	
	//执行SELECT语句
	_RecordsetPtr m_pRecordset;
	m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
	if (m_pRecordset->adoEOF)
		return "";
	else
		return (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("EmpName");

	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}
//根据用户名取得此员工的部门名称
CString CUsers::GetDepName(CString cUserName)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置SELECT语句
	_bstr_t vSQL;
	vSQL = "SELECT d.DepName FROM Users u,Employees e,Departments d";
	vSQL = vSQL	+ " WHERE u.UserName='" + cUserName + "'";
	vSQL = vSQL	+ " AND u.EmpId=e.EmpId AND e.DepId=d.DepId";
	
	//执行SELECT语句
	_RecordsetPtr m_pRecordset;
	m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
	if (m_pRecordset->adoEOF)
		return "";
	else
		return (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("DepName");

	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -