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

📄 csqlresult.cpp

📁 很好用的数据库连接组件
💻 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 + -