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 |