📄 csqlresult.cpp
字号:
#include "stdafx.h"
#include "CSqlResult.h"
#include "CSqlError.h"
#include "CVariant.h"
#include "comlog.h"
/*
内部类用于存放类属性,这样可以不在头文件出现
*/
class CSqlResultPrivate
{
public :
const CSqlDriver* sqldriver ;
string sql ;
int idx ;
// 结果的位置
bool active ;
//sql是否成功
bool isSel ;
// 是否select语句
CSqlError error ;
}
;
CSqlResult::CSqlResult(const CSqlDriver* db)
{
d = new CSqlResultPrivate();
d->sqldriver = db ;
d->isSel = FALSE ;
d->active = FALSE ;
d->idx = CSql::BeforeFirst ;
//BeforeFirst是比初始位置小一的值
}
/*!
Destroys the object and frees any allocated resources.
*/
CSqlResult ::~CSqlResult()
{
delete d ;
d=NULL ;
}
/*
返回数据库错误
*/
CSqlError CSqlResult::lastError()const
{
return d->error ;
}
/*
设置查询语句
*/
void
CSqlResult::setQuery(const string&query)
{
d->sql = query ;
}
/*!
Returns the current SQL query text,
*/
string CSqlResult::lastQuery()const
{
return d->sql ;
}
/*!
记录行是否有效 (预留)
*/
bool CSqlResult::isValid()const
{
// return ( d->idx != CSql::BeforeFirst && \
// d->idx != CSql::AfterLast ) ? TRUE : FALSE;
return true ;
}
/*
记录行位置
*/
int
CSqlResult::at()const
{
return d->idx ;
}
/*
设置记录行位置
*/
void
CSqlResult::setAt(int at)
{
d->idx=at ;
}
/*!
结果集合是否取道
*/
bool CSqlResult::isActive()const
{
return d->active ;
}
/*!
设置是否SELECT语句
*/
void
CSqlResult::setSelect(bool s)
{
d->isSel = s ;
}
/*!
是否SELECT语句
*/
bool CSqlResult::isSelect()const
{
return d->isSel ;
}
/*!
Returns the driver associated with the result.
*/
const CSqlDriver*
CSqlResult::driver()const
{
return d->sqldriver ;
}
/*!
如果返回结果集,设置为真
*/
void
CSqlResult::setActive(bool a)
{
d->active = a ;
}
/*!
设置数据库错误
*/
void
CSqlResult::setLastError(const CSqlError&e)
{
d->error = e ;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -