Open Database Connectivity Odbc Computer Science Essay

Published: November 9, 2015 Words: 1677

For application Developers and database system providers, the Microsoft Open Database Connectivity acts as one of the standard programming interface. Before the arrival of ODBC, programmers using different appropriate languages for each database they were connecting but later on ODBC have become the default for windows programs. From the coding perspective, the data base system is almost irrelevant due to the choice of ODBC. ODBC has made the programmers or application developers to think much more than the syntax, because it will hectic to change from one database to another when there is need of sudden changes due to some business need.

Due to the presence of Open Database Connectivity in the control panel, it can be easy to specify the appropriate database which is actually associated with the data source in which the ODBC application program is written. Let us just think if the name of the ODBC data source is written on the door then it will be easy to recognize to which database it is actually belongs to. Just for a reference, the data source which is named as Accounts payable data belongs to the Access Database where as sales figures belongs to the SQL server database. Any database can be resided on the LAN in which the data source should be referred to it.

ODBC uses the file called ODBCINST.DLL when it is installed in the control panel. Using a stand-alone program called ODBCADM.EXE it is possible to administer the ODBC data sources in the system. There are list of ODBC data sources are available in the system. And the data sources are depends on the type of version on the system. There are two types of versions are available one is 16 bit and another one is 32 bit. Depends on these two versions separate list of ODBC data sources are available. Despite of the database vendor, the ODBC application functional calls can be used as same to interface with any data source. For example the source code of ODBC doesn’t change when it is used with either Oracle or SQL. There are many dozens of database systems are available and for dozen of database system ODBC drivers are available for it. Many documents can be converted in to data sources for example even the plain text files, excel sheets and many can convert in to data sources. In order to detect which driver is necessary to deal with the data sources the ODBC administrator uses the Registry Information from the operating system and with the help of that it will detect which ODBC low-level driver is needed. The ODBC can handle all the network issues in the client and server environment for the application programmer.

Even having many advantages in the ODBC but before it is having some issues or disadvantages in the ODBC. The ODBC is not much efficient in interacting with the database interfaces which are even native. Due to many detractors it was making it too slow for the ODBC to interact with the Database. Even the Microsoft has some issues with the quality of the drivers used in the system. Even they were claiming it many times about the quality in the driver software. But it has improved in the recent times and the availability of the better quality of driver software for the ODBC has been improved when it is compared before. But the criticism is almost parallel to the criticism in which many were complaining that the compiler doesn’t work as much faster or it doesn’t match with the speed of the Assemble language. Either the compiler or the ODBC may not work faster but it will help to write the code cleaner and this will help to finish it off at the earliest. In the interim, as the year goes the computer becomes faster.

Java Database Connectivity (JDBC)

Java Database connectivity was developed by Sun micro systems. And this is developed in order set an independent database standard API for java. For the variety of RDBMSs, the JDBC provides a consistent interface for generic SQL access mechanism. Using the drivers or plug-in database connectivity modules the consistent interface can be achieved by the JDBC. In order to get a JDBC support for a database vendor, then the one should provide the driver for the necessary platform in which actually the database should work or the java should run on.

As we discussed earlier in this chapter, ODBC has wider range of acceptance in many platforms. So to get the JDBC to accept in wider range then the basing should be done from JDBC on ODBC. When basing JDBC on ODBC the new drivers can reach the markets more effectively and at the faster speed because it will take less amount of time to develop completely new solution for JDBC. Because of this basing now the JDBC has a wider acceptance.

JDBC was released in the year 1996 in the month of March and left for trial for 90 days. In these 90 days all the reviews from the public are recorded and the trial ended in month of June 1996. After considering all the reviews from the public JDBC v1.0 has been published thereafter.

JDBC Goals

Many packages of software were built without intension of any goals. In many software packages JDBC is one of them. Because the JDBC has many goals due to this it leads to the development of the Application Programming Interface. With this development and with the feedback from the reviewer, the JDBC class library has been finalized and this leads to the solid framework for construction of the database applications in Java. There are nearly eight goals which give you the information about how the classes and the functionalities will behave and why they have been designed.

The eight goals of JDBC are as follows:

SQL Level API:

Defining the SQL interface for java was one of the main goal were the designers felt. The SQL interface was not the lowest database interface, but it will help the higher-level tools to be at very low level and it is also helped in creating the APIs. And at the same time it is at the high enough level which gives confident to the higher programmers to use it. After attaining this condition it will generate the JDBC code for the newer or future vendors and also helps the users by hiding the complexities of the JDBC.

SQL CONFORMANCE:

Depending on the database vendor the syntax of the JDBC changes. Due to this the JDBC support the database vendors by allowing the users to pass the query statement to get the required information from the underlying database drivers. By this the JDBC helps in analyzing the non-standard functionality and also helps in handling it, as it is required by the users

On the top of the database interfaces the JDBC should be implemented

Always on the top of the SQL level APIs, the JDBC SQL API must be placed because it will help of the software interfaces; the JDBC uses the existing ODBC level drivers. And also the software interfaces helps in translating the ODBC to JDBC and vice versa.

Rest of the Java system should provide the consistent Java Interface

The designers feel that the Java’s acceptance in the user community is very high, so the core of the current Java system and the current system should not be lost.

Keep it Simple

This goal suits for the entire environment and this is one of the important goal in any designing of the software. And while designing the JDBC they have considered this as one of the main goal. While designing the JDBC the sun mainly concentrated on the design and made it to complete a task per mechanism. And for the users of the API it allows the duplicate functionality only to confuse the users.

Keep the Cases simple

The most common cases like SELECT, INSERT, UPDATE and DELETE are the most common and usual SQL calls and the programmers wants these should not be changed and in the JDBC the same queries should follow and it should be simple to perform. With the simple SQL queries even the more complex SQL queries are also possible to perform in the JDBC. So with help of java networking, the sun micro systems started to proceed for the implementation. And for each and every updates in the cache table, it is necessary to for MS Access database for dynamic updating.

A programming language and a Platform are the two things which included in Java.

Java is an object-oriented and high level programming language in which it contains the following features:

Architecture-neutral

Multithreaded

Simple

Interpreted

Dynamic

Robust

Object oriented

Secure

Portable

High-performance

Java program is almost same like C and C++ language in which it performs both compilation and interpretation. Java program is translated into an intermediate code when it is first compiled called Java byte codes which are passed to run on the system. Java byte codes are platform-independent code instruction. The compiler complies the program only once where as the interpretation occurs each time whenever the program is executed. Figure depicts how actually it works.

Java Program

Compilers

Interpreter

My Program

Machine code instructions is the another name for Java byte codes in which we can consider java byte codes as a machine code instruction for Java Virtual Machine. The Java Virtual Machine acts as an implementer for Java development tool kit or a web browser which runs the Java applets. This will be implemented in each and every Java interpreter. Even in hardware components the Java Virtual Machine can be implemented.

Write once; run anywhere can be possible using Java byte codes. In any platform containing the java compiler, the Java program can be compiled into Java byte codes. After the compilation the Java byte codes can run on any platform where the implementation of Java Virtual Machine is installed. The same java program can run on Macintosh, Windows, solaris and so. And this considered just for an example.