Skip to main content

Q) Develop a JDBC application / project that prompts the end-user to enter the table name and that displays all the column names of the table.




A)
->ResultSet interface doesn’t have any methods directly to know about column details. For that purpose we need to use “java.sql.ResultSetMetaData” interface.
->it has methods to deal with column details.
1) getColumnCount()

2) getColumnName(int no )
->Here no means column number.

->ResultSetMetaData object is created as fallows
resultSetMetaData rsmd=rs.getMetaData();


Example:

// columndetailsexample.java
import java.sql.*;
import java.util.Scanner;
class columndetailsexample {
       public static void main(String[] args) throwsClassNotFoundException  ,SQLException{
              Scanner s=new Scanner(System.in);
              System.out.println("Enter table name");
              String table=s.next();
              Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
              Connection con=DriverManager.getConnection("jdbc:odbc:prince","scott","tiger");
              Statement st=con.createStatement();
              ResultSet rs= st.executeQuery("SELECT * FROM"+table);
              ResultSetMetaData rsmd=rs.getMetaData();
              int count = rsmd.getColumnCount();
              for(int i=1;i<=count;i++)
              {
                     System.out.println(rsmd.getColumnName(i));
              }
              s.close();
              rs.close();
              st.close();
              con.close();
       }//main
}//class

For oracle’s classes12.jar are added in the MyEclipse project.

1)      Right click on the project->new->folder->given name of folder.
2)      Copy the classes12.jar file into folder.
3)      After select “.jar” file->right click->build path->active build path

Note:
In the 2nd step the .jar file physically stored but it is not logically, so that’s why 3rd step required.

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 : " );      ...

Q) Retrieving data from database?

A)   ->to retrieve the data from database we need to submit SELECT statement from JDBC application. -> executeQuery() method of statement object is used for this purpose. This method has the fallowing ResultSet executeQuery(String sql) throws SQLException Ex: ResultSet rs = st.executeQuery(“SELECT * FROM ACCOUNT”); ->objectoriented representation of tables formate data is called ResultSet object. Ao the driver created one object i.e. ResultSet object. ->object orientation representation of a table of records returned from db is nothing but “ ResultSet ” object.  

Q) What is the purpose of JDBC?

A) -> Java application can do any task by making a method (function) call. ->java method calls are not understandable to database management system. They can understand only SQL statements. ->SQL statements can’t be directly used in a java application. Java compiler complains. ->therefore, we say that java environment and database environment are heterogeneous to each other. Purpose of JDBC: ->for any kind of java application to communicate with any kind of database (management system) in a standard manner, JDBC is used.