#803

Κάνε το updated_at να ανανεώνεται μόνο του

Οι backend προγραμματιστές ξεχνούν τακτικά να ορίσουν χειροκίνητα updated_at = NOW() μετά από ένα UPDATE, και το πεδίο «σαπίζει» — κανείς δεν ξέρει πότε άλλαξε μια γραμμή για τελευταία φορά. Η λύση είναι ένας trigger στον πίνακα που ορίζει μόνος του την τρέχουσα ώρα πριν από κάθε ενημέρωση. Φτιάξτε έναν πίνακα notes με id (πρωτεύον κλειδί), body (κείμενο) και updated_at (timestamp με ζώνη ώρας, με προεπιλογή την τρέχουσα ώρα). Ορίστε μια συνάρτηση touch_updated_at που επιστρέφει μια γραμμή με ανανεωμένο updated_at, και έναν trigger με όνομα notes_touch που ενεργοποιείται πριν από κάθε ενημέρωση γραμμής στον notes και καλεί αυτή τη συνάρτηση. Μετά τη ρύθμιση, κάθε UPDATE στον notes πρέπει να ανανεώνει αυτόματα το updated_at στην τρέχουσα ώρα.

Δείγμα αναμενόμενης εξόδου

Έτσι μοιάζει μια σωστή απάντηση — το πλήθος γραμμών της είναι δικό της, δεν χρειάζεται να ταιριάζει με τους πίνακες του σχήματος.

tgname
notes_touch

Το αποτέλεσμα του ερωτήματός σας θα εμφανιστεί εδώ

Χωρίς αρχικό σχήμα

Αυτή η άσκηση ξεκινά χωρίς πίνακες — θα τους δημιουργήσετε μέσω CREATE TABLE.