@@ -51,7 +51,7 @@ class WsjcppSqlQuery {
5151 std::string m_tableName;
5252};
5353
54- class WsjcppSqlBuilder2 ;
54+ class WsjcppSqlBuilder ;
5555
5656enum class WsjcppSqlWhereType { LOGICAL_OPERATOR, CONDITION, SUB_CONDITION };
5757
@@ -100,7 +100,7 @@ class WsjcppSqlSelect;
100100template <class T >
101101class WsjcppSqlWhere : public WsjcppSqlWhereBase {
102102public:
103- WsjcppSqlWhere (WsjcppSqlWhere<T> *parent, WsjcppSqlBuilder2 *builder, T *query)
103+ WsjcppSqlWhere (WsjcppSqlWhere<T> *parent, WsjcppSqlBuilder *builder, T *query)
104104 : WsjcppSqlWhereBase(WsjcppSqlWhereType::SUB_CONDITION), m_parent(parent), m_builder(builder), m_query(query) { }
105105
106106 template <typename TVal>
@@ -210,39 +210,59 @@ class WsjcppSqlWhere : public WsjcppSqlWhereBase {
210210 return *this ;
211211 }
212212
213- WsjcppSqlBuilder2 *m_builder;
213+ WsjcppSqlBuilder *m_builder;
214214 T *m_query;
215215 WsjcppSqlWhere<T> *m_parent;
216216 std::vector<std::shared_ptr<WsjcppSqlWhereBase>> m_conditions;
217217};
218218
219219class WsjcppSqlSelect : public WsjcppSqlQuery {
220220public:
221- WsjcppSqlSelect (const std::string &tableName, WsjcppSqlBuilder2 *builder);
221+ WsjcppSqlSelect (const std::string &tableName, WsjcppSqlBuilder *builder);
222222 WsjcppSqlSelect &colum (const std::string &col, const std::string &col_as = " " );
223223
224224 WsjcppSqlWhere<WsjcppSqlSelect> &where ();
225225 // TODO group by
226226 // TODO order by
227- WsjcppSqlBuilder2 &compile ();
227+ WsjcppSqlBuilder &compile ();
228228 virtual std::string sql () override ;
229229
230230private:
231231 std::string m_tableName;
232- WsjcppSqlBuilder2 *m_builder;
232+ WsjcppSqlBuilder *m_builder;
233233 std::shared_ptr<WsjcppSqlWhere<WsjcppSqlSelect>> m_where;
234234 std::vector<std::string> m_columns;
235235 std::map<std::string, std::string> m_columns_as;
236236};
237237
238- class WsjcppSqlBuilder2 {
238+
239+ // class WsjcppSqlInsert : public WsjcppSqlQuery {
240+ // public:
241+ // WsjcppSqlInsert(const std::string &tableName, WsjcppSqlBuilder *builder);
242+ // WsjcppSqlInsert &colum(const std::string &col, const std::string &col_as = "");
243+
244+ // WsjcppSqlWhere<WsjcppSqlInsert> &where();
245+ // // TODO group by
246+ // // TODO order by
247+ // WsjcppSqlBuilder &compile();
248+ // virtual std::string sql() override;
249+
250+ // private:
251+ // std::string m_tableName;
252+ // WsjcppSqlBuilder *m_builder;
253+ // std::shared_ptr<WsjcppSqlWhere<WsjcppSqlSelect>> m_where;
254+ // std::vector<std::string> m_columns;
255+ // std::map<std::string, std::string> m_columns_as;
256+ // };
257+
258+ class WsjcppSqlBuilder {
239259public:
240260 // TODO begin / end transaction can be added here
241261
242262 WsjcppSqlSelect &selectFrom (const std::string &tableName);
243- WsjcppSqlBuilder2 &insertInto (const std::string &tableName);
244- // WsjcppSqlBuilder2 &makeUpdate(const std::string &sSqlTable);
245- // WsjcppSqlBuilder2 &makeDelete(const std::string &sSqlTable);
263+ WsjcppSqlBuilder &insertInto (const std::string &tableName);
264+ // WsjcppSqlBuilder &makeUpdate(const std::string &sSqlTable);
265+ // WsjcppSqlBuilder &makeDelete(const std::string &sSqlTable);
246266
247267 bool hasErrors ();
248268 std::string sql ();
0 commit comments