Οδηγοί

Πώς να προσθέσετε βάση δεδομένων στην εφαρμογή σας (χωρίς να χάσετε δεδομένα αργότερα)

Για να προσθέσετε βάση δεδομένων στην εφαρμογή σας, επιλέξτε μια διαχειριζόμενη σχεσιακή βάση (η Postgres είναι η συνήθης επιλογή), κρατήστε τη συμβολοσειρά σύνδεσης σε μυστικό στον server, δημιουργήστε έναν πίνακα για κάθε είδος πράγματος που αποθηκεύει η εφαρμογή και αφήστε το backend, και όχι τον browser, να διαβάζει και να γράφει σε αυτήν. Αν φτιάχνετε με ένα εργαλείο AI, συνήθως αρκεί να γράψετε «αποθήκευσε αυτό σε βάση δεδομένων» και ο agent στήνει τους πίνακες και τον κώδικα. Η δική σας δουλειά είναι να περιγράψετε καθαρά τα δεδομένα και να ελέγξετε ότι όντως αποθηκεύονται.

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

Πότε χρειάζεται η εφαρμογή σας βάση δεδομένων

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

  • Οι επισκέπτες υποβάλλουν κάτι: φόρμα, εγγραφή, κράτηση, παραγγελία
  • Οι χρήστες έχουν λογαριασμούς με δικό τους αποθηκευμένο περιεχόμενο
  • Ένας διαχειριστής πρέπει να βλέπει ή να επεξεργάζεται όσα δημιούργησαν άλλοι
  • Θέλετε αναφορές ή μετρήσεις στον χρόνο

Δεν τη χρειάζεστε για έναν στατικό ιστότοπο όπου όλοι βλέπουν το ίδιο περιεχόμενο, όπως ένα portfolio ή μια απλή σελίδα προορισμού. Αν δεν είστε σίγουροι τι είναι μια βάση δεδομένων, διαβάστε πρώτα τι είναι βάση δεδομένων.

Οι επιλογές σας

ΕπιλογήΤι είναιΚατάλληλη γιαΜειονεκτήματα
Ενσωματωμένη βάση από το εργαλείο κατασκευήςΒάση που δημιουργείται και συνδέεται για το έργο σαςΤις περισσότερες εφαρμογές που φτιάχνονται με AI εργαλείοΔεμένη με τη φιλοξενία της πλατφόρμας· η εξαγωγή και τα backups εξαρτώνται από αυτήν
Διαχειριζόμενη Postgres ή MySQLΦιλοξενούμενη σχεσιακή βάση που δηλώνετε χωριστάΕφαρμογές που φιλοξενείτε μόνοι σας ή που τις χρησιμοποιούν πολλές υπηρεσίεςΕσείς διαχειρίζεστε κλειδιά, όρια συνδέσεων και πακέτα
Backend-as-a-serviceΒάση μαζί με σύνδεση, αποθήκευση και APIs σε ένα προϊόνΕφαρμογές με έμφαση στο frontend που θέλουν έτοιμη σύνδεσηΠερισσότερες έννοιες συγκεκριμένες για τον πάροχο
Βάση εγγράφων (NoSQL)Αποθηκεύει ευέλικτα έγγραφα τύπου JSONΠολύ ακανόνιστα δεδομέναΟι συσχετίσεις και οι αναφορές είναι δυσκολότερες
Υπολογιστικό φύλλο ως βάσηGoogle Sheets ή παρόμοιο μέσω APIΜικρά εσωτερικά εργαλεία, πρωτότυπαΑργό, χωρίς πραγματικούς περιορισμούς, σπάει με ταυτόχρονες αλλαγές

Για τις περισσότερες μικρές και μεσαίες web εφαρμογές, μια σχεσιακή βάση όπως η Postgres είναι η σωστή προεπιλογή. Είναι καλή στις συσχετίσεις (ένας πελάτης έχει πολλές παραγγελίες), διατηρεί τα δεδομένα συνεπή και σας επιτρέπει να απαντάτε ερωτήσεις αργότερα με SQL. Δείτε τι είναι η Postgres για μια εξήγηση με απλά λόγια.

Περιγράψτε τα δεδομένα σας πριν χτίσετε

Το πιο χρήσιμο που μπορείτε να κάνετε είναι να γράψετε τα πράγματα που αποθηκεύει η εφαρμογή σας και πώς συνδέονται μεταξύ τους. Δεν χρειάζεστε ορολογία βάσεων. Για μια εφαρμογή κρατήσεων:

  • Πελάτες: όνομα, email, τηλέφωνο
  • Υπηρεσίες: όνομα, διάρκεια, τιμή
  • Κρατήσεις: ποιος πελάτης, ποια υπηρεσία, ώρα έναρξης, κατάσταση (εκκρεμεί, επιβεβαιωμένη, ακυρωμένη)

Αυτοί είναι τρεις πίνακες. Το «ποιος πελάτης» και το «ποια υπηρεσία» γίνονται συνδέσεις (ξένα κλειδιά) ανάμεσα στους πίνακες. Το να το κάνετε σωστά από νωρίς έχει πολύ μεγαλύτερη σημασία από οποιαδήποτε τεχνολογική επιλογή, γιατί η αλλαγή της δομής δεδομένων που έχουν ήδη πραγματικές εγγραφές είναι δυσκολότερη από την αλλαγή μιας διάταξης σελίδας.

Μερικοί κανόνες που βοηθούν:

  • Ένας πίνακας για κάθε είδος πράγματος. Μην βάζετε παραγγελίες σε μια στήλη κειμένου μέσα στον πελάτη.
  • Κάθε εγγραφή να έχει ID και χρόνο δημιουργίας. Θα τα χρειαστείτε αργότερα.
  • Χρησιμοποιήστε σωστούς τύπους. Ημερομηνίες ως ημερομηνίες, χρήματα σε λεπτά ή σε τύπο δεκαδικού, όχι ως κείμενο.
  • Σημειώστε τα υποχρεωτικά πεδία ως υποχρεωτικά. Αφήστε τη βάση να απορρίπτει τα λάθος δεδομένα, όχι μόνο η φόρμα.

Παραδείγματα prompts

Ξεκινήστε με μία λειτουργία τη φορά αντί να ρίξετε ολόκληρο σχήμα:

Πρόσθεσε βάση δεδομένων σε αυτήν την εφαρμογή. Δημιούργησε πίνακα bookings με όνομα πελάτη, email, υπηρεσία, ώρα έναρξης και κατάσταση (εκκρεμεί, επιβεβαιωμένη, ακυρωμένη· προεπιλογή εκκρεμεί). Αποθήκευσε τις υποβολές της φόρμας κρατήσεων σε αυτόν, εμφάνισε μήνυμα επιτυχίας και πρόσθεσε σελίδα διαχειριστή που εμφανίζει τις κρατήσεις με τις νεότερες πρώτες.

Μετά επεκτείνετέ το:

Πρόσθεσε πίνακα services (όνομα, διάρκεια σε λεπτά, τιμή σε λεπτά ευρώ). Αντικατάστησε το ελεύθερο πεδίο υπηρεσίας στις κρατήσεις με σύνδεση προς τον πίνακα services και μετέφερε τις υπάρχουσες κρατήσεις χωρίς να διαγράψεις τίποτα.

Και μετά κάνε το αυστηρότερο:

Βεβαιώσου ότι όλες οι αναγνώσεις και εγγραφές στη βάση γίνονται στον server. Ο browser δεν πρέπει ποτέ να λαμβάνει τη συμβολοσειρά σύνδεσης με τη βάση. Επικύρωσε το email και την ώρα έναρξης στον server πριν από την εισαγωγή.

Βήμα προς βήμα

  1. Καταγράψτε τα δεδομένα σας όπως παραπάνω: πράγματα, πεδία, συνδέσεις μεταξύ τους.
  2. Δημιουργήστε τη βάση. Σε εργαλείο AI, ζητήστε το στη συνομιλία. Αλλού, δημιουργήστε μια διαχειριζόμενη Postgres και αντιγράψτε τη συμβολοσειρά σύνδεσης.
  3. Αποθηκεύστε τη συμβολοσειρά σύνδεσης ως μυστικό (μεταβλητή περιβάλλοντος στον server), ποτέ στον κώδικα. Δείτε μεταβλητές περιβάλλοντος και μυστικά.
  4. Δημιουργήστε τους πίνακες. Χρησιμοποιήστε migrations, δηλαδή εκδοσιοποιημένα scripts που αλλάζουν το σχήμα, ώστε οι αλλαγές να είναι επαναλήψιμες και αναστρέψιμες.
  5. Χτίστε τις διαδρομές του server που δημιουργούν, διαβάζουν, ενημερώνουν και διαγράφουν εγγραφές (CRUD). Ο browser καλεί αυτές τις διαδρομές· ποτέ δεν μιλάει απευθείας με τη βάση.
  6. Συνδέστε τη διεπαφή με αυτές τις διαδρομές: φόρμες που αποθηκεύουν, λίστες που φορτώνουν, κενές καταστάσεις όταν δεν υπάρχει ακόμα τίποτα.
  7. Ελέγξτε τη μονιμότητα. Υποβάλετε κάτι, κάντε ανανέωση της σελίδας, ανοίξτε την σε άλλον browser. Αν τα δεδομένα δεν είναι εκεί, δεν αποθηκεύτηκαν στη βάση.
  8. Ελέγξτε την πρόσβαση. Συνδεθείτε ως δεύτερος χρήστης και βεβαιωθείτε ότι δεν βλέπετε ή δεν επεξεργάζεστε τα δεδομένα του πρώτου.
  9. Δημοσιεύστε, και μετά ελέγξτε ξανά στο ζωντανό URL, γιατί η δημοσιευμένη εφαρμογή μπορεί να χρησιμοποιεί διαφορετική σύνδεση από την προεπισκόπηση.

Συχνά λάθη

  • Αποθήκευση στον browser και η σκέψη ότι είναι αποθηκευμένα. Το localStorage φαίνεται να δουλεύει μέχρι κάποιος να ανοίξει την εφαρμογή σε άλλη συσκευή. Πάντα δοκιμάζετε σε δεύτερο browser.
  • Η συμβολοσειρά σύνδεσης στον κώδικα του frontend. Όποιος μπορεί να δει τον κώδικα του frontend διαβάζει και ολόκληρη τη βάση σας.
  • Χωρίς έλεγχο πρόσβασης. Το «δείξε τις παραγγελίες μου» πρέπει να φιλτράρεται με τον συνδεδεμένο χρήστη στον server, όχι στη διεπαφή. Είναι το πιο συνηθισμένο κενό ασφαλείας σε εφαρμογές που φτιάχνονται με AI· ο οδηγός ασφαλείας το καλύπτει.
  • Καταστροφικές αλλαγές σχήματος. Το «μετονόμασε τον πίνακα» ή «άλλαξε τη δομή» μπορεί να διαγράψει και να ξαναδημιουργήσει τον πίνακα. Όταν υπάρχουν πραγματικά δεδομένα, πείτε «μετέφερε τις υπάρχουσες εγγραφές, μη διαγράψεις τίποτα».
  • Αποθήκευση αρχείων μέσα στη βάση. Εικόνες και PDF ανήκουν σε αποθήκευση αρχείων, με μόνο το URL ή το κλειδί τους σε έναν πίνακα. Δείτε πώς να προσθέσετε ανέβασμα αρχείων.
  • Χωρίς backups. Μάθετε πώς κάνει backup η πλατφόρμα σας και πώς γίνεται η επαναφορά πριν έχετε πελάτες.

Λίστα ελέγχου

  • Κάθε είδος πράγματος έχει δικό του πίνακα με ID και χρόνο δημιουργίας
  • Τα υποχρεωτικά πεδία και οι τύποι επιβάλλονται από τη βάση
  • Η συμβολοσειρά σύνδεσης υπάρχει μόνο σε μυστικά του server
  • Όλες οι αναγνώσεις και εγγραφές περνούν από διαδρομές του server
  • Κάθε χρήστης μπορεί να διαβάζει και να αλλάζει μόνο τις δικές του εγγραφές
  • Τα δεδομένα επιβιώνουν από ανανέωση και φαίνονται σε άλλον browser
  • Οι αλλαγές σχήματος γίνονται με migrations και κρατούν τις υπάρχουσες εγγραφές
  • Ξέρετε πώς λειτουργούν τα backups και η επαναφορά
  • Η ζωντανή εφαρμογή ελέγχθηκε μετά τη δημοσίευση

Προσθήκη βάσης δεδομένων στο Mythex

Στο Mythex, κάθε έργο μπορεί να αποκτήσει τη δική του αφιερωμένη βάση Postgres, τόσο στο Free όσο και στο Pro. Συνήθως δεν χρειάζεται ξεχωριστό κουμπί «σύνδεση»: γράψτε στη συνομιλία («αποθήκευσε τα emails της λίστας αναμονής σε βάση») ή πληκτρολογήστε /database, και τα στοιχεία σύνδεσης εισάγονται στον χώρο εργασίας και στην δημοσιευμένη εφαρμογή σας. Οι ρυθμίσεις του έργου δείχνουν αν η βάση είναι ενεργή.

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

Δείτε τη Βάση δεδομένων και τη συνταγή Χτίστε μια εφαρμογή CRUD στην τεκμηρίωση. Για την πλευρά της σύνδεσης στα δεδομένα ανά χρήστη, διαβάστε πώς να προσθέσετε σύνδεση στην εφαρμογή σας.

Ερωτήσεις

Χρειάζομαι βάση δεδομένων για την εφαρμογή μου;

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

Ποια βάση δεδομένων να χρησιμοποιήσω για μια μικρή web εφαρμογή;

Μια σχεσιακή βάση όπως η Postgres είναι ασφαλής επιλογή για τις περισσότερες μικρές web εφαρμογές. Διαχειρίζεται καλά χρήστες, παραγγελίες, συσχετίσεις και αναφορές, είναι ευρέως υποστηριζόμενη και σπάνια ξεπερνιέται σε μικρή κλίμακα.

Μπορώ να αποθηκεύσω δεδομένα στον browser αντί για βάση δεδομένων;

Η αποθήκευση στον browser, όπως το localStorage, ζει μόνο σε μία συσκευή και σε έναν browser, και ο χρήστης μπορεί να την διαγράψει ανά πάσα στιγμή. Είναι κατάλληλη για προτιμήσεις, όπως η επιλογή θέματος, αλλά όχι για οτιδήποτε χρειάζεστε εσείς ή άλλοι χρήστες να δείτε αργότερα.

Περιλαμβάνει το Mythex βάση δεδομένων;

Ναι. Ένα έργο στο Mythex μπορεί να αποκτήσει τη δική του αφιερωμένη βάση Postgres στα πακέτα Free και Pro. Την ζητάτε στη συνομιλία ή χρησιμοποιείτε την εντολή /database, και τα στοιχεία σύνδεσης εισάγονται αυτόματα. Η χρήση χρεώνεται από το ίδιο υπόλοιπο credits με την κατασκευή.

Mythex · Pricing · Χτίστε οτιδήποτε με AI · Πρότυπα ιστοσελίδων και εφαρμογών · Το Mythex σε σύγκριση · Γλωσσάρι δημιουργίας εφαρμογών με AI · Δωρεάν εργαλεία δημιουργίας εφαρμογών με AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)