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