Информационная схема
В реляционных базах данных информационная схема ( Information_schema ) — это стандартный ANSI набор представлений только для чтения, которые предоставляют информацию обо всех таблицах , представлениях , столбцах и процедурах в базе данных. [1] Его можно использовать в качестве источника информации, которую некоторые базы данных предоставляют с помощью нестандартных команд, таких как:
- тот
SHOW
команда MySQL - тот
DESCRIBE
команда Oracle SQL *Plus - тот
\d
команда в psql ( PostgreSQL по умолчанию). программа командной строки
=> 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)
Выполнение
[ редактировать ]Заметным исключением среди основных систем баз данных является то, что Oracle по состоянию на 2015 г. [update] реализовать информационную схему. проект с открытым исходным кодом Для решения этой проблемы существует .
СУРБД, поддерживающие информационную_схему, включают:
- Амазонка Редшифт
- Улей Апачей
- Microsoft SQL-сервер
- МонетБД
- Снежинка
- MySQL
- PostgreSQL
- База данных H2
- HSQLDB
- InterSystems Скрытый
- МарияДБ
- SingleStore (ранее MemSQL)
- Мимер SQL
- Снежинка [2]
- Трино
- Скоро
- CrateDB
- Кликхаус
- ТараканДБ
К СУБД, не поддерживающим информационную_схему, относятся:
- Апач Дерби
- Апач Игнит
- Жар-птица
- Microsoft Доступ
- IBM Информикс
- Энгр
- IBM DB2
- База данных Oracle
- SAP Хана
- SQLite [3]
- Сибас АСЭ
- Sybase SQL в любом месте
- Терадата
- Вертикальный
См. также
[ редактировать ]Внешние ссылки
[ редактировать ]- Информационная схема в базе данных H2
- Информационная схема в MySQL 8.0
- Информационная схема в PostgreSQL (текущая версия)
- Информационная схема в SQLite
- Информационная схема в Microsoft SQL Server 2014
- Информационная схема в Microsoft SQL Server Compact 4.0
- Проект Oracle Information Schema на sourceforge
- Информационная схема в MariaDB
- Информационная схема в MonetDB
- Информационная схема в CrateDB
- Информационная схема в CockroachDB
Ссылки
[ редактировать ]- ^
Мелтон, Джим; Саймон, Алан Р. (1993). «19.2 Метаданные, репозитории и INFORMATION_SCHEMA». Понимание нового SQL: полное руководство . Серия Morgan Kaufmann по системам управления данными, ISSN 1046-1698. Морган Кауфманн. п. 371 . ISBN 9781558602458 . Проверено 22 октября 2015 г.
Метаданные, которые применяются в первую очередь к среде базы данных времени выполнения, управляются через INFORMATION_SCHEMA. [...] Метаданные, относящиеся к среде информационной системы в целом, управляются через словарь или репозиторий.
- ^ «Информационная схема снежинки» . www.snowflake.com . Проверено 25 марта 2024 г.
- ^ «Операторы Pragma, поддерживаемые SQLite» . www.sqlite.org . Проверено 1 февраля 2022 г.