Forskel mellem ODBC og ADO

Anonim

ODBC vs ADO

Typisk skrives softwareprogrammer på et bestemt programmeringssprog (f.eks. Java, C #, osv.), mens databaser accepterer forespørgsler i et andet databasespecifikt sprog (som f.eks. SQL). Derfor, når et softwareprogram 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 indarbejde databasespecifikke sprog inden for deres applikationer. ODBC (Open Database Connectivity) og OLE DB (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. OLE DB er en efterfølger til ODBC. ADO er en indpakning til OLE DB.

Hvad er ODBC?

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

ODBC driver som en oversætter mellem applikationen og databasen, og ODBC er i stand til at opnå sprog og platform uafhængighed. Det betyder, at applikationen er lettet over byrden af ​​at kende databasespecifikke sprog. I stedet vil det kun kende og bruge ODBS-syntaksen, og chaufføren vil oversætte forespørgslen til databasen på et sprog, det kan forstå. Derefter returneres resultaterne i et format, der kan forstås af ansøgningen. ODBC software API kan bruges med både relationelle og ikke-relationelle databasesystemer. En anden stor fordel ved at have ODBC som et universelt middleware mellem en applikation og en database er, at softwaren ikke skal opdateres, hver gang databasespecifikationen ændres. Kun en opdatering til ODBC-driveren ville være tilstrækkelig.

Hvad er ADO?

ADO er en samling af COM (Component Object Mode) objekter, der fungerer som en grænseflade til adgang til data i datakilder. ADO blev udviklet i 1996 af Microsoft som en del af Microsoft Data Access Components (MDAC). ADO danner et mellemware lag mellem programmer skrevet på nogle programmeringssprog og OLE DB (en data API udviklet af Microsoft og efterfølgeren til ODBC). Programmører kan bruge ADO til at få adgang til data uden at kende de underliggende implementeringsdetaljer i databasen. Selv om du ikke er forpligtet til at kende nogen SQL til at bruge ADO, kan du helt sikkert udføre SQL-sætninger ved hjælp af det.

Hvad er forskellen mellem ODBC og ADO?

ODBC er en åben grænseflade, som kan bruges af enhver applikation til at kommunikere med et hvilket som helst databasesystem, mens ADO er en wrapper omkring OLE DB (som er efterfølgeren til ODBC). Hvis databasen ikke understøtter OLE (ikke-OLE-miljøer), er ODBC det bedste valg. Hvis miljøet ikke er SQL, skal du bruge ADO (fordi ODBC kun fungerer med SQL). Hvis der kræves interoperable databasekomponenter, skal ADO bruges i stedet for ODBC. For 16-bits dataadgang er ODBC imidlertid den eneste mulighed (ADO understøtter ikke 16-bit). Endelig er ADO det bedste valg til at forbinde til flere databaser på én gang (ODBC kan kun oprette forbindelse til én database ad gangen).