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 {
|
2017-02-08 02:02:30 +01:00
|
|
|
enum StatementType {
|
2016-02-27 15:01:06 +01:00
|
|
|
kStmtError, // unused
|
|
|
|
kStmtSelect,
|
|
|
|
kStmtImport,
|
|
|
|
kStmtInsert,
|
|
|
|
kStmtUpdate,
|
|
|
|
kStmtDelete,
|
|
|
|
kStmtCreate,
|
|
|
|
kStmtDrop,
|
|
|
|
kStmtPrepare,
|
|
|
|
kStmtExecute,
|
|
|
|
kStmtExport,
|
|
|
|
kStmtRename,
|
|
|
|
kStmtAlter
|
2017-02-08 02:02:30 +01:00
|
|
|
};
|
2016-02-27 15:01:06 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Base struct for every SQL statement
|
|
|
|
*/
|
|
|
|
struct SQLStatement {
|
2017-02-03 16:50:18 +01:00
|
|
|
SQLStatement(StatementType type);
|
2016-02-27 15:01:06 +01:00
|
|
|
|
2017-02-03 16:50:18 +01:00
|
|
|
virtual ~SQLStatement();
|
2016-02-27 15:01:06 +01:00
|
|
|
|
2017-02-03 16:50:18 +01:00
|
|
|
virtual StatementType type();
|
2016-02-27 15:01:06 +01:00
|
|
|
|
|
|
|
private:
|
|
|
|
StatementType _type;
|
|
|
|
};
|
2014-10-09 01:30:22 +02:00
|
|
|
|
2014-10-31 18:36:02 +01:00
|
|
|
} // namespace hsql
|
2016-02-27 14:24:23 +01:00
|
|
|
#endif // __SQLSTATEMENT_H__
|