Πώς να αναπτύξετε το MongoDB με JavaScript

Pos Na Anaptyxete To Mongodb Me Javascript



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

npm i mongodb

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







Παράδειγμα 1: Αναπτύξτε μια σύνδεση MongoDB με JavaScript

Ξεκινήστε δημιουργώντας τη σύνδεση με τον διακομιστή MongoDB με το JavaScript που μπορεί να επιτευχθεί χρησιμοποιώντας τη λειτουργική μονάδα «npm», όπως συζητήθηκε προηγουμένως.



συνθ { MongoClient } = απαιτώ ( 'mongodb' ) ;

συνθ url = 'mongodb:// 127.0.0.1:27017 ' ;
συνθ πελάτης = νέος MongoClient ( url ) ;
συνθ Όνομα db = 'MyDB' ;

ασυγχρονισμός λειτουργία κύριος ( ) {
περιμένουν τον πελάτη. συνδέω-συωδεομαι ( ) ;
κονσόλα. κούτσουρο ( 'Συνδέθηκε επιτυχώς με τον διακομιστή' ) ;
συνθ db = πελάτης. db ( Όνομα db ) ;
συνθ συλλογή = db. συλλογή ( 'Πρόσωπα' ) ;

ΕΠΙΣΤΡΟΦΗ 'Έγινε.' ;
}

κύριος ( )
. έπειτα ( κονσόλα. κούτσουρο )
. σύλληψη ( κονσόλα. λάθος )
. τελικά ( ( ) => πελάτης. Κλείσε ( ) ) ;

Πρώτα εισάγουμε το απαιτούμενο MongoClient από τη λειτουργική μονάδα 'mongodb' στο αρχείο 'File.js'. Στη συνέχεια, ορίζουμε τη διεύθυνση URL σύνδεσης για τον διακομιστή MongoDB (url) και δημιουργούμε μια νέα παρουσία MongoClient χρησιμοποιώντας την καθορισμένη διεύθυνση URL.



Μετά από αυτό, καθορίζουμε το όνομα της βάσης δεδομένων MongoDB (dbName) που θα χρησιμοποιηθεί στη σύνδεση. Στη συνέχεια, η συνάρτηση ασύγχρονης main() χειρίζεται τις κύριες λειτουργίες στον διακομιστή MongoDB. Εδώ, συνδεόμαστε στον διακομιστή MongoDB χρησιμοποιώντας την await client.connect(). Αυτή είναι μια ασύγχρονη λειτουργία, επομένως η λειτουργία διακόπτεται μέχρι να πραγματοποιηθεί επιτυχώς η σύνδεση. Μπορούμε να δούμε το μήνυμα που εμφανίζεται στη γραμμή εντολών μόλις πραγματοποιηθεί επιτυχώς η σύνδεση. Λαμβάνουμε μια αναφορά στη βάση δεδομένων με το καθορισμένο όνομα στο 'dbName' χρησιμοποιώντας το client.db(dbName).





Στη συνέχεια, λαμβάνουμε μια αναφορά στη συλλογή με το όνομα 'Persons' χρησιμοποιώντας το db.collection('Persons'). Αφού ορίσουμε τη συνάρτηση main(), καλούμε τη main() για να εκτελέσει τις πράξεις. Εάν η συνάρτηση main() επιλυθεί με επιτυχία, εκτυπώνει το αποτέλεσμα (σε αυτήν την περίπτωση, είναι η συμβολοσειρά 'ολοκληρώθηκε') χρησιμοποιώντας το .then(console.log). Εάν υπάρχει σφάλμα κατά την εκτέλεση, το πιάνει το σφάλμα και το εκτυπώνει χρησιμοποιώντας το .catch(console.error). Τέλος, διασφαλίζει ότι η σύνδεση πελάτη MongoDB είναι κλειστή χρησιμοποιώντας το .finally(() => client.close()).

Ως εκ τούτου, η προτροπή εμφανίζει το μήνυμα όπου έχει δημιουργηθεί η σύνδεση MongoDB στο αρχείο JavaScript:



Παράδειγμα 2: Εισαγάγετε ένα έγγραφο MongoDB με JavaScript

Τώρα που έχει δημιουργηθεί η σύνδεση με τον διακομιστή MongoDB, μπορούμε να χρησιμοποιήσουμε τα ερωτήματα MongoDB με JavaScript. Εδώ, εφαρμόζουμε το ερώτημα εισαγωγής για την εισαγωγή του μεμονωμένου εγγράφου.

συνθ { MongoClient } = απαιτώ ( 'mongodb' ) ;

συνθ url = 'mongodb:// 127.0.0.1:27017 ' ;
συνθ πελάτης = νέος MongoClient ( url ) ;
συνθ Όνομα db = 'MyDB' ;

ασυγχρονισμός λειτουργία κύριος ( ) {
συνθ db = πελάτης. db ( Όνομα db ) ;
συνθ συλλογή = db. συλλογή ( 'χρήστες' ) ;
συνθ ένθετοΈγγραφο =
αναμονή συλλογής. insertOne ( { όνομα : 'Ανδρέας' , ηλικία : 23 } ) ;
κονσόλα. κούτσουρο ( 'Έγγραφο εισήχθη =' , ένθετοΈγγραφο ) ;
ΕΠΙΣΤΡΟΦΗ 'Έγινε.' ;
}

κύριος ( )
. έπειτα ( κονσόλα. κούτσουρο )
. σύλληψη ( κονσόλα. λάθος )
. τελικά ( ( ) => πελάτης. Κλείσε ( ) ) ;

Ορίζουμε τη συνάρτηση main() ως μια ασύγχρονη συνάρτηση που εκτελεί τη λειτουργία εισαγωγής βάσης δεδομένων. Μέσα σε αυτό, συνδέουμε τον διακομιστή MongoDB χρησιμοποιώντας την παρουσία MongoClient και τη διεύθυνση URL. Στη συνέχεια, έχουμε πρόσβαση στην καθορισμένη βάση δεδομένων (MyDB) χρησιμοποιώντας το client.db(dbName) και παίρνουμε τη συλλογή 'users' από τη βάση δεδομένων χρησιμοποιώντας το db.collection('users').

Μετά από αυτό, εισάγουμε ένα έγγραφο με το όνομα των πεδίων ως 'Andrew' και την ηλικία ως 23 στη συλλογή 'users' χρησιμοποιώντας τη συλλογή.insertOne(). Η μέθοδος insertOne() επιστρέφει μια υπόσχεση που επιλύεται με το αποτέλεσμα της εισαγωγής. Το έγγραφο που προστέθηκε εμφανίζεται χρησιμοποιώντας το console.log. Τέλος, κλείνουμε τη σύνδεση πελάτη MongoDB.

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

Παράδειγμα 3: Βρείτε ένα έγγραφο MongoDB με JavaScript

Ομοίως, μπορούμε να εφαρμόσουμε το ερώτημα «εύρεσης» του MongoDB με JavaScript για να βρούμε το έγγραφο από τη συλλογή που δημιουργήθηκε στο προηγούμενο παράδειγμα.

συνθ { MongoClient } = απαιτώ ( 'mongodb' ) ;

συνθ url = 'mongodb:// 127.0.0.1:27017 ' ;
συνθ πελάτης = νέος MongoClient ( url ) ;
συνθ Όνομα db = 'MyDB' ;

ασυγχρονισμός λειτουργία κύριος ( ) {
συνθ db = πελάτης. db ( Όνομα db ) ;
συνθ συλλογή = db. συλλογή ( 'χρήστες' ) ;
συνθ findQuery = { όνομα : 'Ανδρέας' } ;
συνθ findDoc = αναμονή συλλογής. εύρημα ( findQuery ) . toArray ( ) ;
κονσόλα. κούτσουρο ( 'Έγγραφο =' , findDoc ) ;
}

κύριος ( )
. έπειτα ( κονσόλα. κούτσουρο )
. σύλληψη ( κονσόλα. λάθος )
. τελικά ( ( ) => πελάτης. Κλείσε ( ) ) ;

Ξεκινάμε με την επίδειξη από την κύρια συνάρτηση όπου συνδέουμε πρώτα τον διακομιστή MongoDB χρησιμοποιώντας το δημιουργημένο παράδειγμα MongoClient και την καθορισμένη διεύθυνση URL. Στη συνέχεια, έχουμε πρόσβαση στη βάση δεδομένων MyDB χρησιμοποιώντας το client.db(dbName) όπου το dbName είναι το όνομα της βάσης δεδομένων που ορίστηκε προηγουμένως.

Στη συνέχεια, λαμβάνουμε μια αναφορά στη συλλογή 'χρήστες' από τη βάση δεδομένων χρησιμοποιώντας το db.collection('users'). Δημιουργείται ένα αντικείμενο ερωτήματος με το όνομα «findQuery» το οποίο προσδιορίζει ότι τα έγγραφα που θα ανακτηθούν πρέπει να έχουν το πεδίο ονόματος ίσο με «Andrew». Μετά από αυτό, εκτελούμε ένα ερώτημα 'εύρεσης' στη συλλογή 'χρήστες' χρησιμοποιώντας τη συλλογή.find(findQuery) η οποία επιστρέφει έναν δρομέα στα αντίστοιχα έγγραφα.

Η λέξη-κλειδί 'αναμονή' χρησιμοποιείται πριν από τη συλλογή.find() για να διασφαλιστεί ότι το αποτέλεσμα επιλύεται πριν συνεχίσετε. Το αποτέλεσμα της λειτουργίας εύρεσης μετατρέπεται σε μια σειρά εγγράφων χρησιμοποιώντας το toArray(), και τα έγγραφα που βρέθηκαν αποθηκεύονται στη μεταβλητή 'findDoc'. Στη συνέχεια, τα έγγραφα καταγράφονται στην κονσόλα χρησιμοποιώντας το console.log.

Ως αποτέλεσμα, το έγγραφο που βρέθηκε της συλλογής MongoDB εμφανίζεται κατά την εκτέλεση:

Παράδειγμα 4: Ενημερώστε ένα έγγραφο MongoDB με JavaScript

Στη συνέχεια, εκτελούμε τη λειτουργία 'ενημέρωση' σε JavaScript για να ενημερώσουμε το καθορισμένο έγγραφο της συλλογής MongoDB.

συνθ { MongoClient } = απαιτώ ( 'mongodb' ) ;

συνθ url = 'mongodb:// 127.0.0.1:27017 ' ;
συνθ πελάτης = νέος MongoClient ( url ) ;
συνθ Όνομα db = 'MyDB' ;

ασυγχρονισμός λειτουργία κύριος ( ) {
συνθ db = πελάτης. db ( Όνομα db ) ;
συνθ συλλογή = db. συλλογή ( 'χρήστες' ) ;
συνθ updateQuery = { όνομα : 'Ανδρέας' } ;
συνθ updateName = { $set : { όνομα : 'Ο ίδιος' } } ;
συνθ ενημέρωση Αποτέλεσμα = αναμονή συλλογής. updateOne ( updateQuery , updateName ) ;
κονσόλα. κούτσουρο ( 'Ενημερωμένο έγγραφο =' , ενημέρωση Αποτέλεσμα ) ;
ΕΠΙΣΤΡΟΦΗ 'Έγινε' ;
}

κύριος ( )
. έπειτα ( κονσόλα. κούτσουρο )
. σύλληψη ( κονσόλα. λάθος )
. τελικά ( ( ) => πελάτης. Κλείσε ( ) ) ;

Για να ενημερώσουμε ένα έγγραφο στη συλλογή «χρήστες», καλούμε τη συνάρτηση main(). Στη συνέχεια, προετοιμάζουμε ένα ερώτημα 'ενημέρωσης' χρησιμοποιώντας { name: 'Andrew' } για να βρούμε το έγγραφο με το πεδίο ονόματος ίσο με 'Andrew'. Μετά από αυτό, ορίσαμε το πεδίο ονόματος του αντιστοιχισμένου εγγράφου σε 'Sam' χρησιμοποιώντας το { $set: { name: 'Sam' } }.

Ορίζουμε το ερώτημα 'ενημέρωση' και τη λειτουργία 'ενημέρωση' για την εκτέλεση της ενημέρωσης χρησιμοποιώντας το collection.updateOne(updateQuery, updateName). Η μέθοδος updateOne() ενημερώνει το πρώτο έγγραφο που ταιριάζει με το ερώτημα 'ενημέρωση' και επιστρέφει ένα αντικείμενο που αντιπροσωπεύει το αποτέλεσμα της ενημέρωσης. Η μεταβλητή 'updateResult' περιέχει το αποτέλεσμα της ενέργειας ενημέρωσης.

Η οθόνη εξόδου που ακολουθεί εμφανίζει τα αποτελέσματα του ενημερωμένου ερωτήματος:

Παράδειγμα 5: Διαγραφή εγγράφου MongoDB με JavaScript

Τέλος, χρησιμοποιούμε τη μέθοδο διαγραφής του MongoDB για να διαγράψουμε το προηγούμενο έγγραφο από το MongoDB εντός JavaScript.

συνθ { MongoClient } = απαιτώ ( 'mongodb' ) ;

συνθ url = 'mongodb:// 127.0.0.1:27017 ' ;
συνθ πελάτης = νέος MongoClient ( url ) ;
συνθ Όνομα db = 'MyDB' ;

ασυγχρονισμός λειτουργία κύριος ( ) {
συνθ db = πελάτης. db ( Όνομα db ) ;
συνθ συλλογή = db. συλλογή ( 'χρήστες' ) ;
συνθ deleteQuery = { όνομα : 'Ο ίδιος' } ;
συνθ διαγραφή αποτελέσματος = αναμονή συλλογής. deleteOne ( deleteQuery ) ;
κονσόλα. κούτσουρο ( 'Διαγραμμένο έγγραφο =' , διαγραφή αποτελέσματος ) ;
ΕΠΙΣΤΡΟΦΗ 'Έγινε' ;
}

κύριος ( )
. έπειτα ( κονσόλα. κούτσουρο )
. σύλληψη ( κονσόλα. λάθος )
. τελικά ( ( ) => πελάτης. Κλείσε ( ) ) ;

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

Περνάμε το 'deleteQuery' ως όρισμα στο 'deleteOne' το οποίο διαγράφει το πρώτο έγγραφο που ταιριάζει που πληροί τα καθορισμένα κριτήρια στο ερώτημα. Η μεταβλητή 'deleteResult' περιέχει το αποτέλεσμα της ενέργειας διαγραφής.

Το καθορισμένο έγγραφο διαγράφεται από τη συλλογή MongoDB χρησιμοποιώντας το αρχείο 'javascript':

συμπέρασμα

Τώρα έχουμε μια θεμελιώδη κατανόηση σχετικά με τον τρόπο χρήσης του MongoDB με JavaScript μέσω του προγράμματος οδήγησης MongoDB Node.js. Τα αποδείξαμε όλα με τις διάφορες λειτουργίες Mongo DB, από τη σύνδεση έως τη διαγραφή του εγγράφου με JavaScript. Από εδώ, μπορούμε να δημιουργήσουμε πιο σύνθετες εφαρμογές και να ενσωματώσουμε το MongoDB στα έργα Node.js όπως απαιτείται.