diff options
Diffstat (limited to '1Tdata/xbase/xbase64-4.1.4/src/include/xbsql.h')
-rwxr-xr-x | 1Tdata/xbase/xbase64-4.1.4/src/include/xbsql.h | 161 |
1 files changed, 0 insertions, 161 deletions
diff --git a/1Tdata/xbase/xbase64-4.1.4/src/include/xbsql.h b/1Tdata/xbase/xbase64-4.1.4/src/include/xbsql.h deleted file mode 100755 index 07ffb70..0000000 --- a/1Tdata/xbase/xbase64-4.1.4/src/include/xbsql.h +++ /dev/null @@ -1,161 +0,0 @@ -/* xbsql.h - -XBase64 Software Library - -Copyright (c) 1997,2003,2014,2022 Gary A Kunkel - -The xb64 software library is covered under the terms of the GPL Version 3, 2007 license. - -Email Contact: - - XDB-devel@lists.sourceforge.net - XDB-users@lists.sourceforge.net - -This class manages a list of open tables, open indices are connected to the open tables - -*/ - - -#ifndef __XB_XBSQL_H__ -#define __XB_XBSQL_H__ - -#ifdef CMAKE_COMPILER_IS_GNUCC -#pragma interface -#endif - - -#ifdef XB_SQL_SUPPORT - -namespace xb{ - - -struct XBDLLEXPORT xbSqlFld{ - char cType; // F - Database field - // L - Literal - // E - Expression - xbInt16 iFldNo; // Field number if db field - xbExp * pExp; // If cType=E, pointer to parsed expression - xbString sFldAlias; // Alias name for query display - xbSqlFld * Next; // Next field in list -}; - -class xbStmt; - - -struct XBDLLEXPORT xbTblJoin { // structure for defining joined tables in the query - - xbString sTableName; - xbString sAlias; - xbString sJoinExp; // table join expression - xbDbf *pDbf; // pointer the the dbf structure for this table - xbTag *pTag; // pointer to relevant tag for this table, null for record order - xbExp *pLinkExp; // pointer to parsed linkage expression - char cJoinType; // M - Master - // L - Left or Full Left - // R - Right or Full Right - // I - Inner - // O - Outer or Full Outer Outer - - xbTblJoin *pMaster; // pointer to master table, null if this is the primary master - xbLinkList<xbTblJoin *> llSubList; // linked list of subordinate tables -// xbStmt *pSubQuery; // pointer to sub query - xbTblJoin *next; // next tbl -}; - - -class XBDLLEXPORT xbStmt : public xbSsv{ - - public: - xbStmt( xbXBase *x ); - ~xbStmt(); - - #ifdef XB_DEBUG_SUPPORT - xbInt16 DumpStmtInternals(); - xbInt16 Test(); - #endif - - xbInt16 ExecuteQuery( const xbString &sCmdLine ); - -// xbInt16 FetchFirst(); -// xbInt16 FetchNext(); -// xbInt16 FetchPrev(); -// xbInt16 FetchLast(); -// xbString &GetField( const xbString sFldName ); - - protected: - - private: - - xbInt16 AddQryTbl( const xbString &sTable, const xbString &sAlias, const xbString &sExpression, const char cJoinType ); - xbInt16 CvtSqlExp2DbaseExp( const xbString &sExpIn, xbString &sExpOut ); - xbInt16 GetNextFromSeg( const xbString &sLineIn, xbString &sFromSegOut ); - xbUInt32 GetNextToken( const xbString &sCmdLineIn, xbString &sTokenOut, xbUInt32 ulStartPos ); - xbInt16 GetParenCnt( const xbString &sToken ); - xbInt16 ParseFromStmt( const xbString &sFromLine ); - xbInt16 ParseStmt( const xbString &sCmdLine ); - xbInt16 ProcessFromSeg( const xbString &sFromStmtSeg ); - xbInt16 UpdateJoinList( char cType, const xbString &sTableName, const xbString &sAlias, const xbString &sExp, xbDbf *d, xbExp *e ); //, xbTag *t); - - xbXBase *xbase; // pointer to xbase structure - - - xbTblJoin * pTblList; - xbSqlFld *fl; // field list in sql select statement - xbString sStmt; // complete query statment - xbString sFields; // list of fields - xbString sFrom; // from statment - xbString sWhere; // where clause - xbString sOrderBy; // sort order - xbString sGroupBy; // group by - xbString sHaving; // having - xbUInt32 ulFromPos; - xbUInt32 ulWherePos; - xbUInt32 ulOrderByPos; - xbUInt32 ulGroupByPos; - xbUInt32 ulHavingPos; - - -}; - - -class XBDLLEXPORT xbSql : public xbSsv { - public: - // xbSql(); - xbSql( xbXBase *x ); - ~xbSql(); - - xbInt16 ExecuteNonQuery( const xbString &sCmdLine ); - xbXBase *GetXbasePtr() const; - - protected: - - private: - - xbInt16 SqlAlterTable( const xbString &sCmdLine ); - xbInt16 SqlCreateTable( const xbString &sCmdLine ); - xbInt16 SqlDelete( const xbString &sCmdLine ); - xbInt16 SqlDropTable( const xbString &sCmdLine ); - - #ifdef XB_INDEX_SUPPORT - xbInt16 SqlCreateIndex( const xbString &sCmdLine ); - xbInt16 SqlDropIndex( const xbString &sCmdLine ); - #endif // XB_INDEX_SUPPORT - -// xbInt16 SqlCreateView( const xbString &sCmdLine ); -// xbInt16 SqlDropView( const xbString &sCmdLine ); -// xbInt16 SqlUpdate( const xbString &sCmdLine ); -// xbInt16 SqlSelect( const xbString &sCmdLine ); - - void SqlHelp() const; - xbInt16 SqlInsert( const xbString &sCmLine ); - xbInt16 SqlSet( const xbString &sCmdLine ); - xbInt16 SqlUse( const xbString &sCmdLine ); - - xbXBase *xbase; - xbUda uda; - -}; - -} /* namespace xb */ -#endif /* XB_SQL_SUPPORT */ -#endif /* __XB_XBSQL_H__ */
\ No newline at end of file |