My Project
Public Member Functions | Static Public Attributes | Protected Attributes | Friends | List of all members
ParaInfoCenter::CICRecordSet Class Reference

CICRecordSet is both the result and wrapper of a sql statement(procedure). More...

#include <ICRecordSet.h>

Inheritance diagram for ParaInfoCenter::CICRecordSet:
ParaInfoCenter::CSQLStatement

Public Member Functions

PE_CORE_DECL CICRecordSetItemoperator[] (int index)
 We can use rs[x] form sentence to get the x-the item of the current.
 
PE_CORE_DECL void Initialize (sqlite3_stmt *stmt)
 
PE_CORE_DECL void Initialize (const char *sql)
 
PE_CORE_DECL void Initialize (const char16_t *sql)
 
PE_CORE_DECL void Release ()
 
PE_CORE_DECL int NextRow ()
 
PE_CORE_DECL int ColumnCount ()
 
PE_CORE_DECL const char * GetColumnName (int index)
 
PE_CORE_DECL const char16_t * GetColumnName16 (int index)
 
PE_CORE_DECL int64 GetLastInsertRowID ()
 
- Public Member Functions inherited from ParaInfoCenter::CSQLStatement
int Execute ()
 
int Reset ()
 
int DataBinding (int index, double value)
 
int DataBinding (const char *name, double value)
 
int DataBinding (int index, int value)
 
int DataBinding (const char *name, int value)
 
int DataBinding (int index, int64 value)
 
int DataBinding (const char *name, int64 value)
 
int DataBindingNull (int index)
 
int DataBindingNull (const char *name)
 
int DataBinding (int index, const char *value)
 
int DataBinding (const char *name, const char *value)
 
int DataBinding (int index, const WCHAR *value)
 
int DataBinding (const char *name, const WCHAR *value)
 
int DataBinding (int index, const void *value, int size)
 
int DataBinding (const char *name, const void *value, int size)
 
bool IsEOF ()
 The recordset is IsEOF()==true when. More...
 
bool IsBOF ()
 The recordset is IsBOF()==true before the first NextRow() is called; in other words, no DataBinding should occur if it is BOF is true. More...
 
bool IsValid ()
 The recordset is invalid when: More...
 

Static Public Attributes

static int SOK =0
 
static int SEOF =-1
 
static int SBOF =-2
 

Protected Attributes

vector< CICRecordSetItem * > m_items
 
CICRecordSetItemm_empty
 
bool m_bUpdatable
 
int m_columnNum
 
- Protected Attributes inherited from ParaInfoCenter::CSQLStatement
sqlite3_stmt * m_stmt
 
sqlite3 * m_db
 
bool m_isValid
 
bool m_eof
 
bool m_bof
 

Friends

class DBEntity
 database entity
 

Detailed Description

CICRecordSet is both the result and wrapper of a sql statement(procedure).

All CICRecordSet instances are managed automatically by the CICDBManager. Users should not new or delete any CICRecordSet instance. Use CICDBManager's CreateRecordSet and DeleteRecordSet to get a recordset instance or release an instance.

remark
Because the CICRecordSet instances are managed by CICDBManager, the garbage collection will happen constantly. If a recordset is invalid or reaches its end (IsEOF()==true), the garbage collector will assign the recordset instance to other use. So all reference to that instance will not be correct.

The recordset is invalid when:

The recordset is IsEOF()==true when

The recordset is IsBOF()==true before the first NextRow() is called;


The documentation for this class was generated from the following files: