Projekt

Allgemein

Profil

Herunterladen als
Herunterladen (2,77 KB) Statistiken
| Zweig: | Revision:
/*
* Copyright (C) 2015 Christian Ehringfeld <c.ehringfeld@t-online.de>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "tableschema.h"
using namespace CuteEntityManager;

TableSchema::TableSchema() {
}

TableSchema::~TableSchema() {
}

const QSharedPointer<QSqlField> TableSchema::getColumn(QString name) const {
auto columns = this->getColumns();
foreach (auto schema, columns) {
if (schema->name() == name) {
return schema;
}
}
return QSharedPointer<QSqlField>();
}

bool TableSchema::containsColumn(QString name) const {
return this->columns.contains(name);
}

const QStringList TableSchema::getColumnNames() {
QStringList l;
auto columns = this->getColumns();
foreach (auto schema, columns) {
l.append(schema->name());
}
return l;
}

QString TableSchema::getSchemaName() const {
return schemaName;
}

void TableSchema::setSchemaName(const QString &value) {
schemaName = value;
}
QString TableSchema::getName() const {
return name;
}

void TableSchema::setName(const QString &value) {
name = value;
}
QString TableSchema::getFullName() const {
return fullName;
}

void TableSchema::setFullName(const QString &value) {
fullName = value;
}
QStringList TableSchema::getPrimaryKeys() const {
return primaryKeys;
}

void TableSchema::setPrimaryKeys(const QStringList &value) {
primaryKeys = value;
}
QString TableSchema::getSequenceName() const {
return sequenceName;
}

void TableSchema::setSequenceName(const QString &value) {
sequenceName = value;
}

QHash<QString, QSharedPointer<QSqlField>> TableSchema::getColumns() const {
return columns;
}

void TableSchema::setColumns(const QHash<QString, QSharedPointer<QSqlField>>
&value) {
columns = value;
}
QHash<QString, QSharedPointer<QSqlRelation>> TableSchema::getRelations()
const {
return relations;
}

void TableSchema::setRelations(
const QHash<QString, QSharedPointer<QSqlRelation>> &value) {
relations = value;
}

QSharedPointer<QSqlRelationalTableModel> TableSchema::getTableModel() const {
QSqlRelationalTableModel *model = new QSqlRelationalTableModel;
model->setTable(this->getName());
return QSharedPointer<QSqlRelationalTableModel>(model);
}
(42-42/43)