Applies ToAccess για Microsoft 365 Access 2024 Access 2021

Ο τύπος δεδομένων "εκτεταμένη ημερομηνία/ώρα" αποθηκεύει πληροφορίες ημερομηνίας και ώρας και είναι παρόμοιος με τον τύπο δεδομένων "ημερομηνία/ώρα", αλλά παρέχει ένα μεγαλύτερο εύρος ημερομηνιών, μεγαλύτερη κλασματική ακρίβεια και συμβατότητα με τον τύπο ημερομηνίας datetime2 του SQL Server. Κατά την εισαγωγή ή σύνδεση δεδομένων της Access στον SQL Server, μπορείτε να αντιστοιχίσετε με συνέπεια ένα πεδίο εκτεταμένης ημερομηνίας/ώρας της Access σε μια στήλη datetime2 του SQL Server. Για περισσότερες πληροφορίες, ανατρέξτε στο datetime2 (Transact-SQL).

Εύρος εκτεταμένης ημερομηνίας και ώρας

Προειδοποίηση    Κατά τη δημιουργία παραστάσεων και τη χρήση συναρτήσεων ημερομηνίας/ώρας με βάση τον εκτεταμένο τύπο δεδομένων "ημερομηνία/ώρα" στην Access, ενδέχεται να χάσετε την ακρίβεια των υπολογισμών ή να αντιμετωπίσετε άλλα προβλήματα με τα αποτελέσματα. Γνωρίζουμε αυτό το πρόβλημα και σχεδιάζουμε να υποστηρίξουμε καλύτερα τις παραστάσεις και τις συναρτήσεις σε μια επερχόμενη έκδοση. Ως λύση, μπορείτε να δημιουργήσετε ένα ερώτημα διαβίβασης για να χρησιμοποιήσετε την ισοδύναμη παράσταση SQL Server και συναρτήσεις ημερομηνίας/ώρας. Για περισσότερες πληροφορίες, ανατρέξτε στη Σύγκριση της Access SQL με την SQL Server TSQL.

Σε αυτό το άρθρο

Σύγκριση ημερομηνίας/ώρας και πρόσθετων τύπων δεδομένων ημερομηνίας/ώρας

Χρήση του τύπου δεδομένων εκτεταμένης ημερομηνίας και ώρας

Ζητήματα συμβατότητας με προηγούμενες εκδόσεις

Χρήση του τύπου δεδομένων εκτεταμένης ημερομηνίας και ώρας ως συμβολοσειράς στο VBA.

Σύγκριση ημερομηνίας/ώρας και πρόσθετων τύπων δεδομένων ημερομηνίας/ώρας

Οι παρακάτω πίνακες συνοψίζουν σημαντικές διαφορές μεταξύ των δύο τύπων δεδομένων.

Χαρακτηριστικό

Hμερομηνία/Ώρα

Εκτεταμένη ημερομηνία/ώρα

Ελάχιστη τιμή

100-01-01 00:00:00

0001-01-01 00:00:00

Μέγιστη τιμή

9999-12-31 23:59:59.999

9999-12-31 23:59:59.9999999

Ακρίβεια

0,001 δευτερόλεπτα

1 νανοδευτερόλεπτο

Μέγεθος

Αιωρούμενο σημείο διπλής ακρίβειας

Κωδικοποιημένη συμβολοσειρά 42 byte

Αρχή της σελίδας

Χρήση του τύπου δεδομένων εκτεταμένης ημερομηνίας και ώρας

Οι παρακάτω πληροφορίες περιγράφουν σημαντικά ζητήματα χρήσης.

Προβολή σχεδίασης πίνακα    Για να επωφεληθείτε από το μεγαλύτερο εύρος δεδομένων και τη μεγαλύτερη ακρίβεια, μπορείτε να προσθέσετε ένα πεδίο σε έναν πίνακα της Access. Μπορείτε επίσης να μετατρέψετε έναν τύπο δεδομένων "ημερομηνία/ώρα" στον τύπο δεδομένων εκτεταμένης ημερομηνίας/ώρας στην προβολή σχεδίασης πίνακα. Η χρήση αυτού του τύπου δεδομένων ως πεδίου πρωτεύοντος κλειδιού υποστηρίζεται επίσης. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα Δημιουργία πίνακα και προσθήκη πεδίων.

Εισαγωγή της ημερομηνίας και της ώρας   Η εισαγωγή τιμών ημερομηνίας και ώρας είναι παρόμοια με τον τύπο δεδομένων "ημερομηνία/ώρα", εκτός του ότι μπορείτε επίσης να εισαγάγετε ένα κλάσμα νανοδευτερολέπτου. Για παράδειγμα:

  • Μορφή καταχώρησης: ηη/μμ/εεεε ωω:λλ:δδ.ννννννν

  • Παράδειγμα: 15/06/1215 09:25:3.234

Εάν υπάρχουν περισσότερα από 7 κλάσματα νανοδευτερολέπτου, στρογγυλοποιούνται σε 7 ψηφία. Για να ελέγξετε την εμφάνιση των κλασματικών νανοδευτερολέπτων, ανοίξτε τον πίνακα, στην κορδέλα επιλέξτε Πεδία και στην ομάδα Μορφοποίηση, επιλέξτε Αύξηση δεκαδικών ψηφίων Εικόνα κουμπιού ή Μείωση δεκαδικών ψηφίων Εικόνα κουμπιού.

Μορφοποίηση    Και οι δύο τύποι δεδομένων, ημερομηνία/ώρα και εκτεταμένη ημερομηνία/ώρα χρησιμοποιούν παρόμοιες τυπικές συμβολοσειρές μορφοποίησης Γενικής ημερομηνίας, Μεγάλης ημερομηνίας, Μεσαίας ημερομηνίας, Σύντομης ημερομηνίας, Μεγάλης ώρας, Μεσαίας ώρας και Σύντομης ώρας, ενώ και οι δύο υποστηρίζουν προσαρμοσμένη μορφοποίηση. Για τον τύπο δεδομένων εκτεταμένης ημερομηνίας/ώρας, οι τυπικές μορφές που βασίζονται στην ώρα υποστηρίζουν επίσης τη δυνατότητα κλασματικής ακρίβειας για νανοδευτερόλεπτα. Η μορφοποίηση του τύπου δεδομένων εκτεταμένης ημερομηνίας/ώρας επαναφέρει στην προεπιλογή των μορφών Γενική ημερομηνία και Πλήρης ώρα και ακολουθεί τις επιλογές που καθορίζονται στις τοπικές ρυθμίσεις των Windows. Μπορείτε επίσης να ελέγξετε τη μορφοποίηση της κλασματικής ακρίβειας χρησιμοποιώντας την ιδιότητα Δεκαδικές θέσεις για να καθορίσετε τον αριθμό των ψηφίων στα δεξιά της υποδιαστολής (1-7).

Σύνδεση και εισαγωγή     Μπορείτε επίσης να τον συνδέσετε ή να τον εισαγάγετε από βάσεις δεδομένων με έναν αντίστοιχο τύπο δεδομένων, όπως ο τύπος δεδομένων datetime2 του SQL Server. Υποστηρίζονται οι βάσεις δεδομένων SQL Server έκδοση 2014 ή νεότερη έκδοση. Ο τύπος δεδομένων εκτεταμένης ημερομηνίας/ώρας απαιτεί τη χρήση του Microsoft ODBC Driver για SQL Server 11 ή νεότερη έκδοση. Συνιστάται να χρησιμοποιείτε το πρόγραμμα οδήγησης Microsoft ODBC 13.1 για το SQL Server. Υποστηρίζεται επίσης η χρήση της OLE DB. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα Υποστήριξη τύπου δεδομένων για τις βελτιώσεις ημερομηνίας και ώρας ODBC και Χρήση εμπλουτισμένων δυνατοτήτων ημερομηνία και ώρας (OLE DB).

Φόρμες και αναφορές     Μπορείτε να προσθέσετε το διευρυμένο τύπο δεδομένων "ημερομηνία/ώρα" σε μια φόρμα ή αναφορά. Σε μια φόρμα, μπορείτε να χρησιμοποιήσετε την επιλογή ημερομηνίας και τη μάσκα εισαγωγής για να εισαγάγετε μια ημερομηνία με το μεγαλύτερο εύρος, αλλά όχι την κλασματική ακρίβεια για νανοδευτερόλεπτα.

Υποστήριξη παραστάσεων   Ο τύπος δεδομένων εκτεταμένης ημερομηνίας/ώρας υποστηρίζει τις συγκεντρωτικές συναρτήσεις SQL και την αξιολόγηση παραστάσεων. Για παράδειγμα, χρησιμοποιώντας το LoggedDateTime ως πεδίο με τον τύπο δεδομένων εκτεταμένης ημερομηνίας/ώρας:

Εργασία

Παράδειγμα

Αποτέλεσμα

Εύρεση της ελάχιστης τιμής

Min(LoggedDateTime)

Η παλαιότερη ημερομηνία και ώρα εντός του εύρους

Εξαγωγή του μήνα

Month(LoggedDateTime)

Το όνομα του μήνα, όπως Ιανουάριος

Προσθήκη μίας ημέρας

[LoggedDateTime]+1

Η Τρίτη θα γινόταν Τετάρτη

Αρχή της σελίδας

Ζητήματα συμβατότητας με παλαιότερες εκδόσεις

Ο τύπος δεδομένων εκτεταμένης ημερομηνίας/ώρας δεν είναι συμβατός με προηγούμενες εκδόσεις της Microsoft Access. Εάν ο τύπος χρησιμοποιείται μέσα σε έναν τοπικό πίνακα της Access, οι εκδόσεις της Access που δεν περιλαμβάνουν τη δυνατότητα δεν θα μπορούν να ανοίξουν τη βάση δεδομένων.

Μπορείτε να ενεργοποιήσετε ή να απενεργοποιήσετε τον τύπο δεδομένων εκτεταμένης ημερομηνίας/ώρας για εργασίες σύνδεσης και εισαγωγής με την επιλογή "Τρέχουσα πρόσβαση βάσης δεδομένων" υποστήριξη τύπου δεδομένων εκτεταμένης ημερομηνίας/ώρας για συνδεδεμένους/προαναφερθείς πίνακες. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα Ορισμός επιλογών χρήστη για την τρέχουσα βάση δεδομένων.

Αρχή της σελίδας

Χρήση του τύπου δεδομένων εκτεταμένης ημερομηνίας και ώρας ως συμβολοσειράς στο VBA.

Τα παρακάτω παραδείγματα VBA χρησιμοποιούν τις μεθόδους DAO για να εμφανίσουν, να εισαγάγουν και να αξιολογήσουν τον τύπο δεδομένων διευρυμένης ημερομηνίας/ώρας με βάση τον παρακάτω πίνακα.

ID

DTEData

DTData

1

1/1/2 1:01:03.1234567 π.μ.

1/1/2001

Όνομα πίνακα    Τύπος δεδομένων DTETableID: Τύπος δεδομένων    Αυτόματης αρίθμησης: Τύπος δεδομένων    εκτεταμένης ημερομηνίας/ώραςDTData:    Hμερομηνία/Ώρα

Παράδειγμα: Εμφάνιση της ημερομηνίας και της ώρας

Το παράδειγμα που ακολουθεί εμφανίζει την ημερομηνία και την ώρα. Η μορφή που χρησιμοποιείται είναι ηη/μμ/εεεε ωω:λλ:δδ.ννννννν σε ρολόι 24ων ωρών. Η μορφή δεν έχει δυνατότητα προσαρμογής.

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

Αποτέλεσμα    Η Access εμφανίζει: 01/01/0002 01:01:03.1234567.

Παράδειγμα: Εισαγωγή της ημερομηνίας και της ώρας

Το ακόλουθο παράδειγμα εισάγει την ημερομηνία και την ώρα χρησιμοποιώντας μια μορφή συμβολοσειράς. Υποστηρίζονται όλες οι τυπικές μορφές ημερομηνίας και ώρας.

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

Αποτέλεσμα    Η Access προσθέτει μια νέα γραμμή (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

Παράδειγμα: Αξιολόγηση παράστασης ερωτήματος

Το ακόλουθο παράδειγμα χρησιμοποιεί τη Συνάρτηση Day για την εξαγωγή του αριθμού ημέρας από τα πεδία ημερομηνίας και ώρας.

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

Αποτέλεσμα    Η Access εμφανίζει:

Η ημέρα του μήνα είναι: 1 Η ημέρα του μήνα είναι: 1

Αρχή της σελίδας

Δείτε επίσης

Εισαγωγή στους τύπους δεδομένων και στις ιδιότητες πεδίων

Μορφοποίηση πεδίου ημερομηνίας και ώρας

Δημιουργία ή διαγραφή ενός πεδίου ημερομηνίας και ώρας

Χρειάζεστε περισσότερη βοήθεια;

Θέλετε περισσότερες επιλογές;

Εξερευνήστε τα πλεονεκτήματα της συνδρομής, περιηγηθείτε σε εκπαιδευτικά σεμινάρια, μάθετε πώς μπορείτε να προστατεύσετε τη συσκευή σας και πολλά άλλα.

Οι κοινότητες σάς βοηθούν να κάνετε και να απαντάτε σε ερωτήσεις, να δίνετε σχόλια και να ακούτε από ειδικούς με πλούσια γνώση.