#include "PgClassContainer.h" #include "Pgsql_Connection.h" #include "Pgsql_Col.h" std::string PgClassContainer::getLoadQuery() const { return "SELECT oid, relname, relnamespace, reltype, reloftype, " " relowner, relam, relfilenode, reltablespace, relpages, " " reltuples, reltoastrelid, relisshared, relpersistence, " " relkind, relhasoids, relispopulated, relfrozenxid, relminmxid " " relacl, reloptions \n" "FROM pg_catalog.pg_class"; } void PgClassContainer::load(const Pgsql::Result &res) { const int n_rows = res.rows(); m_container.clear(); m_container.reserve(n_rows); for (auto row : res) { Pgsql::Col col(row); PgClass v; col >> v.oid >> v.name >> v.relnamespace >> v.type >> v.oftype >> v.owner >> v.am >> v.filenode >> v.tablespace >> v.pages_est >> v.tuples_est >> v.toastrelid >> v.isshared >> v.persistence >> v.kind >> v.hasoids >> v.ispopulated >> v.frozenxid >> v.minmxid >> v.acl >> v.options; m_container.push_back(v); } std::sort(m_container.begin(), m_container.end()); }