Πώς να κάνετε PostgreSQL Auto Increment

Pos Na Kanete Postgresql Auto Increment



Ένας τρόπος για να διασφαλίσετε τις μοναδικές ταυτότητες στη βάση δεδομένων PostgreSQL είναι να χρησιμοποιήσετε τη δυνατότητα αυτόματης αύξησης. Όταν είναι ενεργοποιημένη, αυτή η δυνατότητα δημιουργεί μια μοναδική ταυτότητα για κάθε νέα καταχώριση στον πίνακά σας. Με την αυτόματη αύξηση, εάν προσπαθήσετε να εισαγάγετε μια νέα τιμή με το ίδιο μοναδικό αναγνωριστικό, θα εμφανιστεί σφάλμα. Η αυτόματη αύξηση μπορεί να χρησιμοποιηθεί σε διαφορετικές περιπτώσεις και μπορείτε να ορίσετε πώς θέλετε να δημιουργηθεί το μοναδικό αναγνωριστικό. Περισσότερες λεπτομέρειες σχετικά με την αυτόματη αύξηση PostgreSQL περιγράφονται λεπτομερώς σε αυτήν την ανάρτηση. Συνέχισε να διαβάζεις!

Δύο μέθοδοι για την αυτόματη αύξηση PostgreSQL

Κατά τη δημιουργία μιας βάσης δεδομένων, θα πρέπει να έχετε ένα πρωτεύον κλειδί για κάθε πίνακα για να διασφαλίσετε ότι δεν εμφανίζονται διπλότυπα στους πίνακες. Ένας τρόπος δημιουργίας των πρωτευόντων κλειδιών είναι η χρήση της δυνατότητας αυτόματης αύξησης για τον τύπο δεδομένων INT. Η PostgreSQL δημιουργεί την τιμή του πρωτεύοντος κλειδιού για όλες τις καταχωρήσεις, απαλλάσσοντας τον προγραμματιστή από την ταλαιπωρία της μη αυτόματης πληκτρολόγησης του πρωτεύοντος.

Υπάρχουν δύο προσεγγίσεις που μπορείτε να χρησιμοποιήσετε για να δημιουργήσετε αυτόματη αύξηση στη βάση δεδομένων PostgreSQL.







Μέθοδος 1: Χρήση του SERIAL Pseudo-Type

Ο προεπιλεγμένος τρόπος δημιουργίας αυτόματης αύξησης για πρωτεύοντα κλειδιά στη βάση δεδομένων σας είναι η χρήση της λέξης-κλειδιού SERIEL. Όταν χρησιμοποιείται, ο ψευδοτύπος SERIAL δημιουργεί μια ακολουθία για τη δημιουργία των τιμών. Σημειώνει την επόμενη τιμή στην ακολουθία και κάθε φορά που εισάγετε μια νέα τιμή, της εκχωρείται μια μοναδική ταυτότητα.



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



Ακολουθεί η σύνταξη για τη δημιουργία μιας αυτόματης αύξησης:





ΔΗΜΙΟΥΡΓΩ ΤΡΑΠΕΖΙ TABLE_NAME ( id SERIAL data_type ) ;

Για την περίπτωσή μας, ας δημιουργήσουμε έναν πίνακα με το όνομα 'λεπτομέρειες' που περιέχει το 'user_id' ως αυτόματη αύξηση και πρωτεύον κλειδί. Περιλαμβάνουμε επίσης δύο άλλες στήλες.



Όταν θέλουμε να εισαγάγουμε τις τιμές στον πίνακά μας, εισάγουμε μόνο για τις άλλες στήλες και αφήνουμε έξω τη στήλη αυτόματης αύξησης καθώς οι τιμές της δημιουργούνται αυτόματα. Ακολουθεί ένα παράδειγμα όπου προσθέτουμε πέντε εγγραφές στον πίνακά μας:

Όταν χρησιμοποιούμε τη δήλωση SELECT για να ελέγξουμε τις εγγραφές του πίνακα, παρατηρήστε ότι η στήλη 'user_id' περιέχει μοναδικές ταυτότητες που, στην περίπτωσή μας, είναι αριθμοί που ξεκινούν από το 1. Αυτός είναι ο τρόπος με τον οποίο γίνεται η αυτόματη αύξηση PostgreSQL χρησιμοποιώντας τον ψευδοτύπο SERIAL.

Μέθοδος 2: Δημιουργία ακολουθίας

Όταν χρησιμοποιείτε τον ψευδοτύπο SERIAL για να δημιουργήσετε τις τιμές αυτόματης αύξησης, δεν ελέγχετε τον τρόπο δημιουργίας των μοναδικών ταυτοτήτων σας. Για το προηγούμενο παράδειγμα, είδαμε ότι οι μοναδικές μας ταυτότητες ξεκινούν από το 1. Ωστόσο, εάν θέλετε να ελέγξετε αυτές τις τιμές, ας υποθέσουμε ότι θέλετε να ορίσετε σε ποιο σημείο θα ξεκινήσετε να τις δημιουργείτε, πρέπει να δημιουργήσετε μια προσαρμοσμένη ακολουθία.

Το PostgreSQL έχει την επιλογή SEQUENCE όπου μπορείτε να καθορίσετε το όνομα της στήλης που θα χρησιμοποιηθεί για την αυτόματη αύξηση και να ορίσετε την τιμή έναρξης για τη στήλη. Για παράδειγμα, εάν θέλουμε να ξεκινήσουμε τις τιμές από το 100, δημιουργούμε την ακόλουθη προσαρμοσμένη ακολουθία:

ΔΗΜΙΟΥΡΓΙΑ ΑΚΟΛΟΥΘΙΑΣ στήλης_όνομα_τιμής_αρχής.

Αφού δημιουργήσετε την ακολουθία, μπορείτε τώρα να δημιουργήσετε τον πίνακα σας. Σημειώστε ότι πρέπει να χρησιμοποιήσετε το ίδιο όνομα στήλης όπου δημιουργήσατε μια ακολουθία όπως το 'nextval('holder')' για τον πίνακα που δημιουργήθηκε. Με αυτόν τον τρόπο, η PostgreSQL αναφέρεται στην ακολουθία για να γνωρίζει ποια σειρά πρέπει να ακολουθεί κατά τη δημιουργία της μοναδικής ταυτότητας για τις στήλες.

Εκτελούμε την ακόλουθη εντολή για να δημιουργήσουμε τον πίνακα μας:

Προχωρήστε στην εισαγωγή των τιμών στον πίνακα που δημιουργήθηκε για τις σχετικές στήλες.

Όταν εκτελούμε το ερώτημα 'επιλογή' για να καταχωρήσουμε τις καταχωρήσεις του πίνακα, μπορούμε να δούμε ότι καταφέραμε να ελέγξουμε την αυτόματη αύξηση. Η στήλη 'user_id' ξεκινά την τιμή της στο 100 και δημιουργεί τις επόμενες τιμές για τις άλλες εγγραφές που εισάγουμε στον πίνακα.

Αυτός είναι ο άλλος τρόπος δημιουργίας της αυτόματης αύξησης για την PostgreSQL.

συμπέρασμα

Η δημιουργία μιας αυτόματης αύξησης είναι ευεργετική για τη δημιουργία μοναδικότητας στο τραπέζι σας. Όταν θέλετε να ορίσετε ένα πρωτεύον κλειδί για τον πίνακά σας, χρησιμοποιήστε τη δυνατότητα αυτόματης αύξησης για τον τύπο δεδομένων INT. Η PostgreSQL δημιουργεί τις τιμές αυτόματα, διασφαλίζοντας ότι δεν υπάρχουν διπλότυπα στον πίνακά σας. Ορίσαμε τον τρόπο δημιουργίας της αυτόματης αύξησης για την PostgreSQL και παρέχουμε δύο παραδείγματα των δύο μεθόδων που μπορείτε να χρησιμοποιήσετε. Και οι δύο μέθοδοι ισχύουν ανάλογα με το σενάριο που έχετε. Δοκιμάστε τα!