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

Home Jdbc Jdbc-mysql Change Column Name of a Table

Related Tutorials


Share on Google+Share on Google+

Change Column Name of a Table

This section provides you an example with code for renaming a column name in a database table.

Change Column Name of a Table


This section provides you an example with code for renaming a column name in a database table. As we know that each table keeps contents in rows and column format. While making a table we specify the name of each column which we want to add in the table. But later it may be that we need to change the name of the particular column. So, please don't panic. Here at, we have the answer of each and every thing. Brief description of the program is given below:

Description of program:

Firstly this program establishes the connection by using the JDBC driver with the database. After establishing the connection we will give the table name, old column name which we want to rename, new column name and it's data type. After that you will see that the column name has been renamed. If column name gets renamed column then the message we displaying is "Query OK, n rows affected" and if any problem arises in the SQL statement then it shows "Wrong entry!".

Description of code:

ALTER TABLE   table_name   CHANGE   old_col  new_col  data_type:
This query is fired to change the specific column name. It takes appropriate arguments:
  table_name: This is a name of the table in which we have to change the column name.
  old_col: The old column name that you want to change.
  new_col: The new column name 
   data_type: This is a data type of new column.

Here is the code of program:

import java.sql.*;

public class ChangeColumnName{
  public static void main(String[] args) {
  System.out.println("Change column name in a database table example!");
  Connection con = null;
  con = DriverManager.getConnection
  Statement st = con.createStatement();
  BufferedReader bf = new BufferedReader(new InputStreamReader(;
  System.out.println("Enter table name:");
  String table = bf.readLine();
  System.out.println("Enter old column name:");
  String old_col = bf.readLine();
  System.out.println("Enter new column:");
  String new_col = bf.readLine();
  System.out.println("Enter data type:");
  String type = bf.readLine();
  int n = st.executeUpdate
("ALTER TABLE "+table+" CHANGE "+old_col+" "+new_col+" "+type);
  System.out.println("Query OK, "+n+" rows affected");
  catch (SQLException s){
  System.out.println("Wrong entry!");
  catch (Exception e){

Database Table: Student 

Stu_roll Stu_name Stu_sub
100 vinod computer
101 raju math
102 ranjan bio
103 Aman phy

Output of program:


C:\vinod\jdbc\jdbc\jdbc-mysql>java ChangeColumnName
Change column name in a database table example!
Enter table name:
Enter old column name:
Enter new column:
Enter data type:
Query OK, 4 rows affected

After change the table will look like this 

Student Table

Stu_id Stu_name Stu_sub
100 vinod computer
101 raju math
102 ranjan bio
103 Aman phy

Download this example.


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: Change Column Name of a Table   View All Comments

Post your Comment

Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
Phill Prescott
May 23, 2012
From java changing a column name in mysql

I downloaded the code located on the internet page: and have trying to use it to change the column names in several of my tables. The code worked fine for changing the index colum. When it asked the "type" of the column I put in "int" and it accepted this as correct. However when I tried the code on an mysql VARCHAR field (string field) I could not get it to work. I used everything I could think of (VARCHAR, varchar, char, string, String, literal, etc.) and it didn't like any of my entries. I kept getting the "wrong entry" message. I also rechecked the other entries carefully to make sure I was typing them in according to the spelling and capitalization I had used in the table. Can you help me with the "type" for the VARCHAR field in mysql? Thanks.