Andmetüüp Kuupäev/kellaaeg. Laiendatud andmetüüp talletab kuupäeva- ja kellaajateavet ning sarnaneb andmetüübiga Kuupäev/kellaaeg, kuid pakub suuremat kuupäevavahemikku, suuremat murdtäpsust ja ühilduvust SQL Server datetime2 kuupäevatüübiga. Accessi andmete importimisel või linkimisel SQL Server saate accessi kuupäeva/kellaaja laiendatud välja järjepidevalt vastenduda SQL Server kuupäeva ja kellaaja2 veeruga. Lisateavet leiate teemast datetime2 (Transact-SQL).
Hoiatus! Kui loote Avaldisi ja kasutate Accessis andmetüübi Kuupäeva/kellaaeg laiendatud andmetüübil põhinevaid kuupäeva-/kellaajafunktsioone, võite arvutustes kaotada täpsuse või kogeda muid tulemitega seotud probleeme. Oleme sellest probleemist teadlikud ja plaanime eelseisvas väljaandes avaldisi ja funktsioone paremini toetada. Ajutise lahendusena saate Create läbiva päringu, et kasutada samaväärseid SQL Server avaldise- ja kuupäeva-/kellaajafunktsioone. Lisateavet leiate teemast Accessi SQL-i võrdlemine SQL Server TSQL-iga.
Selle artikli teemad
Kuupäeva/kellaaja ja kuupäeva/kellaaja laiendatud andmetüüpide võrdlus |
Kuupäeva/kellaaja ja kuupäeva/kellaaja laiendatud andmetüüpide võrdlus
Järgmistes tabelites on kokku võetud olulised erinevused kahe andmetüübi vahel.
Atribuut |
Kuupäev/kellaaeg |
Pikendatud kuupäev/kellaaeg |
---|---|---|
Miinimumväärtus |
100-01-01 00:00:00 |
0001-01-01 00:00:00 |
Maksimumväärtus |
9999-12-31 23:59:59.999 |
9999-12-31 23:59:59.9999999 |
Täpsus |
0,001 sekundit |
1 nanosekundites |
Size |
Topelttäpsusega ujukoma |
Kodeeritud string 42 baiti |
Laiendatud andmetüübi Kuupäev/kellaaeg kasutamine
Järgmine teave kirjeldab olulisi kasutuskaalutlusi.
Tabeli kujundusvaade Suurema andmevahemiku ja suurema täpsuse kasutamiseks saate accessi tabelisse lisada välja. Kuupäeva/kellaaja saate teisendada ka laiendatud andmetüübiks Kuupäev/kellaaeg tabeli kujundusvaates. Samuti toetatakse seda andmetüüpi primaarvõtme väljana. Lisateavet leiate teemast Tabeli Create ja väljade lisamine.
Kuupäeva ja kellaaja sisestamine Kuupäeva- ja kellaajaväärtuste sisestamine sarnaneb andmetüübiga Kuupäev/kellaaeg, välja arvatud see, et saate sisestada ka murdosa nanosekundite. Siin on mõned näited.
-
Kirje vorming: kk/pp/aaaa hh:mm:ss.nnnnnnn
-
Näide: 06/15/1215 09:25:3.234
Kui nanosekundeid on rohkem kui 7, ümardatakse need seitsme kohani. Murdarvuliste nanosekundite kuvamise juhtimiseks avage tabel, valige lindil Väljad ja jaotises Vorming nupp Suurenda kümnendkohti või Vähenda kümnendkohti .
Vorming Nii andmetüübid Kuupäev/kellaaeg kui ka Kuupäeva/kellaaja laiendatud andmetüübid kasutavad sarnaseid standardvormingustringe üldkuupäev, Pikk kuupäev, Keskmine kuupäev, Lühike kuupäev, Pikk kellaaeg, Keskmine kellaaeg ja Lühike kellaaeg ning mõlemad toetavad kohandatud vormingut. Andmetüübi "Kuupäev/kellaaeg" "Pikendatud" korral toetavad kellaajapõhised standardvormingud ka nanosekundite murdtäpsust. Andmetüübi "Kuupäev/kellaaeg" "Pikendatud" vaikeväärtusteks on "Üldkuupäev" ja "Pikk kellaaeg ", mis järgib Windowsi piirkonnasätetes määratud suvandeid. Murdarvu täpsuse vormingu määramiseks saate kasutada ka atribuuti Decimal Places, et määrata kümnendkohast paremal olevate kohtade arv (1–7).
Linkimine ja importimine Samuti saate linkida vastava andmetüübiga andmebaasidega (nt andmetüübiga SQL Server datetime2) või sealt importida. SQL Server versiooni 2014 või uuemad andmebaasid on toetatud. Andmetüübi "Kuupäev/kellaaeg" pikendamiseks on vaja Kasutada Microsoft ODBC draiverit SQL Server 11 või uuemate versioonide jaoks. Soovitame SQL Server jaoks kasutada Microsoft ODBC Driver 13.1. Samuti toetatakse OLE DB kasutamist. Lisateavet leiate teemast Andmetüübitugi ODBC kuupäeva- ja kellaajatäiustuste jaoks ning Täiustatud kuupäeva- ja kellaajafunktsioonide (OLE DB) kasutamine.
Forms ja aruanded Vormile või aruandele saate lisada andmetüübi Kuupäeva/kellaaja laiendatud. Vormil saate kuupäevavalija ja sisestusmaski abil sisestada suurema vahemikuga kuupäeva, kuid mitte nanosekundite murdtäpsuse.
Avaldise tugi Kuupäeva/kellaaja laiendatud andmetüüp toetab SQL-kokkuvõttefunktsioone ja avaldise hindamist. Näiteks kui kasutate välja LogiggedDateTime väljana, mille andmetüüp on Pikendatud kuupäev/kellaaeg:
Toiming |
Näide |
Tulem |
---|---|---|
Miinimumväärtuse leidmine |
Min(LoggedDateTime) |
Vahemikus olev varaseim kuupäev ja kellaaeg |
Kuu ekstraktimine |
Month(LoggedDateTime) |
Kuu nimi (nt jaanuar) |
Ühe päeva lisamine |
[LoggedDateTime]+1 |
Teisipäev muutub kolmapäevaks |
Tagasühilduvuse kaalutlused
Pikendatud kuupäeva/kellaaja andmetüüp ei ühildu Microsoft Accessi varasemate versioonidega. Kui seda tüüpi kasutatakse kohalikus Accessi tabelis, ei saa Accessi versioonid, mis seda funktsiooni ei sisalda, andmebaasi avada.
Saate lubada või keelata lingimis- ja importimistoimingute jaoks andmetüübi Kuupäev/kellaaeg, kui kasutate linkimis- ja importimistoiminguid praeguse andmebaasi accessi suvandiga Lingitud/lmportitud tabelite toe kuupäeva/kellaaja laiendatud andmetüüp. Lisateavet leiate teemast Praeguse andmebaasi kasutajasuvandite seadmine.
Andmetüübi "Kuupäev/kellaaeg" kasutamine VBA-s stringina
Järgmised VBA näited kasutavad DAO-meetodeid, et kuvada, sisestada ja hinnata andmetüüpi Pikendatud kuupäev/kellaaeg alloleva tabeli põhjal.
ID |
DTEData |
DTData |
1 |
1.01.2011:03.1234567 EL |
01.01.2001 |
Tabeli nimi: DTETable
ID andmetüüp: andmetüüp Automaatnumber DTEData: andmetüüp Kuupäev/kellaaeg Laiendatud DTData: kuupäev /kellaaegNäide: kuupäeva ja kellaaja kuvamine
Järgmises näites on kuvatud kuupäev ja kellaaeg. Kasutatav vorming on kk/pp/aaaa hh:mm:ss.nnnnnnn 24-tunnise kellaga. Vormingut ei saa kohandada.
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
Tulem Access kuvab: 01.01.0002 01:01:03.1234567.
Näide: kuupäeva ja kellaaja sisestamine
Järgmises näites sisestatakse kuupäev ja kellaaeg stringivormingu abil. Kõik standardsed kuupäeva- ja kellaajavormingud on toetatud.
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
Tulem Access lisab uue rea (ID = 2):
ID |
DTEData |
DTData |
1 |
1.01.2011:03.1234567 EL |
01.01.2001 |
2 |
1.01.9999 1:01:01.0123000 EL |
01.01.2001 |
Näide: päringuavaldise hindamine
Järgmises näites kasutatakse funktsiooni Day kuupäeva- ja kellaajaväljadelt päevanumbri ekstraktimiseks.
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
Tulem Access kuvab:
Kuu päev on: 1
Kuu päev on: 1Vt ka
Andmetüüpide ja väljaatribuutide tutvustus