Monday, May 24, 2010

Remove Unique Column in Database Table

In this section, we will see how to remove unique field of the particular column in a database table. We know that, any table stores data in the form of rows and columns. In a table we can have a unique key which can be used to relate the data with the other table. But, what if we want to remove the unique key from the unique column then those unique values in the unique column will also gets deletes. By removing the unique key there will be redundancy in the data.

Description of program:

What this program does in its initial stage is to establish the connection with MySQL database by using the JDBC drive, only after that it will take a table name and column name from which we want to remove the unique key. If the unique key gets removes from the column then it shows "Query OK, n rows affected.". It means, that now this column can have repeated data.

Description of code:

ALTER TABLE table_name DROP INDEX col_name;
This code is used for removing the unique key from the particular column in the database table. In this query we will give table and column name from which we to want remove the unique key.

Here is the code of program:

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

public class RemoveUniqueColumn{
public static void main(String[] args) {
System.out.println("Remove unique column 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();
System.out.println("Enter column name which has unique values: ");
String col = bf.readLine();
int n = st.executeUpdate("ALTER TABLE "+table+" DROP INDEX "+col);
System.out.println("Query OK, "+n+" rows affected.");
}
catch (SQLException s){
System.out.println("Table or column is not found!");
}
}
catch (Exception e){
e.printStackTrace();
}
}
}
Database Table: Student Table

Stu_id Stu_name Stu_sub Stu_marks
100 vinod computer NULL
101 raju math NULL
102 ranjan bio NULL
103 Aman phy NULL
Output of program:

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

C:\vinod\jdbc\jdbc\jdbc-mysql>java RemoveUniqueColumn
Remove unique column example!
Enter table name:
Student
Enter column name which has unique values:
Stu_id
Query OK, 5 rows affected.
After removing the unique column from Database Table: Student Table

Stu_id Stu_name Stu_sub Stu_marks
100 vinod computer NULL
101 raju math NULL
102 ranjan bio NULL
103 Aman phy NULL
104 manoj che 50
103 Aman phy 85

No comments:

Post a Comment