pgLab/pglablib/catalog/PgDatabaseContainer.cpp

27 lines
660 B
C++
Raw Normal View History

#include "PgDatabaseContainer.h"
#include "Pgsql_Col.h"
std::string PgDatabaseContainer::getLoadQuery() const
{
2017-02-13 19:51:19 +01:00
return "SELECT oid,datname,datdba,encoding,datcollate,datctype,datistemplate,datallowconn,"
"datconnlimit,dattablespace,datacl FROM pg_database";
}
PgDatabase PgDatabaseContainer::loadElem(const Pgsql::Row &row)
{
Pgsql::Col col(row);
Oid oid = col.nextValue();
QString name = col.nextValue();
PgDatabase v(m_catalog, oid, name);
col >> v.dba >> v.encoding >> v.collate >> v.ctype >> v.isTemplate
>> v.allowConn >> v.connLimit >> v.tablespace;
AclList acl_list;
col >> acl_list;
v.setAcls(std::move(acl_list));
return v;
}