Latest Tutorials| Questions and Answers|Ask Questions?|Site Map



Home Jdbc Jdbc-mysql Description of Database Table

Related Tutorials


 
 

Share on Google+Share on Google+

Description of Database Table

Advertisement
This section introduces you how to get the detailed information about the database table.

Description of Database Table

     

This section introduces you how to get the detailed information about the database table. As we all know that, table has some specific information like: field, type, null etc.  But how to get all those information by the database. By using a simple query we can get all information about the table like the number of columns and rows in it, its type, whether the field is null or not, whether the column is unique or primary and much more.

Description of program:

While making this program firstly we should establish the connection with MySQL database through the JDBC driver. When the connection has been established, pass the table name in the database query and use some java methods to get the detail description of table. When the program will gets execute then it will show field name,  type and null of the database table. If any field have null value then shows "YES" and if not null then shows "NO". If any problem is created at the time of query, it will show "SQL statement is not executed!".

Description of code:

DESCRIBE table_name;
This code is used to know the brief description of a database table. It takes the name of that table of which we want to see the description.

getColumns(String cat, String sche, String tab, String col_pat)::
This method returns ResultSet object and provides descriptions of table. It takes four string type arguments as given below:
  String cat: This is a table catalog. It may be null value.
  String sche: It shows schema of table. It may be null value.
  String tab: This is a table name. It must require for getting the information.
  String col_pat: It shows column name pattern.

COLUMN_NAME:  Shows column name
TYPE_NAME: data types of column like: integer, varchar, char etc.
COLUMN_SIZE: Column size
NULLABLE: column can be null.

Here is the code of program:

import java.io.*;
import java.sql.*;

public class DiscriptionTable{
  public static void main(String[] args) {
  System.out.println("See Description of Table Example!");
  Connection con = null;
  try{
  Class.forName("com.mysql.jdbc.Driver");
  con = DriverManager.getConnection
(
"jdbc:mysql://localhost:3306/jdbctutorial","root","root");
  try{
  Statement st = con.createStatement();
  BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
  System.out.println("Enter table name:");
  String table = bf.readLine();
  ResultSet rs = st.executeQuery("DESCRIBE "+table);
  ResultSetMetaData md = rs.getMetaData();
  int col = md.getColumnCount();
  for (int i = 1; i <= col; i++){
  String col_name = md.getColumnName(i);
  System.out.print(col_name+"\t");
  }
  System.out.println();
  DatabaseMetaData dbm = con.getMetaData();
  ResultSet rs1 = dbm.getColumns(null,"%",table,"%");
  while (rs1.next()){
  String col_name = rs1.getString("COLUMN_NAME");
  String data_type = rs1.getString("TYPE_NAME");
  int data_size = rs1.getInt("COLUMN_SIZE");
  int nullable = rs1.getInt("NULLABLE");
  System.out.print(col_name+"\t"+data_type+"("+data_size+")"+"\t");
  if(nullable == 1){
  System.out.print("YES\t");
  }
  else{
  System.out.print("NO\t");
  }
  System.out.println();
  }
  }
  catch (SQLException s){
  System.out.println("SQL statement is not executed!");
  }
  }
  catch (Exception e){
  e.printStackTrace();
  }
  }
}

Download this example.

Output of program:

C:\vinod\jdbc\jdbc\jdbc-mysql>javac DiscriptionTable.java

C:\vinod\jdbc\jdbc\jdbc-mysql>java DiscriptionTable
See Description of Table Example!
Enter table name:
vk
Field   Type  Null  Key   Default   Extra
id  int(11)   NO
name  char(1)  YES
Advertisements

If you enjoyed this post then why not add us on Google+? Add us to your Circles



Liked it!  Share this Tutorial


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: April 13, 2007

Related Tutorials

Discuss: Description of Database Table   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments:1
http://www.techdistance.com
August 15, 2012
metadata

hi..this program is not working with MySQL drivers..It can give outputs for Ms access drivers.Please give me the right answer. what is the error solution of this program code.???
DMCA.com