Basic understanding of ADO, DAO, RDO, OLEDB, and ODBC

Source: Internet
Author: User
DAO (DataAccessObjects) Definition: DAO (Data Access Object) is an application programming interface (API), which exists in Microsoft's Visual Basic, it allows programmers to request Access to Microsoft's Access database. The DAO object closes the Access Jet Function. With the Jet function, it can also access other

DAO (Data Access Objects) Definition: DAO (Data Access Object) is an application programming interface (API), which exists in Microsoft Visual Basic, it allows programmers to request Access to Microsoft's Access database. The DAO object closes the Access Jet Function. With the Jet function, it can also access other

DAO (Data Access Objects)

Definition: DAO (Data Access Object) is an application programming interface (API) that exists in Microsoft's Visual Basic. It allows programmers to request Access to MicrosoftDatabase. The DAO object closes the Access Jet Function. With the Jet function, it can also access other structured query languages (SQL)Database.

Knowledge point:

1. DAO was first used for Microsoft Access and now supports otherDatabase.

2. DAO is most suitable for single-system applications or small-scale local distribution. (So ifDatabaseYes AccessDatabaseIf it is used locally, we recommend that you use this access method-application uniqueness)

3. In versions earlier than VB6.0, use the Data control to create DAO Object Access and operationsDatabase

4. DAO (Data Access Objects) Data Access object is the first object-oriented interface

5. DAO provides a method for creating and manipulating program code.Database. MICROSOFT JETDatabaseIs very convenient, and is the operation of JETDatabaseOne of the best performance technical interfaces. And it is not only used for access

My understanding: DAO is an interface and connectsDatabaseThe application uses the Data control to create DAO Object Access and operations.Database.

RDO (Remote Data Objects)

Definition: RDO (Remote Data Object) is a Microsoft application interface (API) that allows programmers who write Windows applications to access Microsoft and otherDatabaseSupplier'sDatabase. Then, the RDO statement in the program uses Microsoft's underlying data access object (DAO) to actually accessDatabase.DatabaseThe provider writes the DAO interface.

Knowledge point:

1. RDO (Remote Data Objects) Remote Data Objects are an ODBC-oriented Data access interface. They are combined with easy-to-use DAO styles and provide an interface, shows the underlying functions and flexibility of all ODBC databases. Although RDO has good access to Jet or ISAMDatabaseAnd it can only access the relationship through the existing ODBC driver.Database. However, RDO has been proven to be a lot of SQL Server, Oracle, and other large relationships.DatabaseThe best interface that developers often choose. RDO provides more complex objects, attributes, and methods used to access stored procedures and complex result sets. --- It is undoubtedly based on odbc

2. In versions earlier than VB6.0, use the RemoteData control to create RDO objects to access and operate remote data sources.

My understanding: RDO is an interface that connectsDatabaseThe application creates an RDO object through the RemoteData control to access and operate the remote data source.

ADO (ActiveX Data Objects)

Definition: a COM component used to access the data source. It provides an intermediate layer for programming languages and Unified Data Access to ole db. Allow developers to write code to access data without concernDatabaseBut only focus onDatabase. AccessDatabaseSQL is not necessary, but specificDatabaseThe supported SQL commands can still be executed through the command objects in ADO.

Knowledge point:

1. ADO is a successor of DAO/RDO. ADO 2.0 is more functionally similar to RDO, and generally there is a similar ing between the two models. ADO "extends" the object model used by DAO and RDO, which means it contains fewer objects, more attributes, methods (and parameters), and events. As the latestDatabaseIn the access mode, ADO is also easy to use, so Microsoft has made it clear that it will focus on ADO in the future, and DAO/RDO will not be upgraded, so ADO has become the currentDatabaseMainstream development.

2. ADO involves three Data Storage Methods: DSN (data source name), ODBC (open data connection), and ole db. --- It can be said that it is the integration of system-level programming interfaces such as odbc and oledb, and the upgrade of application-level programming interfaces such as DAO and RDO.

3. ADO isDatabaseAccess components, which can be used in VB, VC, and VC ++ programs. It can be divided into the following two types: ADODC and ADODB.
ADODC is a graphical Control, that is, Microsoft ADO Data Control 6.0, a component in VB. Then set Adodc to connectDatabase.
ADODB is the name of the ADO data object category, which is generally written in code, such as Dim con as New ADODB. Connection
ADODC and ADODB can be used in one program at the same time or separately.

ADODC is a VB data control that encapsulates ADO, which can reduce code writing.

ADODB is a data object, OperationDatabaseYou need to write code to implement ..

Adodc is a control for your convenience. Adodb is an object and must establish a connection by itself, which is troublesome but flexible.

4. ADO is an access interface based on ole db. It is an object-oriented ole db Technology and inherits the advantages of ole db. BelongDatabaseHigh-level access interface.

My understanding: ADO can also be understood as an interface,DatabaseThe access high-level interface depends on the ole db connection.DatabaseThe process is ado --- oledb --- db, which is accessed and operated through the ADODC control and ADODB object.Database.

ODBC (Open Database Connectivity)

Definition: provides a standard API (Application Programming Interface) method to accessDatabaseManagement System (DBMS ). These APIs use SQL to complete most of their tasks. ODBC also provides support for the SQL language. You can directly send SQL statements to ODBC. ODBC designers strive to make it the most independent and open: it has nothing to do with the specific programming language, and the specificDatabaseThe system has nothing to do with the specific operating system.

Knowledge point:

1. ODBC can only be connectedDatabase.

2. ODBC is an underlying access technology. Therefore, ODBC APIs can be set and controlled by customer applications from the underlying layer.Database, Complete some advancedDatabaseFunctions that cannot be completed by technology; however, ODBC can only be used for relationalDatabaseWhich makes it difficult to access objects using ODBCDatabaseAnd other non-relationalDatabase.

My understanding: ODBC is also an interface, which can be connected and operated through the ODBC APIDatabase.

Ole db (Object Linking and Embedding, Database, Object link EmbeddingDatabase, Sometimes writing OLEDB or OLE-DB)

Definition: it is an application interface designed by Microsoft to access different types of data storage in a unified manner. It is a group of interfaces implemented using the Component Object Model (COM, it has nothing to do with object connection and Embedding (OLE. It is designed as an advanced replacement and successor of ODBC, and extends its functions to support more types of non-relational databases.DatabaseFor example, an object that may not support SQLDatabaseAnd workbooks (such as Excel ).

Knowledge point:

1. ole db components include data providers (including and displaying data), data users (using data), and service components (processing and transmitting data, such as query processors and cursor engines ).

2. ole db contains a "bridge" Connecting ODBC.DatabaseDrivers provide consistent support. --- It is claimed to replace odbc, but it is also compatible with odbc. Let's talk about this. We operate ADO, and ADO accesses OLEDB (of course we can access other ones, as long as they comply with the ADO interface). OLEDB queries ODBC (or you don't need to look for him) to get the data interface operation data, that is to say, OLEDB is located between the ODBC layer and the application. your ADO call is first sent to OLEDB and then processed by ODBC. you can also directly connect to the OLEDB layer.

3. ole db is used to connect different data (relationalDatabase, LargeDatabase, File system, Email server, text file...) unified interface.

4. oledb is an implementation of ado. Each type of data must be provided by oledb before it can be called by ado.

Ado --- oledb --- db

Current mainstreamDatabaseOledb such as mysql oracle should all be provided

But it does not matter if it is not provided. You can use odbc to connect to the data. The process is as follows:

Ado ---- odbc ---- db

The performance is not as good as oledb.

5. There are two types of oledb: Direct oledb and odbc-oriented oledb. The latter architecture is on odbc, so there is no oledb provider'sDatabaseYou can also use the features of oledb.

6. odbc is a common data source, and oledb is a dedicated data source. First, there are dedicated data sources such as OLEDB, and then the general data source conforms to ODBC standards according to the development of dedicated data sources.

My understanding: ole db is an underlying interface. To sort with ODBC, OLEDB is located between the ODBC layer and applications and needs to be connected and operated through ADO.Database.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.