?? dataset.cpp
字號:
// DataSet.cpp: implementation of the CDataSet class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "DataSet.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CDataSet::CDataSet()
{
m_pRs.CreateInstance("ADODB.RecordSet");
m_Actived = FALSE;
}
CDataSet::~CDataSet()
{
m_pRs.Release();
}
BOOL CDataSet::Open(CString SQL)
{
ASSERT(m_cnn);
ASSERT(m_cnn->m_Actived);
try
{
m_pRs->Open(_variant_t(SQL), _variant_t(m_cnn->m_pConn, true), adOpenStatic, adLockOptimistic, adCmdText);
m_Actived = TRUE;
return TRUE;
}
catch(_com_error &e)
{
return FALSE;
}
}
void CDataSet::MoveFirst()
{
m_pRs->MoveFirst();
}
void CDataSet::MoveLast()
{
m_pRs->MoveLast();
}
void CDataSet::MoveNext()
{
m_pRs->MoveNext();
}
void CDataSet::MovePrevious()
{
m_pRs->MovePrevious();
}
BOOL CDataSet::IsEOF()
{
return m_pRs->EndOfFile;
}
BOOL CDataSet::IsBOF()
{
return m_pRs->BOF;
}
CString CDataSet::GetAsString(CString FieldName)
{
ASSERT(!IsBOF() && !IsEOF());
_variant_t vValue = m_pRs->Fields->Item[_variant_t(FieldName)]->Value;
//如果為空值則返回空
if ((V_VT(&vValue) == VT_NULL) || (V_VT(&vValue) == VT_EMPTY))
{
return "";
}
return _com_util::ConvertBSTRToString(_bstr_t(vValue));
}
BOOL CDataSet::LoadData()
{
return FALSE;
}
void CDataSet::Close()
{
if (m_Actived)
{
m_pRs->Close();
}
}
void CDataSet::SetAsString(CString Field, CString Value)
{
ASSERT(!IsBOF() && !IsEOF());
m_pRs->Fields->Item[_variant_t(Field)]->Value = _variant_t(Value);
}
void CDataSet::Update()
{
m_pRs->Update();
}
void CDataSet::Delete()
{
m_pRs->Delete(adAffectCurrent);
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -