Διαφορά μεταξύ ODBC και OLEDB

Anonim

ODBC vs OLEDB , κλπ.), ενώ οι βάσεις δεδομένων δέχονται ερωτήματα σε κάποια άλλη γλώσσα της συγκεκριμένης βάσης δεδομένων (όπως SQL). Επομένως, όταν μια εφαρμογή λογισμικού χρειάζεται πρόσβαση σε δεδομένα σε μια βάση δεδομένων, απαιτείται μια διεπαφή που μπορεί να μεταφράζει γλώσσες μεταξύ τους (εφαρμογή και βάση δεδομένων). Διαφορετικά, οι προγραμματιστές εφαρμογών πρέπει να μάθουν και να ενσωματώσουν συγκεκριμένες γλώσσες βάσης δεδομένων στις εφαρμογές τους. Τα ODBC (Open Database Connectivity) και το OLEDB (Σύνδεση και ενσωμάτωση αντικειμένων, Βάση δεδομένων) είναι δύο διεπαφές που επιλύουν αυτό το συγκεκριμένο πρόβλημα. Το ODBC είναι μια ανεξάρτητη διεπαφή πλατφόρμας, γλώσσας και λειτουργικού συστήματος που μπορεί να χρησιμοποιηθεί για το σκοπό αυτό. Το OLEDB είναι ο διάδοχος του ODBC.

Τι είναι το ODBC;

Το ODBC είναι μια διεπαφή για την πρόσβαση σε συστήματα διαχείρισης βάσεων δεδομένων (DBMS). Το ODBC αναπτύχθηκε από την Ομάδα Πρόσβασης SQL το 1992 τη φορά που δεν υπήρχε κανένας τυποποιημένος φορέας επικοινωνίας μεταξύ μιας βάσης δεδομένων και μιας εφαρμογής. Δεν εξαρτάται από συγκεκριμένη γλώσσα προγραμματισμού ή από σύστημα βάσης δεδομένων ή από λειτουργικό σύστημα. Οι προγραμματιστές μπορούν να χρησιμοποιήσουν τη διασύνδεση ODBC για να γράψουν εφαρμογές που μπορούν να αναζητήσουν δεδομένα από οποιαδήποτε βάση δεδομένων, ανεξάρτητα από το περιβάλλον στο οποίο εκτελείται ή τον τύπο του ΣΔΒΔ που χρησιμοποιεί.

Επειδή το πρόγραμμα οδήγησης ODBC λειτουργεί ως μεταφραστής μεταξύ της εφαρμογής και της βάσης δεδομένων, το ODBC είναι σε θέση να επιτύχει την ανεξαρτησία της γλώσσας και της πλατφόρμας. Αυτό σημαίνει ότι η εφαρμογή απαλλάσσεται από το βάρος της γνώσης της συγκεκριμένης γλώσσας της βάσης δεδομένων. Αντ 'αυτού θα γνωρίζει και χρησιμοποιεί μόνο τη σύνταξη ODBS και το πρόγραμμα οδήγησης θα μεταφράσει το ερώτημα στη βάση δεδομένων σε μια γλώσσα που μπορεί να καταλάβει. Στη συνέχεια, τα αποτελέσματα επιστρέφονται με μορφή που μπορεί να γίνει κατανοητή από την εφαρμογή. Το API λογισμικού ODBC μπορεί να χρησιμοποιηθεί τόσο με συστήματα σχεσιακής όσο και μη σχεσιακής βάσης δεδομένων. Ένα άλλο σημαντικό πλεονέκτημα της ύπαρξης ODBC ως καθολικού ενδιάμεσου λογισμικού μεταξύ μιας εφαρμογής και μιας βάσης δεδομένων είναι ότι κάθε φορά που αλλάζει η προδιαγραφή της βάσης δεδομένων, το λογισμικό δεν χρειάζεται να ενημερωθεί. Μόνο μια ενημέρωση του προγράμματος οδήγησης ODBC θα ήταν επαρκής.

Τι είναι το OLEDB;

Το OLEDB είναι ένα API δεδομένων που αναπτύχθηκε από τη Microsoft. Επιτρέπει την πρόσβαση σε δεδομένα από μια μεγάλη γκάμα πηγών δεδομένων. Εφαρμόζεται με τη λειτουργία COM (λειτουργία αντικειμένων αντικειμένου) της Microsoft. Το OLEDB θεωρείται διάδοχος του ODBC και μπορεί να χειριστεί πηγές δεδομένων σε πολύ υψηλότερο επίπεδο σε σύγκριση με το ODBC. Στην ουσία, το OLEDB επεκτείνει τις λειτουργίες ODBC σε μη σχεσιακές βάσεις δεδομένων (π.χ., βάσεις δεδομένων αντικειμένων και υπολογιστικά φύλλα). Αυτό σημαίνει ότι το OLEDB μπορεί να χρησιμοποιηθεί με βάσεις δεδομένων που δεν χρησιμοποιούν SQL. Το OLEDB αναπτύχθηκε ως μέρος του Microsoft Data Access Components (MDAC).

Ποια είναι η διαφορά μεταξύ ODBC και OLEDB;

Αν ο προγραμματιστής δεν είναι εξοικειωμένος με COM, τότε η ODBC είναι η καλύτερη επιλογή. Όμως, το ODBC είναι καλό μόνο για σχεσιακές βάσεις δεδομένων, ενώ το OLEDB είναι κατάλληλο τόσο για σχεσιακές όσο και για μη σχεσιακές βάσεις δεδομένων. Εάν η βάση δεδομένων δεν υποστηρίζει OLE (περιβάλλοντα που δεν είναι OLE), τότε το ODBC είναι η καλύτερη επιλογή. Εάν το περιβάλλον δεν είναι SQL, τότε πρέπει να χρησιμοποιήσετε το OLEDB (επειδή το ODBC λειτουργεί μόνο με SQL). Ομοίως, εάν απαιτούνται διαλειτουργικά στοιχεία βάσης δεδομένων, τότε πρέπει να χρησιμοποιηθεί OLEDB αντί του ODBC. Ωστόσο, για δεδομένα 16 bits η πρόσβαση ODBC είναι η μόνη επιλογή (OLEDB δεν υποστηρίζει 16-bit). Τέλος, το OLEDB είναι η καλύτερη επιλογή για τη σύνδεση σε πολλές βάσεις δεδομένων ταυτόχρονα (το ODBC μπορεί να συνδεθεί σε μία μόνο βάση δεδομένων κάθε φορά).