Information schema
In relational databases, the information schema is an ANSI-standard set of read-only views that provide information about all of the tables, views, columns, and procedures in a database. It can be used as a source of the information that some databases make available through non-standard commands, such as:
=> SELECT count FROM information_schema.tables;
count
-------
99
=> SELECT column_name, data_type, column_default, is_nullable
FROM information_schema.columns WHERE table_name='alpha';
column_name | data_type | column_default | is_nullable
-------------+-----------+----------------+-------------
foo | integer | | YES
bar | character | | YES
=> SELECT * FROM information_schema.information_schema_catalog_name;
catalog_name
--------------
johnd
Implementation
As a notable exception among major database systems, Oracle does not implement the information schema. An exists to address this.RDBMSs that support information_schema include:
- Amazon Redshift
- Apache Hive
- Microsoft SQL Server
- MonetDB
- Snowflake
- MySQL
- PostgreSQL
- H2 Database
- HSQLDB
- InterSystems Caché
- MariaDB
- SingleStore
- Mimer SQL
- Snowflake
- Trino
- Presto
- CrateDB
- ClickHouse
- CockroachDB
- Kinetica DB
- TiDB