16#include "IException.h"
17#include <QSqlDatabase>
80 Database(
const QString &connName,
const QString &driverType);
102 static void remove(
const QString &name);
111 const QString &driverType =
"");
115 static QString _actualConnectionName;
120 void tossDbError(
const QString &message,
const char *f,
int l)
const;
Isis database class providing generalized access to a variety of databases.
Database clone(const QString &name) const
Clones this database into another giving it another name.
virtual ~Database()
Database destructor.
bool isPersistant() const
Checks persistancy state of a database instantiation.
static void remove(const QString &name)
Removes the named database from pool.
QString Name() const
Return the name of this database as specifed upon creation.
QStringList getSystemTables() const
Returns vector strings of all available system tables in the database.
Access
Access status for database creation.
@ Connect
Connect to database immediately.
@ DoNotConnect
Do not connect to database.
void tossDbError(const QString &message, const char *f, int l) const
Generic exception tosser.
QStringList getTables() const
Returns a vector string containing all the tables in the database.
static bool addAccessConfig(const QString &confFile)
Adds a user specifed access configuration file to system.
Database()
Default database constructor.
static DbProfile getProfile(const QString &name)
Retrieves the named database access profile.
void configureAccess(QSqlDatabase &db, const DbProfile &profile)
Set access parameters from a database DbProfile access specification.
QString _name
Needed due to peculiar issues with Database construction techniques.
void setAsDefault()
Sets this database connection/profile as the default.
QStringList getViews() const
Returns a vector string containing all views within the database.
QSqlDatabase init(const DbProfile &profile, Access dbConn=Connect)
Create and initialize a new database connection from a DbProfile.
void makePersistant()
Makes this instance persistant.
A DbProfile is a container for access parameters to a database.
This is free and unencumbered software released into the public domain.