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

📄 book.cpp

📁 图书管理系统 带源码 文档
💻 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 + -