Forskellen mellem ODBC og OLEDB

Forskellen mellem ODBC og OLEDB
Forskellen mellem ODBC og OLEDB

Video: Forskellen mellem ODBC og OLEDB

Video: Forskellen mellem ODBC og OLEDB
Video: Muldyr tur 22.10.16 2024, November
Anonim

ODBC vs OLEDB

Typisk er softwareapplikationer skrevet i et specifikt programmeringssprog (såsom Java, C osv.), mens databaser accepterer forespørgsler på et andet databasespecifikt sprog (såsom SQL). Derfor, når en softwareapplikation skal have adgang til data i en database, kræves der en grænseflade, der kan oversætte sprog til hinanden (applikation og database). Ellers skal applikationsprogrammører lære og inkorporere databasespecifikke sprog i deres applikationer. ODBC (Open Database Connectivity) og OLEDB (Object Linking and Embedding, Database) er to grænseflader, der løser dette specifikke problem. ODBC er en platform, sprog og operativsystem uafhængig grænseflade, der kan bruges til dette formål. OLEDB er efterfølgeren til ODBC.

Hvad er ODBC?

ODBC er en grænseflade til adgang til databasestyringssystemer (DBMS). ODBC blev udviklet af SQL Access Group i 1992 på et tidspunkt, hvor der ikke var noget standardmedium til at kommunikere mellem en database og en applikation. Det afhænger ikke af et specifikt programmeringssprog eller et databasesystem eller et operativsystem. Programmører kan bruge ODBC-grænsefladen til at skrive applikationer, der kan forespørge data fra enhver database, uanset hvilket miljø den kører på, eller hvilken type DBMS den bruger.

Fordi ODBC-driveren fungerer som en oversætter mellem applikationen og databasen, er ODBC i stand til at opnå sprog- og platformsuafhængighed. Det betyder, at applikationen er fritaget for byrden ved at kende det databasespecifikke sprog. I stedet vil den kun kende og bruge ODBS-syntaksen, og driveren vil oversætte forespørgslen til databasen på et sprog, den kan forstå. Derefter returneres resultaterne i et format, der kan forstås af applikationen. ODBC software API kan bruges med både relationelle og ikke relationelle databasesystemer. En anden stor fordel ved at have ODBC som en universel middleware mellem en applikation og en database er, at hver gang databasespecifikationen ændres, behøver softwaren ikke at blive opdateret. Kun en opdatering af ODBC-driveren ville være tilstrækkelig.

Hvad er OLEDB?

OLEDB er en data-API udviklet af Microsoft. Det giver mulighed for at få adgang til data fra en lang række datakilder. Det implementeres ved hjælp af Microsofts COM (Component Object Mode). OLEDB anses for at være en efterfølger til ODBC, og den kan håndtere datakilder på et meget højere niveau sammenlignet med ODBC. I det væsentlige udvider OLEDB ODBC-funktionerne til ikke-relationelle databaser (f.eks. objektdatabaser og regneark). Det betyder, at OLEDB kan bruges med databaser, der ikke bruger SQL. OLEDB blev udviklet som en del af Microsoft Data Access Components (MDAC).

Hvad er forskellen mellem ODBC og OLEDB?

Hvis programmøren ikke er bekendt med COM, er ODBC den bedre mulighed. Men ODBC er kun god til relationelle databaser, mens OLEDB er velegnet til både relationelle og ikke-relationelle databaser. Hvis databasen ikke understøtter OLE (ikke-OLE-miljøer), er ODBC det bedste valg. Hvis miljøet er ikke-SQL, så skal du bruge OLEDB (fordi ODBC kun virker med SQL). På samme måde, hvis der kræves interoperable databasekomponenter, skal OLEDB bruges i stedet for ODBC. Men for 16-bit data er adgang til ODBC den eneste mulighed (OLEDB understøtter ikke 16-bit). Endelig er OLEDB det bedste valg til at oprette forbindelse til flere databaser på én gang (ODBC kan kun oprette forbindelse til én database ad gangen).

Anbefalede: