18 #include "SQLamarr/BaseSqlInterface.h"
19 #include "SQLamarr/db_functions.h"
20 #include "SQLamarr/Transformer.h"
54 class TemporaryTable:
public BaseSqlInterface,
public Transformer
61 const std::string& output_table,
63 const std::vector<std::string>& columns,
65 const std::vector<std::string>& select_statements,
68 bool make_persistent =
false
77 const std::string& output_table,
79 const std::vector<std::string>& columns,
81 const std::string& select_statement,
84 bool make_persistent =
false
91 void execute ()
override;
95 const std::string m_output_table;
98 const std::vector<std::string> m_columns;
101 const std::vector<std::string> m_select_statements;
104 std::string compose_create_query()
const;
105 std::string compose_delete_query()
const;
106 std::string compose_insert_query(
const std::string& st)
const;
107 bool m_make_persistent;
std::unique_ptr< sqlite3, void(*)(sqlite3 *)> SQLite3DB
Unique pointer to the sqlite3 connection.