Applies ToAccess för Microsoft 365 Access 2024 Access 2021

Datatypen utökad Datum och tid lagrar information om datum och tid och liknar Datum/tid-datatyp, men den ger ett större datumintervall, en högre fraktionell precision och kompatibilitet med datatypen SQL Server datetime2. När du importerar eller länkar Access-data till SQL Server kan du på ett konsekvent sätt mappa ett Access Datum och tid utökad fält till en SQL Server-datetime2. Mer information finns under datetime2 (Transact-SQL).

Datum/tid utökad intervall

Varning    När du skapar uttryck och använder datum/tid-funktioner baserat på Datum och tid utökad datatyp i Access kan du förlora precisionen i beräkningar eller stöta på andra problem med resultatet. Vi är medvetna om problemet och planerar att förbättra supportuttryck och funktioner i en kommande version. Som en lösning kan du Skapa en direktfråga om du vill använda motsvarande SQL Server-uttryck och datum/tid-funktioner. Mer information finns i Jämförelse av SQL i Access med T-SQL för SQL Server.

I den här artikeln

Jämför datatyperna datum/tid och datum och tid utökad

Använd den utökade datatypen Datum/Tid

Överväganden för bakåtkompatibilitet

Använd den utökade datatypen Datum/Tid som en sträng i VBA

Jämför datatyperna datum/tid och datum och tid utökad

I följande tabeller sammanfattas viktiga skillnader mellan de två datatyperna.

Attribut

Datum/tid

Datum och tid utökad

Minvärde

100-01-01 00:00:00

0001-01-01 00:00:00

Maxvärde

9999-12-31 23:59:59.999

9999-12-31 23:59:59.9999999

Noggrannhet

0.001 sekunder

1 nanosekund

Storlek

Flytande punkt med dubbel precision

Kodad sträng med 42 byte

Överst på sidan

Använd den utökade datatypen Datum/Tid

Följande information beskriver viktiga användningsfaktorer.

Designvy för tabell    Du kan lägga till ett fält i en Access-tabell för att dra nytta av större dataområde och högre precision. Du kan också konvertera ett datum/tid till datum/tid utökad för datum/tid i designvy för tabell. Du kan också använda den här datatypen som ett primärt nyckelfält. Mer information finns på Skapa en tabell och lägg till fält.

Ange till datum och tid   Att ange värden för datum och tid liknar datatypen Datum/tid, förutom att du också kan ange en fraktionell nanosekund. Till exempel:

  • Format: mm/dd/åååå hh:mm:ss.nnnnnnn

  • Exempel: 06/15/1215 09:25:3.234

Om det finns fler än sju fraktionella nanosekunder avrundas de till sju siffror. Välj Öka antalet decimaler Knappbild och Minska antalet decimaler Knappbildför att styra visningen av uppdelade fraktionella nanosekunder, öppna tabellen i menyfliksområdet och välj Fält och i gruppen väljer du Formatering.

Formatering    Både datatyperna Datum/tid och Datum och tid utökad liknar standardsträngar för Allmänt datum, Långt datum, Medellångt datum, Kort datumLång tidMedellång tid och Kort tid och båda har stöd för anpassad formatering. För datatypen Datum/tid utökad stöds även tidsbaserade standardformatering av decimal precision för nanosekunder. Formatering av den datum och tid utökad används som standard för formaten Allmänt datum och Lång tid och följer de alternativ som anges i Windows nationella inställningar. Du kan också kontrollera formateringen av decimaltal genom att använda egenskapen Antal decimaler för att ange antalet siffror till höger om decimaltecknet (1-7).

Länka och importera     Du kan även länka till eller importera från databaser med en motsvarande datatyp, till exempel datetime2-datatypen för SQL Server. SQL Server version 2014 eller senare databaser stöds. Den datatypen Datum och tid utökad Datum/tid kräver användningen av Microsoft ODBC-drivrutin för SQL Server 11 eller senare. Vi rekommenderar att du använder Microsoft ODBC-drivrutin 13,1 för SQL Server. Det går också att använda OLE DB. Mer information finns i Datatypstöd för förbättringar av datum och tid för ODBC och Använd utökade funktioner för datum och tid (OLE DB).

Formulär och rapporter     Du kan lägga till den datatypen Datum och tid utökad i ett formulär eller en rapport. I ett formulär kan du använda datumväljaren och indatamasken för att ange ett datum med det större området, men inte decimalprecisionen för nanosekunder.

Stöd för uttryck   Den datatypen Datum och tid utökad har stöd för SQL-mängdfunktioner och uttrycksutvärdering. Om du till exempel använder LoggedDateTime som ett fält med den datatypen Datum och tid utökad:

Uppgift

Exempel

Resultat

Hitta det minsta värdet

Min(LoggedDateTime)

Tidigaste datum och tid inom intervallet

Extrahera månaden

Månad(LoggedDateTime)

Månadsnamnet, t. ex. januari

Lägg till en dag

[LoggedDateTime]+1

Tisdag blir onsdag

Överst på sidan

Överväganden för bakåtkompatibilitet

Den datatypen Datum och tid utökad är inte kompatibel med tidigare versioner av Microsoft Access. Om typen används i en lokal Access-tabell kommer versioner av Access som inte innehåller funktionen inte att kunna öppna databasen.

Du kan aktivera eller inaktivera den utökade datatypen Datum/tid för länknings- och importåtgärder med alternativet Aktuell databasåtkomstSupportdatum/tid utökad datatyp för länkade/lmporterade tabeller. Mer information finns i artikeln för att ange användaralternativ för den aktuella databasen.

Överst på sidan

Använd den utökade datatypen Datum/Tid som en sträng i VBA

I följande VBA-exempel används DAO-metoder för att visa, ange och utvärdera den utökade datatypen Datum/Tid baserat på tabellen nedan.

ID

DTEData

DTData

1

1/1/2 1:01:03.1234567 AM

1/1/2001

Tabellnamn    DTETableID datatyp:    RäknareDTEData datatyp:    Datum och tid utökad datatypDTData datatyp:    Datum/tid

Exempel: Visa datum och tid

I följande exempel visas datum och tid. Formatet som används är åååå-mm-dd tt: mm: SS. nnnnnnn i 24-timmarsformat. Formatet är inte anpassningsbart.

Dim db As Database
Dim rs As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("DTETable")
Do Until rs.EOF
    Debug.Print rs!DTETable
    rs.MoveNext
Loop

Resultat    Access visar: 01/01/0002 01:01:03.1234567.

Exempel: Ange till datum och tid

Följande exempel anger datum och tid i ett strängformat. Alla standard datum-och tidsformat stöds.

Dim db As Database
Dim rs As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("DTETable")
With CurrentDb.OpenRecordset("DTETable")
    .AddNew
    ![DTEData] = "1/1/9999 1:1:1.0123 AM"
    ![DTData] = #1/1/2001#
    .Update
End With

Resultat    Access lägger till en ny rad (ID = 2):

ID

DTEData

DTData

1

1/1/2 1:01:03.1234567 AM

1/1/2001

2

1/1/9999 1:01:01.0123000 AM

1/1/2001

Exempel: Utvärdera ett frågeuttryck

I följande exempel används funktionen Dag för att extrahera dagnumret från fälten datum och tid.

Dim db As Database
Dim rs As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("SELECT Day(DTEData) as day FROM DTETable")
Do Until rs.EOF
    Debug.Print "The day of the month is: "&rs!day
    rs.MoveNext
Loop

Resultat    Access visar:

Månadens dag är: 1 Månadens dag är: 1

Överst på sidan

Se även

Introduktion till datatyper och fältegenskaper

Formatera ett fält av typen Datum och tid

Skapa eller ta bort ett fält av typen Datum och tid

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.