Verschil tussen OLEDB en ODBC Verschil tussen

Anonim

ODBC versus OLEDB

Als u weet wat ze zijn, bent u waarschijnlijk een ontwikkelaar. Als je niet weet wat ze zijn, maar het wilt weten, ben je waarschijnlijk een toekomstige ontwikkelaar.

Vanwege de technische aard van deze vergelijking heb ik aan het eind van het artikel een woordenlijst toegevoegd. Als je zoiets nieuws bent, wil je daar misschien eerst eens naar kijken.

Laten we eens kijken naar deze voorwaarden, waar ze voor zijn gebruikt en welke ik aanbeveel.

Definitie van termen

ODBC-stuurprogrammaarchitectuur

ODBC is een afkorting van Open Database Connecting. Het is een interfacestandaard die is ontworpen voor communicatie tussen verschillende apps en besturingssystemen (OS).

Zoals, bijvoorbeeld, als je een programma voor Linux hebt geschreven, maar je wilde ook dat ik in (OS) werkte. Uw antwoord zou een API zoals ODBC zijn.

Vroeger werden programma's opnieuw volledig herschreven voor nieuwe of andere besturingssystemen. Het proces was inefficiënt.

ODBC verscheen in 1992 om dat probleem op te lossen.

ODBC is oorspronkelijk gemaakt voor Structured Query Language (SQL). Het is sindsdien uitgebreid om meer programmeertalen aan te kunnen.

OLE BD is een afkorting voor Object Linking and Embedding Database. Dit is een groep API's die is ontworpen om toegang te bieden tot app-gegevens in verschillende bestandsindelingen. Dit omvatte SQL-mogelijkheden (zoals ODBC) en vele andere talen.

OLE BD is ingesteld om ODBC te volgen, maar er is iets veranderd …

ODBC vs. OLEDB

ODBC was aanvankelijk gericht op SQL en als u SQL gebruikt, is het logisch om ga met ODBC. De voor de hand liggende keuze was OLEDB. Maar zoals u later in het artikel zult lezen, is de laatste SQL-release ter ondersteuning van OLEDB in 2012 gelanceerd. En hij wordt snel afgebouwd.

Deze wijziging in de strategie van Microsoft heeft er geen rekening mee gehouden. Veel koppige gebruikers klampten zich zo lang aan ODBC vast, dus de zet was logisch. Ook was er het feit dat ODBC aan het uitbreiden was.

Wat het verschil tussen deze twee betreft, het is heel moeilijk om te zeggen zonder erg technisch te worden.

In de kern zijn het verschillende API's voor verschillende gegevensbronnen.

Een mening is dat ODBC specifieker is en to the point, waar OLEDB overdreven generiek en te gecompliceerd is.

Huidige ondersteuning

De lancering van SQL in 2012 was de laatste die OLEDB ondersteunde. Dit verlaagt de stemming ten gunste van ODBC.

ODBC heeft de compatibiliteit met het gebruik van stuurprogramma's uitgebreid, wat een belangrijke drijvende factor is in de verandering van strategie door Microsoft.

Ontwikkelaars moeten aanpassen

De bovengenoemde SQL-release (denali) kwam met zeven jaar ondersteuning voor OLEDB. Dit betekent dat als ik dit schrijf, ontwikkelaars nog maar twee jaar over hebben om zich aan te passen.

Iedereen begrijpt dat het moeilijk kan zijn om aan te passen, maar OLEDB-gebruikers zullen niet snel een keuze kunnen maken.

De verschillen tussen ODBC en OLEDB

Houd het bij mij, het gaat erg technisch worden. Om het lezen te vergemakkelijken, heb ik de informatie in een tabel opgenomen.

Deze tabel is gebaseerd op informatie door een technisch witboek van ftp. sas. com

ODBC OLEDB
Oorspronkelijk ontworpen voor relationele databases. (sinds gewijzigd) Oorspronkelijk ontworpen voor niet-relationele en relationele databases.
Doorlopende ondersteuning voor SQL SQL-ondersteuning ongeldig 2019
Op componenten gebaseerd Procedureel gebaseerd
Moeilijker in te zetten Gemakkelijker in te zetten

Dat is ongeveer de moeite waard. Ik hoop dat je het verschil tussen ODBC en OLEDB nu beter begrijpt. Als u dat niet doet, heb ik hieronder enkele verdere informatie verstrekt, evenals een link naar het bovengenoemde technische artikel.

Als u ervaring hebt met het gebruik van deze twee API's, kunt u ons dit laten weten in de opmerkingen. Hebben we iets fout gedaan? Is er iets dat je zou kunnen toevoegen voor de nieuwkomers die er zijn?

We horen graag van u in de opmerkingen.

Woordenlijst

ODBC: Open database verbinden

OLE DB: Objectkoppeling en embed-database

Besturingssysteem (zoals Windows)

API: Application Programming Interface

Relational Database: A set van gegevensitems gesorteerd in tabellen. De gegevensitems kunnen worden geopend en opnieuw worden samengesteld zonder de databasetabellen te reorganiseren.

Niet-relationele database: volgt de relationele standaard niet. Ook bekend als NoSQL-database.

Verder lezen

Link naar (verouderd - zie hierboven, OLEDB verliest SQL-functionaliteit) white paper: // ftp. sas. com / techsup / download / v8papers / odbcdb. pdf

Relationele versus niet-relationele database: // www. MongoDB. com / schaal / relationele-versus-niet-relationele database

Gebruikersoordelen over ODBC vs. OLEDB: // community. Qlik. com / thread / 106540 ​​