database server interfaces
A database server interface is the method an RDBMS (relational database management system) uses to access different database objects and relate to or between them. It is also used to mix and mingle objects and files created in different applications.
ODBC (Open DataBase Connectivity) is a standard database access method developed by the SQL Access group in 1992. Its purpose is to enable a user to access any data from any application, no matter which DBMS is handling the data. This is achieved by inserting a ‘middle layer’ (database driver) between the application and the DBMS. This layer translates the application’s data queries into commands that the DBMS understands. Of course, both the application and the DBMS must be compliant. Since all versions of MS Access have ODBC drivers, you can use the Access databases and ASPs. ODBC allows different database protocols to interconnect, such as Access and an accounting package.
OLE (Object Linking and Embedding) is a Microsoft standard which enables you to make objects in one application and them either link or embed them into a second application. You have probably embedded objects without realizing it – when you copy a worksheet from Excel into a Word report. When you embed them, the embedded object stays as it was when you embedded it. If you move or change the embedded object, it doesn’t affect the new application (the Word document).
If you link that object instead, the object must stay in its position per the Windows Explorer, so it can be found, and usually all you will see on the document is an icon for Excel, for instance. But when it’s printed the selected worksheet will be displayed in its latest form. I find this convenient for my Visio diagrams which have an accompanying table – by linking it, as the table gets updated, so does the Visio reference to it. But linking must be done with care. For instance, I have had students submit a database or program referring to the calendar function in Windows – but it’s not in the same location on my machine as it is on theirs. Or they refer to a drive H, which is on their network at work – doesn’t do me a lot of good ;-) If you embed, you might need to adjust the format. If you link, this is taken care of in the original object.
Support for OLE is built into both Windows and Macintosh OSs.
Applications you might purchase, such as games, will install support files in specific areas of your hard disk so they can be called. Or the calls may be made within your registry. That is why you can’t copy file from one machine to another – you need to install the application.
ADO (ActiveX Data Objects) is Microsoft’s newest high-level interface for data objects. ADO is planned to eventually replace DAO (Data Access Objects) and RDO (Remote Data Objects). You may have run into these references when working in depth in Visual Basic, MS Access, or other programming systems. DAO and RDO are designed specifically for relational databases. But ADO also allows you to access all sorts of data including web pages, spreadsheets and other documents. There is currently a virus going around where you receive email with a warning that your ActiveX objects are not updated and therefore you can’t read the email – don’t believe it and don’t hit any links! You may also be familiar with ActiveX controls if you have done a Visual Basic programming to any depth – you can actually download more ActiveX objects to enhance your work.
ADO is slightly different in that it provides a separate layer, an in memory database if you will, between a programming language and the database being accessed.
All of these (OLE, ODBC and ADO) are the major components of the Microsoft UDA (Universal Data Access) specification, which is designed to provide a consistent way to access data, no matter how it is structured. I suspect this is because Microsoft couldn’t break the hold Oracle has on large databases. If you can’t fight them, join them. Microsoft made a similar move with NT, since Novell had the most popular network system; to get a foothold, Microsoft built in a cross-platform function (middleware) so you didn’t need to rebuild existing Novell networks in order to use NT.
CORBA (Common Object Request Broker Architecture) is an architecture that allows parts of programs (objects) to communicate with each other no matter which languages the objects were written in or which OS the objects run on. CORBA was developed by the consortium called OMG – no that’s not Oh My Goodness; it’s the Object Management Group. If you get really involved in Object Oriented programming, bookmark their site – it’s very informative. Probably the greatest use of CORBA is in IBM’s SOM and DSOM architectures, with Sun’s RMI as a close second. Netscape also uses CORBA in its Netscape ONE (Open Network Environment) platform