|
|
|
Grasshopper
      
Group: General Forum Members
Last Login: Monday, August 31, 2009 7:47 AM
Points: 15,
Visits: 95
|
|
Hi Friends
what is the difference between ODBC and OleDB?
|
|
|
|
|
Forum Newbie
      
Group: General Forum Members
Last Login: Monday, July 28, 2008 9:30 AM
Points: 1,
Visits: 0
|
|
ODBC-it is designed for connecting to relational databases. However, OLE DB can access relational databases as well as nonrelational databases.
There is data in your mail servers, directory services, spreadsheets, and text files. OLE DB allows SQL Server to link to these nonrelational database systems. For instance, if you want to query, through SQL Server, the Active Directory on the domain controller, you couldn't do this with ODBC, because it's not a relational database. However, you could use an OLE DB provider to accomplish that.
In summary, The key difference between OLE DB and ODBC is that OLE DB can provide connection to data stored in non-relational format. :)
|
|
|
|
|
SSC-Dedicated
           
Group: Administrators
Last Login: Today @ 5:09 AM
Points: 31,526,
Visits: 13,864
|
|
|
|
|
|
Old Hand
      
Group: General Forum Members
Last Login: Wednesday, February 13, 2013 3:27 PM
Points: 300,
Visits: 291
|
|
Though, this discussion had been an old discussion, I just want to add the information I got regarding OLD DB drivers. As per the below article, Microsoft is planning to depreciate OLEDB APIs and SQL Server 2012 will be the last version to support OLEDB. Therefore, it is highly recommended for programmers to write their codes with ODBC compatibility than OLEDB.
http://www.itwriting.com/blog/4825-full-circle-for-microsoft-database-apis-as-ole-db-for-sql-server-is-deprecated.html
|
|
|
|
|
SSCarpal Tunnel
       
Group: General Forum Members
Last Login: Today @ 2:19 PM
Points: 4,324,
Visits: 9,665
|
|
Steve Jones - SSC Editor (7/28/2008) Good explanation. OLEDB is newer and superceeds ODBC. You should aim to use OLEDB connections where possible. I believe there's an OLEDB provider that encapsulates all ODBC functionality.
Steve, I think this may not be the best advice.
Looks to me as though OLEDB is being deprecated. Here's another link which discusses the topic.
____________________________________________________________________________________________
Help us to help you. For better, quicker and more focused answers to your questions, consider following the advice in this link:
http://www.sqlservercentral.com/articles/Best+Practices/61537/
If you are asking for help and your post does not contain a question, you should expect responses which do not contain any answers. Put a question mark in there somewhere - it's not rocket science.
|
|
|
|
|
SSCrazy
      
Group: General Forum Members
Last Login: Today @ 9:40 AM
Points: 2,596,
Visits: 4,507
|
|
Phil Parkin (10/9/2012)
Steve Jones - SSC Editor (7/28/2008) Good explanation. OLEDB is newer and superceeds ODBC. You should aim to use OLEDB connections where possible. I believe there's an OLEDB provider that encapsulates all ODBC functionality.
Steve, I think this may not be the best advice. Looks to me as though OLEDB is being deprecated. Here's another link which discusses the topic.
That was actually interesting link to read. Especially the part about Microsoft has been supporting ODBC through all the releases of SQL Server for relational data access. This includes adding new functionality to the ODBC drivers whenever a corresponding feature is added to SQL Server. I've developed an application few years ago, which needed to receive and display in GUI long stored procedure progress. Progress messages were implemented in stored proc using RAISERROR (of message severity) WITH NOWAIT which allows receiving such messages asynchronously by the client. It is possible using ADO InfoMessage handling. But, I only managed to get it working properly using ODBC driver! All other drivers, for some reason, would get all InfoMessage events accumulated and raised at once on the end of process. I was really surprised that time why "old" ODBC driver did work but newest SQL Server Native Client didn't... Looks like MS always treated ODBC as the most up-to-date driver.
_____________________________________________ "The only true wisdom is in knowing you know nothing" "O skol'ko nam otkrytiy chudnyh prevnosit microsofta duh!" (So many miracle inventions provided by MS to us...)
How to post your question to get the best and quick help
|
|
|
|