Close

Πως να μεταφέρετε δεδομένα με ένα JSON αρχείο, για να ενημερώσετε μια βάση.

json implementation qsa

Πως να μεταφέρετε δεδομένα με ένα JSON αρχείο, για να ενημερώσετε μια βάση.

Ορισμένα συστήματα διαχείρισης βάσεων δεδομένων αποθηκεύουν δεδομένα ως έγγραφα JSON. Δείτε πώς μπορείτε να προσθέσετε JSON σε μια τέτοια βάση δεδομένων.

Υπάρχει μια μεγάλη αύξηση στα συστήματα διαχείρισης βάσεων δεδομένων (DBMS) που χρησιμοποιούν το JSON για την αποθήκευση δεδομένων. Ενώ μερικές από αυτές είναι σχεσιακές βάσεις δεδομένων, οι περισσότερες προέρχονται από τη κατηγορία DBMS του NoSQL. Οι βάσεις δεδομένων του NoSQL χρησιμοποιούν συνήθως ένα διαφορετικό μοντέλο δεδομένων στο σχεσιακό μοντέλο που είναι τόσο δημοφιλές εδώ και πολλά χρόνια.

Τα συστήματα διαχείρισης βάσεων δεδομένων που αποθηκεύουν δεδομένα ως έγγραφα JSON αναφέρονται συχνά ως βάσεις δεδομένων αποθήκευσις εγγράφων.

Πώς να χρησιμοποιήσετε το JSON με μια βάση δεδομένων για την αποθήκευση εγγράφων

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

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

Για παράδειγμα, στο MongoDB, μπορείτε να χρησιμοποιήσετε insert (), insertOne() ή insertMany() για να εισαγάγετε αρχεία JSON σε μια βάση δεδομένων MongoDB.

Ακολουθεί ένα παράδειγμα:

db.artists.insert({
artistname : “Deep Purple”,
albums : [
{
album : “Machine Head”,
year : 1972,
genre : “Rock”
},
{
album : “Stormbringer”,
year : 1974,
genre : “Rock”
}
]
})

Όπως μπορείτε να δείτε, η μέθοδος insert() δέχεται το JSON ως όρισμα.

Η παραπάνω δήλωση θα εισαγάγει ένα αρχείο στη βάση δεδομένων. Όλα τα παρεχόμενα δεδομένα αποθηκεύονται σε ένα αρχείο.

Μόλις τα δεδομένα βρίσκονται στη βάση δεδομένων, μπορείτε να κάνετε πράγματα όπως:

  • Αναζήτηση με τη μέθοδο Find() του MongoDB.
  • Ενημέρωση χρησιμοποιώντας τις μεθόδους update() ή save().
  • Διαγραφή χρησιμοποιώντας οποιαδήποτε από τις μεθόδους deleteOne(), deleteMany() ή remove().

Το MongoDB παρέχει επίσης το βοηθητικό πρόγραμμα mongoimport για την εισαγωγή αρχείων JSON, CSV ή TSV σε μια βάση δεδομένων MongoDB.

BSON

Το MongoDB αποθηκεύει τα δεδομένα σε μορφή BSON, η οποία αποτελεί επέκταση του JSON. Το BSON, το οποίο είναι συντομία για το Binary JSON, περιέχει επεκτάσεις που επιτρέπουν την αναπαράσταση τύπων δεδομένων που δεν υποστηρίζονται από το JSON. Για παράδειγμα, η BSON έχει έναν Date type.

Το BSON προσθέτει επιπλέον στοιχεία σε αρχεία, όπως το μήκος των strings και των subobjects. Αυτό μπορεί να επιταχύνει τη μεταφορά.

Σχεσιακές βάσεις δεδομένων με υποστήριξη JSON

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

Επίσης, μερικά συστήματα διαχείρισης σχεσιακών βάσεων δεδομένων, όπως η MySQL, η Oracle, η PostgreSQL και ο SQL Server, προσφέρουν τώρα υποστήριξη JSON. Στην πραγματικότητα, η υποστήριξη JSON στον SQL Server ήταν ένα από τα πιο κατεψυγμένα αιτήματα πριν εφαρμοστεί στον SQL Server 2016.

Ο SQL Server 2016 εισήγαγε τη δυνατότητα μορφοποίησης και εξαγωγής δεδομένων ως string JSON, φόρτωσης κειμένου JSON σε πίνακες, εξαγωγής τιμών από κείμενο JSON, ιδιότητες ευρετηρίου από κείμενο JSON αποθηκευμένο σε στήλες και πολλά άλλα.

Μία από τις λειτουργίες JSON είναι η εντολή FOR JSON που μπορεί να χρησιμοποιηθεί για την εξαγωγή δεδομένων από τον SQL Server ως JSON ή για την μορφοποίηση των αποτελεσμάτων των ερωτημάτων ως JSON.

Ακολουθεί ένα παράδειγμα χρήσης της εντολής FOR JSON σε μια εντολή SELECT για να μορφοποιήσετε τα αποτελέσματα των ερωτημάτων ως JSON:

SELECT artistname, formed
FROM artists
FOR JSON AUTO