|
use in any application. Why are there three data access interfaces in Visual Basic? Data access technology is constantly evolving, and each of the three interfaces repres
nt a different state of the art. The latest is ADO, which features a simpler -- yet more flexible -- object model than either RDO or DAO. For new projects, you should use ADO as your data access interface. Why Use ADO? ADO is designed as an easy-to-use application level interface to Microsoft's newest and most powerful data access paradigm, OLE DB. OLE DB provides high-performance access to any data source, including relational and non-relational databases, email and file systems, text and graphics, custom business objects, and more. ADO is implemented for minimal network traffic in key Internet scenarios, and a minimal number of layers between the front-end and data source -- all to provide a lightweight, high-performance interface. ADO is called using a familiar metaphor -- the OLE Automation interface. And ADO uses conventions and features similar to DAO and RDO, with simplified semantics that make it easy to learn. For a brief overview, see OLE DB Providers. For detailed information about ADO, see Getting Started with ADO. DAO and RDO For backward compatibility, Visual Basic continues to support DAO and RDO for existing projects. For More Information For more information on RDO programming, see Using Remote Data Objects and the RemoteData Control. For information on DAO programming, see Using Data Access Objects with Remote Databases. Complete DAO reference can also be found at Microsoft DAO 3.6. Upgrading from RDO to ADO Consider upgrading if you decide ADO offers benefits your RDO-based application can use. See ADO Compared with RDO and DAO for a discussion of the differences among the platforms and for guidance on changing an RDO-based project to an ADO project. See Converting from RDO 2.0 to ADO 2.0 for upgrade guidance. Send feedback to MSDN. Look here for MSDN Online resources. ADO Cursor Library The ActiveX Data Objects (ADO) cursor provider, part of the Remote Data Service (RDS) technology, provides several types of cursors as shown in the following table. Cursor type
Constant
Forward-only cursor
adOpenForwardOnly
Keyset-driven cursor
adOpenKeyset
Dynamic cursor adOpenDynamic
Static cursor adOpenStatic You can control how the data source and the chosen ADO cursor library manage concurrency with the locking options in the following table. Locking type
Constant
Pessimistic concurrency.
adLockPessimistic
Optimistic concurrency using row values. adLockOptimistic Read-only. Changes are not permitted. adLockReadOnly All updates are deferred until the batch update is finished. To do batch updating, you should select either a keyset or static cursor. adLockBatchOptimistic For More Information For more information on ADO cursor options, search online for "CursorType Property" in MSDN Library Visual Studio 6.0. For more information on Remote Data Service (RDS) and how it provides cursor support with ActiveX Data Objects, search online for "Remote Data Service Developer's Guide" and "Understanding Remote Data Service Applications" in MSDN Library Visual Studio 6.0. For more information on using locks to handle multiuser concurrency situations, see Managing Concurrency with Cursor Locks in this chapter. Send feedback to MSDN. Look here for MSDN Online resources. 39. What is the difference between a ActiveX DLL and a ActiveX EXE?
ActivexDLL is executes in in process
ActivexExe executes in outprocess
40. What are the types of Instancing property that can be set for a Class in a ActiveX DLL and ActiveX EXE? Visual Basic Concepts Instancing for Classes Provided by ActiveX Components The value of the Instancing property determines whether your class is private -- that is, for use only within your component -- or available for other applications to use. As its name suggests, the Instancing property also determines how other applications create instances of the class. The property values have the following meanings. ·
Private means that other applications aren't allowed
access to type library information about the class, and cannot create instances of it. Private objects are only for use within your component. ·
Next topic
Previous topic
|
|