Home Jdbc Jdbc-mysql Description of Database Table



Description of Database Table
Posted on: April 13, 2007 at 12:00 AM
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

Related Tags for Description of Database Table:
cdatabasequeryormtabledataformnullioformatgettypecolumnuniquefieldnumbercolumnsusingintthisaisimpletabrowlikeifforrowsietotailbaseinformationldciwseilprimaryitsectionnotcanliulpeimceinnorminfoasmntouttroscaosesspecaseallmehowintrodetaildetailumnuniqsspsocolatkishainfllmplduandarspecificsimssrithabablatihatdetailedetcetcluminforminformatpleplprndonomolo


More Tutorials from this section

Ask Questions?    Discuss: Description of Database Table   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 

Ask Questions?

If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.

Ask your questions, our development team will try to give answers to your questions.