Skillnad mellan ODBC och ADO

Anonim

ODBC vs ADO

Vanligtvis skrivs programvara på ett specifikt programmeringsspråk (t.ex. Java, C #, etc.), medan databaser accepterar frågor i något annat databasspecifikt språk (till exempel SQL). När en programvara behöver tillgång till data i en databas krävs därför ett gränssnitt som kan översätta språk till varandra (applikation och databas). Annars måste programprogrammerare lära sig och införliva databasspecifika språk inom sina applikationer. ODBC (Open Database Connectivity) och OLE DB (Object Linking and Embedding, Database) är två gränssnitt som löser detta specifika problem. ODBC är ett plattform, språk och operativsystem oberoende gränssnitt som kan användas för detta ändamål. OLE DB är en efterföljare till ODBC. ADO är ett omslag för OLE DB.

Vad är ODBC?

ODBC är ett gränssnitt för åtkomst till databashanteringssystem (DBMS). ODBC utvecklades av SQL Access Group 1992 vid en tidpunkt då det inte fanns något standardmedium att kommunicera mellan en databas och en applikation. Det beror inte på ett specifikt programmeringsspråk eller ett databassystem eller ett operativsystem. Programmerare kan använda ODBC-gränssnittet för att skriva program som kan söka data från en databas, oavsett vilken miljö den körs på eller vilken typ av DBMS det använder.

Eftersom ODBC-drivrutin fungerar som översättare mellan applikationen och databasen, kan ODBC uppnå språk- och plattformsoberoende. Detta innebär att applikationen är befriad från bördan att känna till databassspecifikt språk. Istället kommer den bara att känna till och använda ODBS-syntaxen och föraren kommer att översätta frågan till databasen på ett språk som det kan förstå. Därefter returneras resultaten i ett format som kan förstås av ansökan. ODBC-programvaru API kan användas med både relationella och icke-relationella databasystem. En annan stor fördel med att ha ODBC som en universell middleware mellan en applikation och en databas är att varje gång databasspecifikationen ändras behöver mjukvaran inte uppdateras. Endast en uppdatering till ODBC-drivrutinen skulle vara tillräcklig.

Vad är ADO?

ADO är en samling av COM-objekt (Object Object Mode) som fungerar som ett gränssnitt för åtkomst till data i datakällor. ADO utvecklades 1996 av Microsoft som en del av Microsoft Data Access Components (MDAC). ADO utgör ett mellanslagskikt mellan applikationer som skrivs på vissa programmeringsspråk och OLE DB (ett data API som utvecklats av Microsoft och efterträdaren till ODBC). Programmerare kan använda ADO för att få tillgång till data utan att veta databasens underliggande implementeringsdetaljer. Även om du inte behöver veta någon SQL för att använda ADO, kan du säkert utföra SQL-satser som använder den.

Vad är skillnaden mellan ODBC och ADO?

ODBC är ett öppet gränssnitt som kan användas av alla applikationer för att kommunicera med vilket databasssystem som helst, medan ADO är ett omslag runt OLE DB (vilket är efterträdaren till ODBC). Om databasen inte stöder OLE (icke-OLE-miljöer) är ODBC det bästa valet. Om miljön inte är SQL, måste du använda ADO (eftersom ODBC fungerar endast med SQL). Om driftskompatibla databaskomponenter krävs måste ADO användas istället för ODBC. Men för 16-bitars dataåtkomst är ODBC det enda alternativet (ADO stöder inte 16 bitar). Slutligen är ADO det bästa valet att ansluta till flera databaser samtidigt (ODBC kan ansluta till endast en databas åt gången).