Projekt

Allgemein

Profil

Herunterladen als
Herunterladen (1,32 KB) Statistiken
| Zweig: | Revision:
aa44e7d1 Christian Ehringfeld
#ifndef SCHEMA_H
#define SCHEMA_H
4d58ef6a Christian Ehringfeld
#include <QString>
#include "tableschema.h"
b0b8dac3 Christian Ehringfeld
#include <QHash>
#include <QSharedPointer>
aa44e7d1 Christian Ehringfeld
4d58ef6a Christian Ehringfeld
namespace CuteEntityManager {
aa44e7d1 Christian Ehringfeld
4d58ef6a Christian Ehringfeld
class Schema {
aa44e7d1 Christian Ehringfeld
public:
Schema();
b0b8dac3 Christian Ehringfeld
virtual ~Schema();
const QString TYPE_PK = "pk";
const QString TYPE_BIGPK = "bigpk";
const QString TYPE_STRING = "string";
const QString TYPE_TEXT = "text";
const QString TYPE_SMALLINT = "smallint";
const QString TYPE_INTEGER = "integer";
const QString TYPE_BIGINT = "bigint";
const QString TYPE_FLOAT = "float";
const QString TYPE_DOUBLE = "double";
const QString TYPE_DECIMAL = "decimal";
const QString TYPE_DATETIME = "datetime";
const QString TYPE_TIMESTAMP = "timestamp";
const QString TYPE_TIME = "time";
const QString TYPE_DATE = "date";
const QString TYPE_BINARY = "binary";
const QString TYPE_BOOLEAN = "boolean";
const QString TYPE_MONEY = "money";
virtual QHash<QString, QString> *getTypeMap() = 0;

4d58ef6a Christian Ehringfeld
protected:
virtual QList<QString> findTableNames(QString schema = "");
virtual QList<QString> findUniqueIndexes(QString tableName);
virtual TableSchema findConstraints(TableSchema ts);
virtual QString getCreateTableSql(TableSchema ts);
b0b8dac3 Christian Ehringfeld
virtual bool findColumns(TableSchema ts);
QSharedPointer<QHash<QString, QString>> typeMap;
2c152ba3 Christian Ehringfeld
4d58ef6a Christian Ehringfeld
};
}
aa44e7d1 Christian Ehringfeld
#endif // SCHEMA_H