Giltig tid
I temporala databaser är giltig tid (VT) den tidsperiod under vilken ett databasfakta är giltigt i den modellerade verkligheten . Från och med december 2011, ISO/IEC 9075, Databas Language SQL:2011 Del 2: SQL/Foundation inkluderade satser i tabelldefinitioner för att definiera "applikationstidsperiodtabeller" (det vill säga giltiga tidstabeller). Giltig tid myntades av Richard T. Snodgrass och hans doktorand.
I en databastabell representeras giltig tid ofta av två extra tabellkolumner StartVT och EndVT . Tidsintervallet är stängt vid sin nedre gräns och öppet vid sin övre gräns .
Exempel :
Datum | Vad hände i den verkliga världen | Databasåtgärd | Vad databasen visar |
---|---|---|---|
3 april 1975 | John är född | Ingenting | Det finns ingen som heter John Doe |
4 april 1975 | Johns far rapporterar officiellt om Johns födelse | Infogat:Person (John Doe, Smallville) | John Doe bor i Smallville |
26 augusti 1994 | Efter examen flyttar John till Bigtown, men glömmer att registrera sin nya adress | Ingenting | John Doe bor i Smallville |
26 december 1994 | Ingenting | Ingenting | John Doe bor i Smallville |
27 december 1994 | John registrerar sin nya adress | Uppdaterad:Person (John Doe, Bigtown) | John Doe bor i Bigtown |
1 april 2001 | John dör | Raderad:Person (John Doe) | Det finns ingen som heter John Doe |
Giltig tid är den tid för vilken ett faktum är sant i den verkliga världen. I exemplet ovan får tabellen Person två extra fält, Giltig-Från och Giltig-Till, som anger när en persons adress var giltig i den verkliga världen. Den 4 april 1975 registrerade Johns far stolt sin sons födelse. En tjänsteman kommer sedan att infoga en ny post i databasen som säger att John bor i Smallville från den 3 april. Observera att även om uppgifterna infogades den 4:e, anger databasen att informationen är giltig sedan den 3:e. Tjänstemannen vet ännu inte om eller när John någonsin kommer att flytta till en bättre plats så i databasen är Valid-To fylld med oändlighet (∞). Resulterar i denna post i databasen:
Person (John Doe, Smallville, 3-apr-1975, ∞). |
27 december 1994 John rapporterar sin nya adress i Bigtown där han har bott sedan den 26 augusti 1994. Bigtown-tjänstemannen ändrar inte adressen till den aktuella posten av John Doe i databasen. Han lägger till en ny:
Person (John Doe, Big Town, 26 augusti 1994, ∞). |
Den ursprungliga posten Person (John Doe, Smallville, 3-apr-1975, ∞) uppdateras sedan (inte borttagen!). Eftersom det nu är känt att John slutade bo i Smallville den 26 augusti 1994 kan Valid-To-posten fyllas i. Databasen innehåller nu två poster för John Doe
Person (John Doe, Smallville, 3-apr-1975, 26-aug-1994). |
Person (John Doe, Bigtown, 26 augusti 1994, ∞). |
När John dör uppdateras databasen igen. Den aktuella posten kommer att uppdateras om att John inte bor i Bigtown längre. Ingen ny post läggs till eftersom tjänstemän aldrig rapporterar himlen som en ny adress. Databasen ser nu ut så här
Person (John Doe, Smallville, 3-apr-1975, 26-aug-1994). |
Person (John Doe, Bigtown, 26 augusti 1994, 1 april 2001). |
Se även
- Transaktionstid
- Beslutstid
- Sakta förändras dimension