2016-02-27 14:24:23 +01:00
|
|
|
#ifndef __SQLSTATEMENT_H__
|
|
|
|
#define __SQLSTATEMENT_H__
|
2014-10-20 22:33:36 +02:00
|
|
|
|
2015-01-06 15:29:18 +01:00
|
|
|
#include "Expr.h"
|
|
|
|
#include <vector>
|
2014-10-09 01:30:22 +02:00
|
|
|
|
2014-10-31 18:36:02 +01:00
|
|
|
namespace hsql {
|
2014-10-27 11:48:55 +01:00
|
|
|
|
2016-02-27 14:24:23 +01:00
|
|
|
typedef enum {
|
|
|
|
kStmtError, // unused
|
|
|
|
kStmtSelect,
|
|
|
|
kStmtImport,
|
|
|
|
kStmtInsert,
|
|
|
|
kStmtUpdate,
|
|
|
|
kStmtDelete,
|
|
|
|
kStmtCreate,
|
|
|
|
kStmtDrop,
|
|
|
|
kStmtPrepare,
|
|
|
|
kStmtExecute,
|
|
|
|
kStmtExport,
|
|
|
|
kStmtRename,
|
|
|
|
kStmtAlter
|
|
|
|
} StatementType;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Base struct for every SQL statement
|
|
|
|
*/
|
|
|
|
struct SQLStatement {
|
|
|
|
SQLStatement(StatementType type) :
|
|
|
|
_type(type) {};
|
|
|
|
|
|
|
|
virtual ~SQLStatement() {}
|
|
|
|
|
|
|
|
virtual StatementType type() { return _type; }
|
|
|
|
|
|
|
|
private:
|
|
|
|
StatementType _type;
|
2015-01-06 19:47:59 +01:00
|
|
|
};
|
2014-10-09 01:30:22 +02:00
|
|
|
|
2014-10-31 18:36:02 +01:00
|
|
|
} // namespace hsql
|
2014-10-22 17:42:05 +02:00
|
|
|
|
2016-02-27 14:24:23 +01:00
|
|
|
#endif // __SQLSTATEMENT_H__
|