8 #ifndef _INC_cSQLStatement_H
9 #define _INC_cSQLStatement_H
10 #ifndef NO_PRAGMA_ONCE
15 #include "../Variant/cVariant.h"
16 #include "../Scriptable/IScriptableObj.h"
19 #ifdef USE_ISCRIPTABLE
20 #include "../ScriptContext/cScriptSourceCurrent.h"
56 bool AllocISQLStatement(
const cSQLCmd& oCmd);
62 bool isConnected()
const;
65 virtual cSQLBase* get_SQLParent()
const;
68 virtual HRESULT FetchNext(
bool bWaitIfBusy =
false);
71 bool CloseStatement(
bool bDrop =
true,
bool bThrowOnError =
false);
82 int GetColumnInt(
SQL_COLUMN_t iColumn = k_SQL_COL_FIRST);
92 return GetColumnStr(FindColumn(pszFieldName));
97 return GetColumnInt(FindColumn(pszFieldName));
102 return GetColumnVar(FindColumn(pszFieldName), vVal);
129 virtual HRESULT FetchNext(
bool bWaitIfBusy =
false)
override;
135 return GetColumnVar(FindColumn(pszFieldName), vVal);
139 STDMETHOD(s_GetByName)(
const ATOMCHAR_t* pszPropName, OUT
cVariant& vValRet)
override;
142 #ifdef USE_ISCRIPTABLE
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
Definition: cSQLBase.h:78
Definition: cSQLDatabase.h:30
Definition: cSQLStatement.h:109
bool GetColumnVar(const char *pszFieldName, OUT cVariant &vVal)
Definition: cSQLStatement.h:132
cArrayStruct< cVariant > m_aColumnData
store data values for fields/columns. SQL_COLUMN_t = 1 based array
Definition: cSQLStatement.h:117
Definition: cSQLStatement.h:33
cStringA GetColumnStr(const char *pszFieldName)
These are slightly dangerous to use. you MUST know the order of the select in advance!...
Definition: cSQLStatement.h:88
cArrayStruct< cSQLColumnInfo > m_aColumnInfo
store metadata/description of the fields selected. 1 based.
Definition: cSQLStatement.h:46
cStringA m_sFromTable
usually the table name. used for error text.
Definition: cSQLStatement.h:42
cSQLDatabasePtr m_pDatabase
parent/source Database.
Definition: cSQLStatement.h:45
int GetColumnInt(const char *pszFieldName)
Definition: cSQLStatement.h:94
bool GetColumnVar(const char *pszFieldName, OUT cVariant &vVal)
Definition: cSQLStatement.h:99
Definition: cScriptSourceCurrent.h:17
Definition: cSQLStatement.h:144
virtual cStringA get_SourceDesc() const
cScriptSourceSQLStatement()
~cScriptSourceSQLStatement()
Definition: cVariant.h:26
Definition: cException.h:28
Definition: ISQLDriver.h:30
Definition: IScriptableObj.h:38
Definition: IScriptableObj.h:51
cRefPtr< cSQLDatabase > cSQLDatabasePtr
Definition: cSQLDatabase.h:84
class __DECL_IMPORT cSQLStatementQ
Definition: cUIDManagerTable.h:26
INT16 SQL_TYPE_t
Internal/Native/driver type code. enum SWORD = SQL_TYPE_NULL = 0, short int.
Definition: cSQLConfig.h:19
class __DECL_IMPORT cSQLStatement
Definition: cSQLDatabase.h:24
int SQL_COLUMN_t
what field/column/parameter number. 1 based. SQLUSMALLINT
Definition: cSQLBase.h:23
DECLARE_INTERFACE(IScriptableSetter)
INT32 TIMESYSD_t
Time delta. signed milli-Seconds Span. cTimeSys::k_DMAX, cTimeSys::k_INF = MAILSLOT_WAIT_FOREVER.
Definition: cTimeSys.h:28
int ITERATE_t
like size_t but signed
Definition: Index.h:28
char ATOMCHAR_t
the char form (UNICODE or not) for an atom. (for symbolic names)
Definition: StrConst.h:15
Definition: cSQLConfig.h:29