Trisha Shetty (Editor)

Information schema

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

In relational databases, the information schema (information_schema) is an ANSI-standard set of read-only views which provide information about all of the tables, views, columns, and procedures in a database. It can be used as a source of the information which some databases make available through non-standard commands, such as:

  • the SHOW command of MySQL
  • the DESCRIBE command of Oracle's SQL*Plus
  • the d command in psql (PostgreSQL's default command-line program).
  • => SELECT count(table_name) FROM information_schema.tables; count ------- 99 (1 row) => 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 (2 rows) => SELECT * FROM information_schema.information_schema_catalog_name; catalog_name -------------- johnd (1 row)

    Implementation

    As a notable exception among major database systems, Oracle does not as of 2015 implement the information schema. An open-source project exists to address this.

    RDBMSs which support information_schema include:

  • Microsoft SQL Server
  • MySQL
  • PostgreSQL
  • InterSystems Caché
  • H2 Database
  • HSQLDB
  • MariaDB
  • RDBMSs which do not support information_schema include:

  • Oracle Database
  • IBM DB2
  • SQLite
  • References

    Information schema Wikipedia


    Similar Topics