def basicSQLExec(conn, sql): cursor = None try: cursor = dbconn.query(conn, sql) rows = cursor.fetchall() return rows finally: if cursor: cursor.close()
def dropSchemaIfExist(conn, schemaname): sql = "SELECT nspname FROM pg_catalog.pg_namespace WHERE nspname = '%s'" % schemaname dropsql = "DROP SCHEMA %s" % schemaname cursor = None try: cursor = dbconn.query(conn, sql) numrows = cursor.rowcount if numrows == 1: cursor = dbconn.query(conn, dropsql) else: raise CatalogError("more than one entry in pg_namespace for '%s'" % schemaname) except Exception as e: raise CatalogError("error dropping schema %s: %s" % (schemaname, str(e))) finally: if cursor: cursor.close() conn.commit()
def doesSchemaExist(conn, schemaname): sql = "SELECT nspname FROM pg_catalog.pg_namespace WHERE nspname = '%s'" % schemaname cursor = None try: cursor = dbconn.query(conn, sql) numrows = cursor.rowcount if numrows == 0: return False elif numrows == 1: return True else: raise CatalogError("more than one entry in pg_namespace for '%s'" % schemaname) finally: if cursor: cursor.close()