WikiDer > SQL: 2011 - Википедия
SQL: 2011 или же ISO / IEC 9075: 2011 (под общим названием «Информационные технологии - Языки баз данных - SQL») - седьмая редакция ISO (1987) и ANSI (1986) стандарт для SQL база данных язык запросов. Официально он был принят в декабре 2011 года.[1] Стандарт состоит из 9 частей, которые подробно описаны в SQLСледующая версия SQL: 2016.
Новые возможности
Одна из основных новых функций - улучшенная поддержка темпоральные базы данных.[2][3] Усовершенствования языка для определения и обработки временных данных включают:
- Определения периода времени использовать два стандартных столбца таблицы в качестве начала и конца именованного периода времени с семантикой закрыто-открыто. Это обеспечивает совместимость с существующими моделями данных, кодом приложения и инструментами.
- Значение таблицы периодов времени приложений (в другом месте называется действительное время таблицы), используя
ПЕРИОД НА
аннотация - Обновление и удаление временных строк приложения с автоматическое разделение периода времени
- Временный первичные ключи включение периодов времени приложения с необязательными неперекрывающимися ограничениями через
БЕЗ ПЕРЕХОДОВ
пункт - Временный ссылочная целостность ограничения для расписания приложений
- Таблицы времени приложения запрашиваются с использованием обычного синтаксиса запроса или с использованием нового временные предикаты для периодов времени, включая
СОДЕРЖИТ
,ПЕРЕСЕЧЕНИЕ
,РАВНЫЕ
,ПРЕДИСЛОВИЕ
,УСПЕХОВ
,НЕМЕДЛЕННО ПРЕДУСМОТРЕН
, иНЕМЕДЛЕННО УСПЕХА
(которые являются модифицированными версиями Интервальные отношения Аллена) - Значение таблицы с системными версиями (в другом месте называется время транзакции таблицы), используя
ПЕРИОД ДЛЯ SYSTEM_TIME
аннотация иС ВЕРСИОНИРОВАНИЕМ СИСТЕМЫ
модификатор. Системные периоды времени поддерживаются автоматически. Ограничения для таблиц с системным управлением версиями не обязательно должны быть временными и применяются только к текущим строкам. - Синтаксис для разрезанный по времени и последовательный запросы к системным таблицам времени через
ПО ВРЕМЕНИ СИСТЕМЫ
иВЕРСИИ МЕЖДУ СИСТЕМОЙ ВРЕМЕНИ ... И ...
статьи - Время приложения и управление версиями системы могут использоваться вместе для обеспечения битемпоральный столы
Поддержка в СУБД
SAP HANA 2.0 SP03 поддерживает таблицы с системным управлением версиями[4] используя стандартный синтаксис выбора ДЛЯ СИСТЕМНОГО_ВРЕМЕНИ НА '<отметка времени1>'
[5] SAP HANA 2.0 SP04 добавляет (частичную) поддержку управления версиями во время приложения [6]
IBM DB2 версия 10 утверждает, что является первой базой данных, в которой реализована соответствующая реализация этой функции в том, что они называют «запросами о путешествиях во времени»,[7][8] хотя они используют альтернативный синтаксис ДЛЯ SYSTEM_TIME НА
.
Oracle Oracle 12c поддерживает временную функциональность в соответствии с SQL: 2011.[9] Версии 10g и 11g реализуют разрезанный по времени запросы в том, что они называют Flashback-запросы, используя альтернативный синтаксис ПО ВРЕМЕНИ
.[10] Примечательно, что обе реализации Oracle зависят от базы данных. Журнал транзакций и поэтому разрешать временные запросы только к недавним изменениям, которые все еще сохраняются для резервного копирования.
Microsoft SQL Server (версия 2016) реализует темпоральные таблицы с SYSTEM_VERSIONING
.[11]
MariaDB 10.3 реализует таблицы с системным управлением версиями.[12]
PostgreSQL требует установки Temporal_tables расширение. Temporal Tables Extension поддерживает только темпоральные таблицы с системным периодом.
Ebean ORM поддерживает Историю КАК и ВЕРСИИ МЕЖДУ запросами в Postgres и MySql, используя триггеры, таблицы истории и представления.
Смотрите также
Рекомендации
- ^ Полли (16 декабря 2011 г.), «Опубликован SQL: 2011», Я, Sybase, заархивировано из оригинал (блог) 11 июля 2012 г.
- ^ Земке, Фред. "Что нового в SQL: 2011". ACM SIGMOD Record 41.1 (2012): 67-73
- ^ Кулкарни, Кришна и Ян-Эйке Михелс. "Временные особенности в SQL: 2011". ACM SIGMOD Record 41.3 (2012): 34-43
- ^ https://help.sap.com/viewer/4fe29514fd584807ac9f2a04f6754767/2.0.03/en-US/20d329a6751910149d5fdbc4800f92ff.html#loio20d329a6751910149d5fdbc4800_configuration__system__
- ^ https://help.sap.com/viewer/4fe29514fd584807ac9f2a04f6754767/2.0.03/en-US/20fcf24075191014a89e9dc7b8408b26.html
- ^ https://help.sap.com/viewer/4fe29514fd584807ac9f2a04f6754767/2.0.04/en-US/20fcf24075191014a89e9dc7b8408b26.html
- ^ http://www.ibm.com/developerworks/data/library/techarticle/dm-1204whatsnewdb210/index.html
- ^ http://www.ibm.com/developerworks/data/library/techarticle/dm-1204db2temporaldata/
- ^ http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/12c/r1/ilm/temporal/temporal.html
- ^ http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_10002.htm
- ^ https://msdn.microsoft.com/en-us/library/dn935015.aspx
- ^ https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-103/
внешняя ссылка
- «SQL: 2011», Каталог (интернет-магазин), ISO.
- Часть 1: Framework (SQL / Framework) (черновик; PDF), JTC1SC32, 2011-08-06.
- Часть 14: Спецификации, связанные с XML (SQL / XML) (черновик; PDF), JTC1SC32, 2011-08-06.
- Список дополнительных проектов Заключительного комитета в свободном доступе (поиск), Google.
- Технический документ Oracle 11g Total Recall (PDF), Oracle, 01.09.2009.