📄 users.cpp
字号:
// Users.cpp: implementation of the CUsers class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "libraryMS.h"
#include "Users.h"
#include "ADOConn.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
extern CUsers curUser;
CUsers::CUsers()
{
IDUser = "";
NameUser = "";
PwdUser = "";
TypeUser = "";
LogUser = "";
}
CUsers::~CUsers()
{
}
void CUsers::SetIDUser(CString vIDUser)
{
IDUser = vIDUser;
}
CString CUsers::GetIDUser()
{
return IDUser;
}
CString CUsers::GetNameUser()
{
return NameUser;
}
void CUsers::SetNameUser(CString vNameUser)
{
NameUser = vNameUser;
}
CString CUsers::GetPwdUser()
{
return PwdUser;
}
void CUsers::SetPwdUser(CString vPwdUser)
{
PwdUser = vPwdUser;
}
void CUsers::SetTypeUser(CString vTypeUser)
{
TypeUser = vTypeUser;
}
CString CUsers::GetTypeUser()
{
return TypeUser;
}
void CUsers::SetLogUser(CString vLogUser)
{
LogUser = vLogUser;
}
CString CUsers::GetLogUser()
{
return LogUser;
}
void CUsers::sql_insert()
{
//连接数据库
ADOConn m_Adoconn;
m_Adoconn.OnInitADOConn();
CString vID_t_UserOP,vEvent_t_UserOP;
vID_t_UserOP = curUser.GetIDUser();
vEvent_t_UserOP = "添加";
//设置INSERT语句以及操作记录语句 两个操作集成一个事务
_bstr_t vSQL;
vSQL = "BEGIN TRANSACTION INSERT INTO t_User(IDUser, NameUser, PwdUser, TypeUser) VALUES('"+IDUser+"','"+NameUser+"','"+PwdUser+"','"+TypeUser+"')"
"INSERT INTO t_UserBack (ID_t_UserOP, Event_t_UserOP, Comment_t_UserrOP, ID_t_User, NameUser) VALUES ('"+vID_t_UserOP+"','"+vEvent_t_UserOP+"','"+LogUser+"','"+IDUser+"','"+NameUser+"')""if @@ERROR<>0 ROLLBACK TRAN else COMMIT TRAN";
if(m_Adoconn.ExecuteSQL(vSQL))//执行INSERT语句
AfxMessageBox("添加成功");
else AfxMessageBox("添加失败");
m_Adoconn.ExitConnect(); //断开数据库连接
}
void CUsers::sql_update(CString vIDUser)
{ //连接数据库
ADOConn m_Adoconn;
m_Adoconn.OnInitADOConn();
CString vID_t_UserOP,vEvent_t_UserOP;
vID_t_UserOP = curUser.GetIDUser();
vEvent_t_UserOP = "更新";
//设置UPDATE语句
_bstr_t vSQL;
vSQL = "BEGIN TRANSACTION UPDATE t_User SET PwdUser = "+PwdUser+" Where IDUser = '" +vIDUser+"'"
"INSERT INTO t_UserBack (ID_t_UserOP, Event_t_UserOP, Comment_t_UserrOP, ID_t_User, NameUser) VALUES ('"+vID_t_UserOP+"','"+vEvent_t_UserOP+"','"+LogUser+"','"+IDUser+"','"+NameUser+"')""if @@ERROR<>0 ROLLBACK TRAN else COMMIT TRAN";
if(m_Adoconn.ExecuteSQL(vSQL))//执行UPDATE语句
{
CString str;
str = "密码修改成功,下次登录请使用新密码: "+PwdUser+"";
AfxMessageBox(str);
}
else
AfxMessageBox("更新失败");
m_Adoconn.ExitConnect(); //断开数据库连接
}
void CUsers::sql_delete(CString vIDUser)
{ //连接数据库
ADOConn m_Adoconn;
m_Adoconn.OnInitADOConn();
CString vID_t_UserOP,vEvent_t_UserOP;
vID_t_UserOP = curUser.GetIDUser();
vEvent_t_UserOP = "删除";
//设置DELETE语句
_bstr_t vSQL;
vSQL = "BEGIN TRANSACTION DELETE t_User Where IDUser ='"+vIDUser+"'"
"INSERT INTO t_UserBack (ID_t_UserOP, Event_t_UserOP, Comment_t_UserrOP, ID_t_User, NameUser) VALUES ('"+vID_t_UserOP+"','"+vEvent_t_UserOP+"','"+LogUser+"','"+IDUser+"','"+NameUser+"')""if @@ERROR<>0 ROLLBACK TRAN else COMMIT TRAN";
m_Adoconn.ExecuteSQL(vSQL); //执行DELETE语句
m_Adoconn.ExitConnect(); //断开数据库连接
}
void CUsers::GetData(CString vIDUser)
{ //连接数据库
ADOConn m_Adoconn;
m_Adoconn.OnInitADOConn();
//执行SELECT语句
_RecordsetPtr m_pRecordset;
_bstr_t vSQL= "SELECT COUNT(*) FROM t_User Where IDUser = '"+vIDUser+"'";
m_pRecordset = m_Adoconn.GetRecordSet(vSQL);
_variant_t vCount = m_pRecordset->GetCollect((_variant_t)(long)(0)) ;
if (vCount.lVal == 0)
{
this->SetIDUser('-1');
m_Adoconn.ExitConnect();
return ;
}
vSQL= "SELECT * FROM t_User Where IDUser = '"+vIDUser+"'";
m_pRecordset = m_Adoconn.GetRecordSet(vSQL);
if(m_pRecordset->adoEOF == 1)
CUsers();
else
{
IDUser = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("IDUser");
NameUser = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("NameUser");
PwdUser = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("PwdUser");
TypeUser = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("TypeUser");
}
m_Adoconn.ExitConnect(); //断开数据库连接
}
/*BOOL CUsers::IsValiDate()//查询记录是否存在
{
ADOConn m_Adoconn;
m_Adoconn.OnInitADOConn();
/////////////////////////////////
AfxMessageBox("设置SQL语句");
/////////////////////////////////
//_bstr_t vSQL= "SELECT * FROM t_User Where IDUser = '"+vIDUser+"'";
/////////////////////////////////
AfxMessageBox("设置SQL语句成功");
//AfxMessageBox(vSQL);
/////////////////////////////////
//执行SELECT语句
_RecordsetPtr m_pRecordset;
_bstr_t vSQL= "SELECT COUNT(*) FROM t_User Where IDUser = '"+vIDUser+"'";
m_pRecordset = m_Adoconn.GetRecordSet(vSQL);
//AfxMessageBox(vSQL);
//AfxMessageBox("执行查询SQL语句");
_variant_t vCount = m_pRecordset->GetCollect((_variant_t)(long)(0)) ;
//CString message;
//message.Format("共有%d条记录",vCount.lVal);
//AfxMessageBox(message);
if (vCount.lVal == 0)
{
// AfxMessageBox("没有该记录");
this->SetIDUser('-1');
m_Adoconn.ExitConnect();
return false ;
}
else
{
m_Adoconn.ExitConnect();
return true ;
}
vSQL= "SELECT * FROM t_User Where IDUser = '"+vIDUser+"'";
m_pRecordset = m_Adoconn.GetRecordSet(vSQL);
// m_pRecordset = m_Adoconn.ExecuteSQL("SELECT COUNT(*) FROM t_User Where IDUser = '"+vIDUser+"'");
// //if(_variant_t vCount = m_pRecordset->GetCollect((_variant_t)(long)(0)) == 0)
// {
// AfxMessageBox("用户信息错误");
// m_pRecordset->Close();
// return;
// }
//m_pRecordset = m_Adoconn.GetRecordSet(vSQL);
/////////////////////////////////
//AfxMessageBox("执行SQL语句");
/////////////////////////////////
//返回各列的值
if(m_pRecordset->adoEOF == 1)
CUsers();
else
{
/////////////////////////////////
AfxMessageBox("提取列值");
/////////////////////////////////
IDUser = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("IDUser");
NameUser = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("NameUser");
PaswUser = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("PaswUser");
TypeUser = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("TypeUser");
//AfxMessageBox(IDUser+NameUser+PaswUser+TypeUser);
}
m_Adoconn.ExitConnect();
}*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -