A PostgreSQL database could be considered as a container for database schema; the database must contain at least one schema. A database schema is used to organize the database objects in a manner similar to namespaces in high-level programming languages.
PostgreSQL database components
Schema
Object names can be reused in different schema without conflict. The schema contains all the database named objects, including tables, views, functions, aggregates, indexes, sequences, triggers, data types, domains, and ranges:
By default, there is a schema called public in the template databases. That means all the newly created databases also contain this schema. All users, by default, can access this schema implicitly. Again, this...