📄 insertbookdlg.cpp
字号:
// InsertBookDlg.cpp : implementation file
//
#include "stdafx.h"
#include "librarym.h"
#include "InsertBookDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CInsertBookDlg dialog
CInsertBookDlg::CInsertBookDlg(CWnd* pParent /*=NULL*/)
: CDialog(CInsertBookDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CInsertBookDlg)
m_author = _T("");
m_bookid = _T("");
m_bookname = _T("");
m_booktypeid = _T("");
m_keyword = _T("");
m_page = _T("");
m_press = _T("");
m_price = _T("");
m_printdate = _T("");
m_ps = _T("");
m_availible = _T("");
//}}AFX_DATA_INIT
}
void CInsertBookDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CInsertBookDlg)
DDX_Text(pDX, IDC_EDIT_AUTHOR, m_author);
DDX_Text(pDX, IDC_EDIT_BOOKID, m_bookid);
DDX_Text(pDX, IDC_EDIT_BOOKNAME, m_bookname);
DDX_Text(pDX, IDC_EDIT_BOOKTYPEID, m_booktypeid);
DDX_Text(pDX, IDC_EDIT_KEYWORD, m_keyword);
DDX_Text(pDX, IDC_EDIT_PAGE, m_page);
DDX_Text(pDX, IDC_EDIT_PRESS, m_press);
DDX_Text(pDX, IDC_EDIT_PRICE, m_price);
DDX_Text(pDX, IDC_EDIT_PRINTDATE, m_printdate);
DDX_Text(pDX, IDC_EDIT_PS, m_ps);
DDX_Text(pDX, IDC_EDIT_AVAILIBLE, m_availible);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CInsertBookDlg, CDialog)
//{{AFX_MSG_MAP(CInsertBookDlg)
ON_BN_CLICKED(IDC_BUTTON_INSERTREADERRECORDCANCEL, OnButtonInsertreaderrecordcancel)
ON_BN_CLICKED(IDC_BUTTON_INSERTREADERRECORD, OnButtonInsertreaderrecord)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CInsertBookDlg message handlers
BOOL CInsertBookDlg::OnInitDialog()
{
CDialog::OnInitDialog();
//初始化数据库连接
HRESULT result;
try
{
//实例化连接对象
result=m_pConnection.CreateInstance(_uuidof(Connection));
if(SUCCEEDED(result))
{
//设置连接属性为UDL文件
m_pConnection->ConnectionString="File Name=LIBRARYM.udl";
//设置等待连接打开的时间为20s
m_pConnection->ConnectionTimeout=20;
result=m_pConnection->Open("","","",adConnectUnspecified);
if(FAILED(result))
{
AfxMessageBox("open failed");
return TRUE;
}
}
else
{
AfxMessageBox("createinstance of connection failed!");
return TRUE;
}
}
catch(_com_error e)
{
//输出异常信息
_bstr_t bstrSource(e.Source());
_bstr_t bstrDescription(e.Description());
AfxMessageBox(bstrSource+bstrDescription);
return TRUE;
}
return TRUE;
}
void CInsertBookDlg::OnButtonInsertreaderrecordcancel()
{
CDialog::OnCancel();
}
void CInsertBookDlg::OnButtonInsertreaderrecord()
{
UpdateData(TRUE); //得到输入
//判断是否输入了要插入的数据项
if(m_author.IsEmpty() || m_availible.IsEmpty() ||m_bookid.IsEmpty()
|| m_bookname.IsEmpty() || m_booktypeid.IsEmpty() ||m_keyword.IsEmpty()
|| m_press.IsEmpty()|| m_printdate.IsEmpty())
{
AfxMessageBox("empty input!");
return;
}
_RecordsetPtr pset;
pset.CreateInstance(_uuidof(Recordset));
HRESULT hr;
try
{
hr=pset->Open("select * from BookInfo",m_pConnection.GetInterfacePtr(),
adOpenDynamic,adLockOptimistic,adCmdText);
//添加记录
if(SUCCEEDED(hr))
{
pset->AddNew();
//写入每个字段值
pset->PutCollect("BookID",_variant_t(m_bookid));
pset->PutCollect("BookName",_variant_t(m_bookname));
pset->PutCollect("BookTypeID",_variant_t(m_booktypeid));
pset->PutCollect("Author",_variant_t(m_author));
pset->PutCollect("Press",_variant_t(m_press));
pset->PutCollect("PrintDate",_variant_t(m_printdate));
pset->PutCollect("Price",_variant_t(m_price));
pset->PutCollect("Page",_variant_t(m_page));
pset->PutCollect("Keyword",_variant_t(m_keyword));
pset->PutCollect("Available",_variant_t(m_availible));
pset->PutCollect("PS",_variant_t(m_ps));
pset->Update();
}
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
return;
}
pset->Close();
pset=NULL;
AfxMessageBox("successful inserted!");
CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -