📄 book.cpp
字号:
// Book.cpp: implementation of the CBook class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "Library.h"
#include "Book.h"
#include "ADOConn.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
////////////////////////////////////////////////////////////////////
// Construction/Destruction
////////////////////////////////////////////////////////////////////
CBook::CBook()
{
Bk_No = "";
Bk_Name = "";
Bk_Type = "";
Bk_Status = "";
Bk_Author = "";
Bk_Press = "";
Bk_PublicDate = "";
Bk_ComeInDate = "";
Bk_CopyNum = 0;
Bk_About = "";
}
CBook::~CBook()
{
}
CString CBook::GetNo()
{
return Bk_No;
}
CString CBook::GetAbout()
{
return Bk_About;
}
CString CBook::GetAuthor()
{
return Bk_Author;
}
CString CBook::GetComeInDate()
{
return Bk_ComeInDate;
}
int CBook::GetCopyNum()
{
return Bk_CopyNum;
}
CString CBook::GetName()
{
return Bk_Name;
}
CString CBook::GetPress()
{
return Bk_Press;
}
CString CBook::GetPublicDate()
{
return Bk_PublicDate;
}
CString CBook::GetType()
{
return Bk_Type;//分类:1.社会科学 2.自然科学 3艺术类 4综合类
}
CString CBook::GetStatus()
{
return Bk_Status;
}
void CBook::SetAbout(CString vAbout)
{
Bk_About = vAbout;
}
void CBook::SetAuthor(CString vAuthor)
{
Bk_Author = vAuthor;
}
void CBook::SetComeInDate(CString vDate)
{
Bk_ComeInDate = vDate;
}
void CBook::SetCopyNum(int vCopyNum)
{
Bk_CopyNum = vCopyNum;
}
void CBook::SetName(CString vName)
{
Bk_Name = vName;
}
void CBook::SetNo(CString vNo)
{
Bk_No = vNo;
}
void CBook::SetPress(CString vPress)
{
Bk_Press = vPress;
}
void CBook::SetPublicDate(CString vPDate)
{
Bk_PublicDate = vPDate;
}
void CBook::SetType(CString vType)
{
Bk_Type = vType;
}
void CBook::SetStatus(CString vStatus)
{
Bk_Status = vStatus;
}
void CBook::GetData(CString vNo)
{
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
_bstr_t vSQL;
vSQL = "SELECT * FROM Book WHERE BNo='" + vNo + "'";
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
if (m_pRecordset->adoEOF)
CBook();
else
{
Bk_No = vNo;
Bk_Name = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("BName");
Bk_Type = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Type");
Bk_Status = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Status");
Bk_Author = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Author");
Bk_Press = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Press");
Bk_PublicDate = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("PublicDate");
Bk_ComeInDate = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("ComeInDate");
Bk_About = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("About");
Bk_CopyNum = atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("CopyNum"));
m_AdoConn.ExitConnect();
}
}
void CBook::SQL_Insert()
{
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
CString strCopyNum;
strCopyNum.Format("%d", Bk_CopyNum);
_bstr_t vSQL;
vSQL = "INSERT INTO Book VALUES('"+Bk_No+"','"+Bk_Name+"','"+Bk_Type+"','"+Bk_Status+"','"
+Bk_Author+"','"+Bk_Press+"','"+Bk_PublicDate+"','"+Bk_ComeInDate+"',"+strCopyNum+",'"
+Bk_About+"')";
m_AdoConn.ExecuteSQL(vSQL);
m_AdoConn.ExitConnect();
}
void CBook::SQL_Update(CString vNo)
{
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
CString strCopyNum;
strCopyNum.Format("%d", Bk_CopyNum);
_bstr_t vSQL;
vSQL = "UPDATE Book SET BName='"+Bk_Name+"',Type='"+Bk_Type+"',Author='"+Bk_Author+"',Press='"+Bk_Press
+"',PublicDate='"+Bk_PublicDate+"',ComeInDate='"+Bk_ComeInDate+"',CopyNum="+strCopyNum+",About='"+Bk_About
+"' WHERE BName in (SELECT BName FROM Book WHERE BNo='"+vNo+"') AND Author in (SELECT Author FROM Book WHERE BNo='"
+vNo+"') AND Press in (SELECT Press FROM Book WHERE BNo='"+vNo+"')";
m_AdoConn.ExecuteSQL(vSQL);
m_AdoConn.ExitConnect();
//where BName in (select BName from Book where BNo='A000001')
// and Author in (select Author from Book where BNo='A000001')
// and Press in (select Press from Book where BNo='A000001')
}
void CBook::SQL_Delete(CString vNo)
{
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
_bstr_t vSQL;
CString strCopyNum;
Bk_CopyNum = Bk_CopyNum-1;
strCopyNum.Format("%d", Bk_CopyNum);
vSQL = "UPDATE Book SET CopyNum=" + strCopyNum +
" WHERE BName in (SELECT BName FROM Book WHERE BNo='"+vNo+"') AND Author in (SELECT Author FROM Book WHERE BNo='"
+vNo+"') AND Press in (SELECT Press FROM Book WHERE BNo='"+vNo+"')";
m_AdoConn.ExecuteSQL(vSQL);
//设置DELETE语句
vSQL = "DELETE FROM Book WHERE BNo='" + vNo +"'";
//执行DELETE语句
m_AdoConn.ExecuteSQL(vSQL);
//断开与数据库的连接
m_AdoConn.ExitConnect();
}
void CBook::SQL_UpdateStatus(CString vStatus)
{
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
_bstr_t vSQL;
vSQL = "UPDATE Book SET Status='"+vStatus+"' WHERE BNo='"+Bk_No+"'";
m_AdoConn.ExecuteSQL(vSQL);
m_AdoConn.ExitConnect();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -