Θέμα: SQL Transaction

Εμφάνιση ενός μόνο μηνύματος
  #5  
Παλιά 08-06-16, 11:09
kapetang Ο χρήστης kapetang δεν είναι συνδεδεμένος
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλημέρα στην παρέα

Χρήστο, ίσως βοηθήσουν τα παρακάτω:

1) Ανεξάρτητα από την εμφάνιση, η ημερομηνία μαζί με την ώρα αποθηκεύονται ως αριθμός.

Ο αριθμός αυτός εκφράζει τον αριθμό των ημερών και το τμήμα ημέρας που πέρασε από μία χρονική στιγμή που θεωρείται αφετηρία (1/1/1900 00:00:00) μέτρησης του χρόνου.

Για παράδειγμα ο αριθμός 42522,9659259259 δείχνει ότι πέρασαν από την αφετηρία 42522 ημέρες και 0,9659259259 ημέρας.

Το δεκαδικό μέρος με κατάλληλες μετατροπές (πολλαπλασιασμό με 24 κλπ) μπορεί να εκφραστεί σε ώρες λεπτά και δευτερόλεπτα.

Αν στο άμεσο παράθυρο εκτέλεσης πληκτρολογήσουμε: ?Cdate(42522.9659259259), θα πάρουμε την ημερομηνία και ώρα στην οποία αντιστοιχεί: 1/6/2016 11:10:56 μμ

2) Συνέπεια των παραπάνω:

Δε χρειαζόταν να έχεις δύο πεδία, ένα για την αποθήκευση της ημερομηνίας (πχ dt ακέραιο μέρος) και ένα (πχ tm δεκαδικό μέρος).

Για την περίπτωσή σου δοκίμασε τα κριτήρια:

Για την access: dt+tm Between #6/6/2016 22:15:00# And #7/6/2016 06:15:00#

Για τον SQL Server: dt+tm Between CAST(‘20160606 22:15:00’ as datetime) And CAST(‘20160607 06:15:00’).

Φιλικά/Γιώργος

Τελευταία επεξεργασία από το χρήστη kapetang : 08-06-16 στις 15:43. Αιτία: αντί And CAST(‘20160706 06:15:00’), And CAST(‘20160607 06:15:00’).
Απάντηση με παράθεση