pgLab/pglablib/PgNamespaceObject.h

29 lines
692 B
C
Raw Normal View History

#ifndef PGSCHEMAOBJECT_H
#define PGSCHEMAOBJECT_H
#include <QString>
#include "PgDatabaseObject.h"
#include <libpq-fe.h>
class PgNamespace;
/// Base class for database objects that are part of a specific schema
class PgNamespaceObject: public PgDatabaseObject {
public:
PgNamespaceObject(PgDatabaseCatalog& cat, Oid oid, const QString &name, Oid schema_oid);
Oid nsOid() const;
// void setSchemaOid(Oid oid);
QString nsName() const;
QString quotedNsName() const;
/// Returns the schema name and object name with proper quotes
QString fullyQualifiedQuotedObjectName() const;
const PgNamespace& ns() const;
private:
Oid m_schemaOid = InvalidOid;
};
#endif // PGSCHEMAOBJECT_H