Laajennettu päivämäärä ja kellonaika -tietotyyppi tallentaa tietoa päivämäärästä ja kellonajasta ja toimii kuten Päivämäärä ja kellonaika -tietotyyppi, mutta tarjoaa laajemman aikavälin, paremman murto-osien tarkkuuden ja yhteensopivuuden SQL Serverin datetime2-päivämäärätietotyypin kanssa. Kun tuot tai linkität Access-tietoja SQL Serveriin, voit yhdistää Accessin Laajennettu päivämäärä ja kellonaika -kentän yhdenmukaisesti SQL Serverin datetime2-sarakkeeseen. Saat lisätietoja artikkelista datetime2 (Transact-SQL).
Varoitus Kun luot lausekkeita ja käytät päivämäärä- ja kellonaikafunktioita Accessissa Laajennettu päivämäärä ja kellonaika -tietotyyppiin perustuen, laskelmat eivät välttämättä ole tarkkoja tai saatat kohdata muita tuloksiin liittyviä ongelmia. Microsoft on tietoinen ongelmasta, ja lausekkeille ja funktioille on suunnitteilla parempi tuki tulevassa julkaisussa. Vaihtoehtoisena menetelmänä voit luoda läpivientikyselyn käyttääksesi SQL Serverin vastaavia lausekkeita ja päivämäärään tai aikaan liittyviä funktioita. Saat lisätietoja artikkelista Access SQL -palvelimen vertaaminen SQL Server TSQL -palvelimeen.
Tämän artikkelin sisältö
Päivämäärä ja kellonaika- ja Laajennettu päivämäärä ja kellonaika -tietotyyppien vertailu
Seuraavissa taulukoissa on yhteenveto tärkeimmistä näiden tietotyyppien välisistä eroista.
Määrite |
Päivämäärä/kellonaika |
Laajennettu päivämäärä ja kellonaika |
---|---|---|
Pienin arvo |
1.1.100 00.00.00 |
1.1.0001 00.00.00 |
Suurin arvo |
31.12.9999 23.59.59,999 |
31.12.9999 23.59.59,9999999 |
Tarkkuus |
0,001 sekuntia |
1 nanosekunti |
Koko |
Kaksoistarkkuuksinen liukuluku |
42 tavun koodattu merkkijono |
Laajennettu päivämäärä ja kellonaika -tietotyypin käyttäminen
Seuraavissa tiedoissa kuvataan tärkeitä asioita, joita tulee ottaa huomioon käytössä.
Taulukon rakennenäkymä Voit hyödyntää laajempaa tietoaluetta ja parempaa tarkkuutta lisäämällä kentän Access-taulukkoon. Voit myös muuntaa Päivämäärä ja kellonaika -tietotyypin Laajennettu päivämäärä ja kellonaika -tietotyypiksi taulukon rakennenäkymässä. Myös tämän tietotyypin käyttämistä perusavainkenttänä tuetaan. Saat lisätietoja artikkelista Taulukon luominen ja kenttien lisääminen.
Päivämäärän ja kellonajan lisääminen Päivämäärä ja kellonaika lisätään kuten Päivämäärä ja kellonaika -tietotyypissä, paitsi että voit myös lisätä nanosekunnin desimaaliarvon. Esimerkki:
-
Merkinnän muoto: pp.kk.vvvv hh.mm.ss,nnnnnnn
-
Esimerkki: 15.6.1215 9.25.3,234
Jos nanosekunnin desimaaliarvoja on yli seitsemän, ne pyöristetään seitsemään numeroon. Voit hallita nanosekunnin desimaaliarvojen näyttämistä avaamalla taulukon, valitsemalla valintanauhassa Kentät ja valitsemalla Muotoilu-ryhmässä Lisää desimaaleja tai Vähennä desimaaleja .
Muotoilu Sekä Päivämäärä ja kellonaika- että Laajennettu päivämäärä ja kellonaika -tietotyypit käyttävät samanlaista perusmuotoilua merkkijonoissa Yleinen päivämäärä, Pitkä päivämäärä, Keskipituinen päivämäärä, Lyhyt päivämäärä, Pitkä kellonaika, Keskipituinen kellonaika ja Lyhyt kellonaika. Lisäksi molemmat tukevat mukautettua muotoilua. Laajennettu päivämäärä ja kellonaika -tietotyypin aikaan perustuvat vakiomuodot tukevat myös nanosekunnin desimaalitarkkuutta. Laajennettu päivämäärä ja kellonaika -tietotyypin muotoilun oletusarvoina käytetään Yleinen päivämäärä- ja Pitkä aika-muotoja, ja siinä seurataan Windowsin aluekohtaisissa asetuksissa määritettyjä asetuksia. Voit myös hallita murtolukujen tarkkuuden muotoilua Desimaalit-ominaisuuden avulla, jos haluat määrittää desimaalipilkun oikealle puolelle kirjoitettavien numeroiden määrän (1–7).
Linkitä ja tuo Voit myös linkittää tietokantaan tai tuoda tietokannoista, joissa on vastaava tietotyyppi, kuten SQL Server datetime2 -tietotyyppi. SQL Serverin versiota 2014 ja uudempia tietokantoja tuetaan. Laajennettu päivämäärä ja kellonaika -tietotyyppi edellyttää, että käytetään Microsoft ODBC Driver -ohjainta 11 SQL Serverille tai uudempaa versiota. On suositeltavaa käyttää Microsoft ODBC Driver -ohjainta 13.1 SQL Serverille. Myös OLE DB:n käyttöä tuetaan. Saat lisätietoja artikkeleista ODBC:n päivämäärä- ja kellonaikaparannusten tukemat tietotyypit ja Parannettujen päivämäärä- ja kellonaikaominaisuuksien käyttäminen (OLE DB).
Lomakkeet ja raportit Voit lisätä Laajennettu päivämäärä ja kellonaika -tietotyypin lomakkeeseen tai raporttiin. Lomakkeessa voit käyttää päivämäärän valitsinta ja syöttörajoitetta laajemmalla alueella olevan päivämäärän kirjoittamiseksi, mutta et nanosekunnin desimaalitarkkuutta.
Lausekkeiden tuki Laajennettu päivämäärä ja kellonaika -tietotyyppi tulee SQL-koostefunktioita ja lausekkeiden arviointia. Esimerkiksi LoggedDateTime-kentän käyttäminen Laajennettu päivämäärä ja kellonaika -tietotyypissä:
Tehtävä |
Esimerkki |
Tulos |
---|---|---|
Etsi vähimmäisarvo |
Min(LoggedDateTime) |
Alueen aikaisin päivämäärä ja kellonaika |
Poimi kuukausi |
Kuukausi(LoggedDateTime) |
Kuukauden nimi, kuten tammikuu |
Lisää yksi päivä |
[LoggedDateTime]+1 |
Tiistaista tulee keskiviikko |
Yhteensopivuus aiempien versioiden kanssa
Laajennettu päivämäärä ja kellonaika -tietotyyppi ei ole yhteensopiva Microsoft Accessin aiempien versioiden kanssa. Jos tyyppiä käytetään paikallisessa Access-taulukossa, access-versiot, jotka eivät sisällä ominaisuutta, eivät voi avata tietokantaa.
Voit ottaa laajennetun päivämäärän ja ajan laajennetun tietotyypin käyttöön tai poistaa sen käytöstä linkitys- ja tuontitoimintoja varten Nykyinen tietokantakäyttö - vaihtoehdolla, joka tukee linkitettyjen/lmportoitujen taulukoiden laajennettua päivämäärä-/aika-tietotyyppiä. Lisätietoja on artikkelissa Nykyisen tietokannan käyttäjäasetusten määrittäminen.
Laajennettu päivämäärä ja kellonaika -tietotyypin käyttäminen merkkijonona VBA:ssa
Seuraavissa esimerkeissä käytetään DAO-menetelmiä Laajennettu päivämäärä ja kellonaika -tietotyypin näyttämiseen, lisäämiseen ja arviointiin alla olevan taulukon perusteella.
ID |
DTEData |
DTData |
1 |
1.1.2 1.01.03,1234567 |
1.1.2001 |
Taulukon nimi: DTETable
ID-tietotyyppi: Laskuri DTEData-tietotyyppi: Laajennettu päivämäärä ja kellonaika DTData-tietotyyppi: Päivämäärä/kellonaikaEsimerkki: Päivämäärän ja kellonajan näyttäminen
Seuraava esimerkki näyttää päivämäärän ja kellonajan. Käytetty muoto on mm/dd/yyyy hh:mm:ss.nnnnnnn 24 tunnin kellon mukaan. Muotoa ei voi mukauttaa.
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
Tulos Access näyttää: 01/01/0002 01:01:03.1234567.
Esimerkki: Päivämäärän ja kellonajan lisääminen
Seuraavassa esimerkissä lisätään päivämäärä ja kellonaika merkkijonomuodossa. Kaikkia tavallisia päivämäärän ja ajan muotoja tuetaan.
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
Tulos Access lisää uuden rivin (ID = 2):
ID |
DTEData |
DTData |
1 |
1.1.2 1.01.03,1234567 |
1.1.2001 |
2 |
1.1.9999 1.01.01,0123000 |
1.1.2001 |
Esimerkki: Kyselylausekkeen arviointi
Seuraavassa esimerkissä päivän numero poimitaan päivämäärä- ja kellonaikakentistä Day-funktion avulla.
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
Tulos Access näyttää:
Kuukauden päivä on: 1
Kuukauden päivä on: 1Katso myös
Tietotyyppien ja kentän ominaisuuksien johdanto