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

📄 book.cpp

📁 摘要:本文是笔者根据数据库编程经验
💻 CPP
字号:
// Book.cpp: implementation of the CBook class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "Book.h"

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

/////////////////////////////////////////////////////////////////////////
// CBook

CBook::CBook()
{
	m_strBookNumber	= TEXT("");
	m_strBookName	= TEXT("");
	m_strBookAuthor	= TEXT("");
	m_fBookPrice	= 0.0;
	m_strBuyDate	= TEXT("1989-01-01");
}

CBook::CBook(const CString& strName) : CEntity(strName)
{
	m_strBookNumber	= TEXT("");
	m_strBookName	= TEXT("");
	m_strBookAuthor	= TEXT("");
	m_fBookPrice	= 0.0;
	m_strBuyDate	= TEXT("1989-01-01");
}

CBook::CBook(const CBook& book)
{
	m_strEntityName = book.m_strEntityName;
	m_strBookNumber = book.m_strBookNumber;
	m_strBookName	= book.m_strBookName;
	m_strBookAuthor	= book.m_strBookAuthor;
	m_fBookPrice	= book.m_fBookPrice;
	m_strBuyDate	= book.m_strBuyDate;
}

CBook::~CBook()
{
}

void CBook::operator = (const CBook & rhs)
{
	if(this == &rhs) return;
	
	m_strEntityName = rhs.m_strEntityName;
	m_strBookNumber = rhs.m_strBookNumber;
	m_strBookName	= rhs.m_strBookName;
	m_strBookAuthor	= rhs.m_strBookAuthor;
	m_fBookPrice	= rhs.m_fBookPrice;
	m_strBuyDate	= rhs.m_strBuyDate;
}

//Attributes
void CBook::SetBookNumber(const CString& strBookNumber)
{
	m_strBookNumber = strBookNumber;
}

void CBook::SetBookName(const CString& strBookName)
{
	m_strBookName = strBookName;
}

void CBook::SetBookAuthor(const CString& strBookAuthor)
{
	m_strBookAuthor = strBookAuthor;
}

void CBook::SetBookPrice(double fPrice)
{
	m_fBookPrice = fPrice;
}

void CBook::SetBuyDate(const CString& strBuyDate)
{
	m_strBuyDate = strBuyDate;
}

//Interface methods
BOOL CBook::Initialize(CAdoConnection* pConn, BOOL bAppend)
{
	if(!CEntity::Initialize(pConn, bAppend))
		return FALSE;

	if(!bAppend)
		m_strSQL += TEXT(" where number='") + m_strBookNumber + TEXT("'");

	return TRUE;
}

BOOL CBook::Append(CAdoConnection* pConn)
{	
	if(!CEntity::Append(pConn))
		return FALSE;

	CAdoRecordSet rs(pConn);
	if(rs.Open(m_strSQL) == -1) return FALSE;
	rs.AddNew();
	rs.PutCollect(0, m_strBookNumber);
	rs.PutCollect(1, m_strBookName);
	rs.PutCollect(2, m_strBookAuthor);
	rs.PutCollect(3, m_fBookPrice);
	rs.PutCollect(4, m_strBuyDate);
	BOOL bSucceed = rs.Update();
	rs.Close();

	return bSucceed;
}

BOOL CBook::Modify(CAdoConnection* pConn)
{
	if(!CEntity::Modify(pConn))
		return FALSE;

	CAdoRecordSet rs(pConn);
	if(rs.Open(m_strSQL) == -1) return FALSE;	
	rs.PutCollect(0, m_strBookNumber);
	rs.PutCollect(1, m_strBookName);
	rs.PutCollect(2, m_strBookAuthor);
	rs.PutCollect(3, m_fBookPrice);
	rs.PutCollect(4, m_strBuyDate);
	BOOL bSucceed = rs.Update();
	rs.Close();

	return bSucceed;
}

BOOL CBook::Delete(CAdoConnection* pConn)
{
	if(!CEntity::Delete(pConn))
		return FALSE;

	CAdoRecordSet rs(pConn);
	if(rs.Open(m_strSQL) == -1) return FALSE;	
	rs.Delete();
	BOOL bSucceed = rs.Update();
	rs.Close();

	return bSucceed;
}

BOOL CBook::Read(CAdoConnection* pConn)
{
	if(!CEntity::Read(pConn))
		return FALSE;

	CAdoRecordSet rs(pConn);
	if(rs.Open(m_strSQL) == -1) return FALSE;	
	rs.GetCollect(0, m_strBookNumber);
	rs.GetCollect(1, m_strBookName);
	rs.GetCollect(2, m_strBookAuthor);
	rs.GetCollect(3, m_fBookPrice);
	rs.GetCollect(4, m_strBuyDate);
	rs.Close();

	return TRUE;
}

BOOL CBook::Read(CAdoRecordSet* pRs)
{
	if(!CEntity::Read(pRs))
		return FALSE;

	pRs->GetCollect(0, m_strBookNumber);
	pRs->GetCollect(1, m_strBookName);
	pRs->GetCollect(2, m_strBookAuthor);
	pRs->GetCollect(3, m_fBookPrice);
	pRs->GetCollect(4, m_strBuyDate);

	return TRUE;
}


/////////////////////////////////////////////////////////////////////////////
// CBorrow

CBorrow::CBorrow()
{
	m_strBookNumber	= TEXT("");
	m_strPersonName	= TEXT("");
	m_strBorrowDate	= TEXT("");
}

CBorrow::CBorrow(const CString& strName) : CEntity(strName)
{
	m_strBookNumber	= TEXT("");
	m_strPersonName	= TEXT("");
	m_strBorrowDate	= TEXT("");
}

CBorrow::CBorrow(const CBorrow& borrow)
{
	m_strEntityName = borrow.m_strEntityName;
	m_strBookNumber = borrow.m_strBookNumber;
	m_strPersonName	= borrow.m_strPersonName;
	m_strBorrowDate	= borrow.m_strBorrowDate;
}

CBorrow::~CBorrow()
{
}

void CBorrow::operator = (const CBorrow & rhs)
{
	if(this == &rhs) return;
	
	m_strEntityName = rhs.m_strEntityName;
	m_strBookNumber = rhs.m_strBookNumber;
	m_strPersonName	= rhs.m_strPersonName;
	m_strBorrowDate	= rhs.m_strBorrowDate;
}

void CBorrow::SetBookNumber(const CString& strBookNumber)
{
	m_strBookNumber = strBookNumber;
}

void CBorrow::SetPersonName(const CString& strPersonName)
{
	m_strPersonName = strPersonName;
}

void CBorrow::SetBorrowDate(const CString& strBorrowDate)
{
	m_strBorrowDate = strBorrowDate;
}

//Interface methods
BOOL CBorrow::Initialize(CAdoConnection* pConn, BOOL bAppend)
{
	if(!CEntity::Initialize(pConn, bAppend)) 
		return FALSE;

	if(!bAppend)
		m_strSQL += TEXT(" where number='") + m_strBookNumber + TEXT("'");

	return TRUE;
}

BOOL CBorrow::Append(CAdoConnection* pConn)
{	
	if(!CEntity::Append(pConn))
		return FALSE;

	CAdoRecordSet rs(pConn);
	if(rs.Open(m_strSQL) == -1) return FALSE;
	rs.AddNew();
	rs.PutCollect(0, m_strBookNumber);
	rs.PutCollect(1, m_strPersonName);
	rs.PutCollect(2, m_strBorrowDate);
	BOOL bSucceed = rs.Update();
	rs.Close();

	return bSucceed;
}

BOOL CBorrow::Modify(CAdoConnection* pConn)
{
	if(!CEntity::Modify(pConn))
		return FALSE;

	CAdoRecordSet rs(pConn);
	if(rs.Open(m_strSQL) == -1) return FALSE;	
	rs.PutCollect(0, m_strBookNumber);
	rs.PutCollect(1, m_strPersonName);
	rs.PutCollect(2, m_strBorrowDate);
	BOOL bSucceed = rs.Update();
	rs.Close();

	return bSucceed;
}

BOOL CBorrow::Delete(CAdoConnection* pConn)
{
	if(!CEntity::Delete(pConn))
		return FALSE;

	CAdoRecordSet rs(pConn);
	if(rs.Open(m_strSQL) == -1) return FALSE;	
	rs.Delete();
	BOOL bSucceed = rs.Update();
	rs.Close();

	return bSucceed;
}

BOOL CBorrow::Read(CAdoConnection* pConn)
{
	if(!CEntity::Read(pConn))
		return FALSE;

	CAdoRecordSet rs(pConn);
	if(rs.Open(m_strSQL) == -1) return FALSE;	
	rs.GetCollect(0, m_strBookNumber);
	rs.GetCollect(1, m_strPersonName);
	rs.GetCollect(2, m_strBorrowDate);
	rs.Close();

	return TRUE;
}

BOOL CBorrow::Read(CAdoRecordSet* pRs)
{
	if(!CEntity::Read(pRs))
		return FALSE;

	pRs->GetCollect(0, m_strBookNumber);
	pRs->GetCollect(1, m_strPersonName);
	pRs->GetCollect(2, m_strBorrowDate);

	return TRUE;
}

/////////////////////////////////////////////////////////////////////////////
// CBorrow

CBorrowBook::CBorrowBook(const CString& strName) : CEntity(strName)
{
	m_strBookNumber	= TEXT("");
	m_strPersonName	= TEXT("");
	m_strBorrowDate	= TEXT("");
}

CBorrowBook::~CBorrowBook()
{
}

//Interface methods
BOOL CBorrowBook::Initialize(CAdoConnection* pConn, BOOL bAppend)
{
	if(!CEntity::Initialize(pConn, bAppend)) 
		return FALSE;

	if(!bAppend)
		m_strSQL += TEXT(" where number='") + m_strBookNumber + TEXT("'");

	return TRUE;
}

BOOL CBorrowBook::Read(CAdoConnection* pConn)
{
	if(!CEntity::Read(pConn))
		return FALSE;

	CAdoRecordSet rs(pConn);
	if(rs.Open(m_strSQL) == -1) return FALSE;	
	rs.GetCollect(0, m_strBookNumber);
	rs.GetCollect(1, m_strBookName);
	rs.GetCollect(2, m_fBookPrice);
	rs.GetCollect(3, m_strPersonName);
	rs.GetCollect(4, m_strBorrowDate);
	rs.Close();

	return TRUE;
}


BOOL CBorrowBook::Read(CAdoRecordSet* pRs)
{
	if(!CEntity::Read(pRs))
		return FALSE;

	pRs->GetCollect(0, m_strBookNumber);
	pRs->GetCollect(1, m_strBookName);
	pRs->GetCollect(2, m_fBookPrice);
	pRs->GetCollect(3, m_strPersonName);
	pRs->GetCollect(4, m_strBorrowDate);

	return TRUE;
}

⌨️ 快捷键说明

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