Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 14f9beed

Von Christian Ehringfeld vor etwa 9 Jahren hinzugefügt

  • ID 14f9beedc0732435decdf9597baff12738d9f7f4
  • Vorgänger 9cf4747e
  • Nachfolger 9d05e414

update

Unterschiede anzeigen:

src/schema.h
#include <QStringList>
#include <QHash>
#include <QSharedPointer>
#include <QSqlDatabase>
#include <memory>
#include "database.h"
#include <QSqlField>
namespace CuteEntityManager {
class Database;
class Schema {
public:
Schema(std::shared_ptr<Database> database);
Schema(QSharedPointer<Database> database);
virtual ~Schema();
const QString TYPE_PK = "pk";
const QString TYPE_BIGPK = "bigpk";
......
const QString TYPE_TIMESTAMP = "timestamp";
const QString TYPE_TIME = "time";
const QString TYPE_DATE = "date";
const QString TYPE_CHAR = "char";
const QString TYPE_BINARY = "binary";
const QString TYPE_BOOLEAN = "boolean";
const QString TYPE_MONEY = "money";
......
virtual QVariant getLastInsertID();
virtual void refresh();
virtual QString getRawTable(QString name);
virtual bool containsTable(QString tblname);
virtual QString quoteValue(QString str);
QHash<QString, QSharedPointer<TableSchema> > getTables() const;
void setTables(const QHash<QString, QSharedPointer<TableSchema> > &value);
protected:
QSharedPointer<Database> getDatabase() const;
void setDatabase(const QSharedPointer<Database> &value);
protected:
virtual QStringList findTableNames(QString schema = "") = 0;
virtual QStringList findUniqueIndexes(QString tableName) = 0;
virtual QSharedPointer<TableSchema> findConstraints(TableSchema ts) = 0;
virtual QString getCreateTableSql(TableSchema ts) = 0;
virtual bool findColumns(TableSchema ts) = 0;
QSharedPointer<QHash<QString, QString>> typeMap;
virtual QSharedPointer<TableSchema> *loadTableSchema(QString name) = 0;
virtual QHash<QString, QStringList> findUniqueIndexes(const QSharedPointer<TableSchema> &table) = 0;
virtual void findConstraints(const QSharedPointer<TableSchema> &ts) = 0;
virtual bool findColumns(const QSharedPointer<TableSchema> &ts) = 0;
virtual QSharedPointer<TableSchema> loadTableSchema(QString name) = 0;
virtual TableSchema *getTableSchema(QString name, bool refresh = false);
std::shared_ptr<Database> database;
QSharedPointer<Database> database;
QSharedPointer<QHash<QString, QString>> typeMap;
QHash<QString, QSharedPointer<TableSchema>> tables;

Auch abrufbar als: Unified diff