author | zecke <zecke> | 2002-08-27 20:17:50 (UTC) |
---|---|---|
committer | zecke <zecke> | 2002-08-27 20:17:50 (UTC) |
commit | 86352e32f449ecf00de254674b7dcac72bc34a14 (patch) (side-by-side diff) | |
tree | b5803b69ca00dceea1e2a76a5eee390f0748f27e /libsql/osqltable.h | |
parent | 1398b50ffc193bc9ab69ebe198aeda847c39516e (diff) | |
download | opie-86352e32f449ecf00de254674b7dcac72bc34a14.zip opie-86352e32f449ecf00de254674b7dcac72bc34a14.tar.gz opie-86352e32f449ecf00de254674b7dcac72bc34a14.tar.bz2 |
Initial check in of the light wrapper library
around normal SQL
The first driver implementation is a SQLite version
-rw-r--r-- | libsql/osqltable.h | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/libsql/osqltable.h b/libsql/osqltable.h new file mode 100644 index 0000000..87f7e74 --- a/dev/null +++ b/libsql/osqltable.h @@ -0,0 +1,95 @@ +#ifndef OSQL_TABLE_H +#define OSQL_TABLE_H + +#include <qstring.h> +#include <qvaluelist.h> +#include <qvariant.h> + +/** + * OSQLTableItem saves one column of a complete + * table + */ +class OSQLTableItem { +public: + typedef QValueList<OSQLTableItem> ValueList; + /** + * Type kinds ( to be extended ) + */ + enum Type { Undefined=-1, Integer=0, BigInteger =1, + Float = 2, VarChar = 4 }; + /** + * A constructor + * @param type the Type of the Column + * @param fieldName the Name of the Column + * @param var a Variant + */ + OSQLTableItem(); + OSQLTableItem( enum Type type, + const QString& fieldName, + const QVariant& var= QVariant() ); + + /** + * copy c'tor + */ + OSQLTableItem( const OSQLTableItem& ); + + /** + * d'tor + */ + ~OSQLTableItem(); + + OSQLTableItem& operator=( const OSQLTableItem& ); + + /** + * the fieldName + */ + QString fieldName() const; + + /** + * the field Type + */ + Type type() const; + QVariant more() const; +private: + class OSQLTableItemPrivate; + OSQLTableItemPrivate* d; + Type m_type; + QString m_field; + QVariant m_var; +}; + +/** + * A OSQLTable consists of OSQLTableItems + */ +class OSQLTable { +public: + typedef QValueList<OSQLTable> ValueList; + + /** + * @param tableName the Name of the Table + */ + OSQLTable(const QString& tableName); + + /** + * d'tor + */ + ~OSQLTable(); + + /** + * setColumns sets the Columns of the Table + */ + void setColumns( const OSQLTableItem::ValueList& ); + + /** + * returns all columns of the table + */ + OSQLTableItem::ValueList columns() const; + + QString tableName()const; + +private: + QString m_table; + OSQLTableItem::ValueList m_list; +}; + +#endif |