// SqlQuery.h #ifndef dset__SqlQuery_H #define dset__SqlQuery_H // Chitra Kannan // April 2004 // Fixed by David Adams // November 2004 // // Class to build a Sql Query. It is intended to carry the constraint, // i.e. the where clause. #include #include namespace dset { class SqlQuery { public: // tyepdefs typedef std::string Query; typedef std::string constraint; private: //Data Members std::string m_query; bool m_validity; public: // methods // Default constructor. SqlQuery(std::string str =""); // Also allow construction from a character string. SqlQuery(const char* cstr); // Destructor. virtual ~SqlQuery(); // Reset the sql query. SqlQuery& reset(); // Is the sql query valid bool is_valid() const; // Set a sql query. SqlQuery& set(Query sql); // Add AND constraint to sql query. SqlQuery& andconstraint(Query constraint); // Add OR constraint to sql query. SqlQuery& orconstraint(Query constraint); // Get current sql query. std::string to_string() const; }; } // end dataset namespace // Output stream. std::ostream& operator<< (std::ostream& lhs, const dset::SqlQuery& rhs); #endif