SQL:2011, offisielt ISO/IEC 9075:2016 Information technology – Database languages – SQL, er den syvende revisjonen av ISO-standarden for database-spørrespråket SQL. Den ble formelt vedtatt i 2011 desember. Standarden består av 9 deler som beskriver SQL i detalj. SQL:2011 har blitt erstattet av SQL:2016.

Nye funksjoner En av de viktigste nye funksjonene er forbedret støtte for temporale databaser.Zemke, Fred. "What's new in SQL:2011 ". ACM SIGMOD Record 41.1 (2012): 67-73Kulkarni, Krishna, and Jan-Eike Michels. "Temporal features in SQL: 2011 ". ACM SIGMOD Record 41.3 (2012): 34-43 Forbedringer i språket for definisjon og manipulering av temporale data (tidsdata eller tidsmessige data) inkluderer:

Tidsperiodedefinisjoner bruker to standard tabellkolonner som starter og slutter på en navngitt tidsperiode, med lukket-åpen-semantikk. Dette gir kompatibilitet med eksisterende datamodeller, applikasjonskode og verktøy. Definisjon av applikasjons-tidsperiodetabeller (andre steder kalt gyldigtid-tabeller), ved hjelp av -notasjon Oppdatering og sletting av applikasjons-tidsrader med automatisk tidsperiodesplitt Temporale primærnøkler som inkluderer applikasjonstidsperioder med valgfrie ikke-overlappende betingelser via -klausulen Temporal referanseintegritet som betingelser for applikasjonstidstabeller Applikasjonstidstabeller spørres ved hjelp av vanlig spørresyntaks eller ved å bruke nye temporale predikater for tidsperioder inkludert , , , , , og (som er modifiserte versjoner av Allens intervallalgebra) Definisjon av systemversjonerte tabeller (andre steder kalt transaksjonstid-tabeller), ved hjelp av -notasjon og -modifikatoren. Systemets tidsperioder vedlikeholdes automatisk. Det kreves ikke at betingelser for systemversjonerte tabeller er temporale, og håndheves bare på gjeldende rader. Syntaks for oppdeling i tidsskiver (time slicing) og sekvensierte (sequenced) spørringer på systemets tidstabeller via og -klausuler Applikasjonstid og systemversjonering kan brukes sammen for å gi bitemporale tabeller

Støtte i databasehåndteringssystemer SAP HANA 2.0 SP03 støtter systemversjonerte tabeller ved å bruke standard select-syntaks SAP HANA 2.0 SP04 legger til (delvis) støtte for versjonering av applikasjonstid

IBM DB2 versjon 10 hevder å være den første databasen som har en samsvarende implementering av denne funksjonen i det de kaller "Time Travel Queries", selv om de bruker den alternative syntaksen .

Oracle Oracle 12c støtter temporal funksjonalitet i samsvar med SQL:2011. Versjon 10g og 11g implementerer spørringer på tidsskiver i det de kaller Flashback Queries, ved hjelp av den alternative syntaksen . Begge Oracles implementeringer avhenger av databasens transaksjonslogg, og tillater derfor bare temporale spørringer mot de siste endringene som fortsatt blir beholdt på sikkerhetskopi.

Microsoft SQL Server (versjon 2016) implementerer temporale tabeller med .

MariaDB 10.3 implementerer systemversjonerte tabeller. MariaDB 10.4.3 la til støtte for applikasjonsversjonerte tabeller.

PostgreSQL krever installasjon av temporal_tables extension. Den støtter bare temporal tabeller basert på system-tidsperiode, men følger ikke SQL:2011-designet.

Ebean ORM støtter spørringer med HISTORY AS OF og VERSIONS BETWEEN mot PostgreSQL og MySQL ved bruk av utløsere, historikktabeller og visninger.

CockroachDB har støttet spørsmål siden minst v1. 0. 7. Se også Endringstreg dimensjon Temporal database

Referanser

Kategori:SQL