Skip to main content

Q) Develop a JDBC application that connects to oracle server using JDBC-ODBC approach.



A)
import java.sql.Connection;
import java.sql.DriverManager;


class hybridconnection {
       public static void main(String []args) throws Exception
       {
              Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
              System.out.println("Driver loaded");
              Connection con= DriverManager.getConnection("jdbc:odbc:mydsn","scott","tiger");
              System.out.println("connection established");
              con.close();
              System.out.println("connection closed");
       }

}

Explanation of the program :
->by importing java.sql package we are making JDBC api available to the JDBC application.
->for the main method exception specification is mentioned to avoid pre compilation errors. Because of non-handling of two checked exceptions.
1)  java.long.classNotFoundException (class.forName place)
2)  java.sql.SQLException (Drivermanager.getconnection and close)
->forName() loads specified driver class into memory. It can’t create the object of loaded driver class. It can’t register it with DriverManager with in every driver class, the fallowing code is implemented.

Ex:
importjava.sql.DriverManager;

class oracleDriver
{
       static
       {
              oracleDriver d = new oracleDriver();
              DriverManager.registerDriver(d);
       }
}
//similarly,
class JdbcOdbcDriver
{
       static
       {
              JdbcOdbcDriver c = new JdbcOdbcDriver();
              DriverManager.registerDriver(c);
       }
}

Note: As soon as any java class in loaded into memory, static block is implicitly (automatically) executed.

Comments

Popular posts from this blog

Q) Explain repeated deletion of records.

A) //RepeatedDeletion.java import java.util.Scanner; import java.sql.*; class RepeatedDeletion {        public static void main(String[] args) {               Connection con= DriverManager. getConnection ( "jdbc:odbc:prince" , "scott" , "tiger" );               PreparedStatement ps=con.PreparedStatement( "DELETE FROM ACCOUNT WHERE ACCNO=?" );               Scanner s= new Scanner(System. in );               while ( true )               {                      System. out .println( "Enter accno : " );      ...

Introduction

1) What is not JDBC? 2) What is the purpose of JDBC? 3) What is ODBC? 4) What is JDBC? 5) What is JDBC architecture? 6) What is JDBC client? What are its responsibilities? 7) What is JDBC API?  8) What is driver manager? 9) What is JDBC driver? What is its role in java database connection? 10) What is database server?

Q) Explain about nested classes?

A) ->defining a class with in another class is known as nesting of the class. Ex: class A {        class B        {                      } //nested class, and inner class.because it is not static class. } //enclosing class or outer class. ->static class is declared in inside an another class then it does not become an inner class. Note: non-static nested class is known as “inner class”. In the above example class B is nested but not an inner class. Ex: class D {        static c        {                      } //nested class, but not an inner class , because of static class. } //outer class. ->we have three different kinds of inner classes. 1) Member inner class 2) Meth...