Monday, May 24, 2010

Copy One Database Table to Another

In this section, you will learn to copy one database table to another database table. That means we copy one table to a different table but it contains a similar type of field or column. These tables aren’t in same database. Both the MySQL databases are different i.e. jdbc4 and jdbcMysql. The "jdbc4" database has "Copyemployee" table and "jdbcMysql" database also has a "Roseindia" table.

To copy the table you need to establish the connection with the MySQL database (jdbcMysql). When the connection is established then sql statement (“INSERT INTO Roseindia SELECT * FROM jdbc4.Copyemployee”) is executed and rows get copied. Once the rows get copied then it will display a message - “number of row(s) affected!”. Whenever any row is not copied then it shows a message - “Don’t add any row!”.

Syntax for copy table:

“INSERT INTO SELECT * FROM

Here is the code of program:

import java.sql.*;

public class CopyOneDatabaseTableToAnother {
public static void main(String[] args) {
System.out.println("Copy data from one database table to another!");
Connection conn = null;
String url = "jdbc:mysql://localhost:3306/";
String dbName = "jdbcMysql";
String driver = "com.mysql.jdbc.Driver";
String userName = "root";
String password = "root";
try {
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url+dbName,userName,password);
Statement st = conn.createStatement();
//Copy table
int rows = st.executeUpdate("INSERT INTO Roseinda SELECT *
FROM jdbc4.Copyemployee");
if (rows == 0){
System.out.println("Don't add any row!");
}
else{
System.out.println(rows + " row(s)affected.");
conn.close();
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
Download this program.

Table Name: Copyemployee(jdbc4)

empId empName empSal
8 AmarDeep 10000
7 Noor 50000
1 Vinod 50000
2 Sushil 80000
Table Name: Roseindia(jdbcMysql)

empId empName empSal
10 Suman saurabh 19000
11 Ravi 25000
Output of this program:

C:\vinod>javac CopyOneDatabaseTableToAnother.java

C:\vinod>java CopyOneDatabaseTableToAnother
Copy data from one database table to another!
4 row(s)affected.

C:\vinod>
After copy table: Roseindia(jdbcMysql)

empId empName empSal
10 Suman saurabh 19000
11 Ravi 25000
8 AmarDeep 10000
7 Noor 50000
1 Vinod 50000
2 Sushil 80000

No comments:

Post a Comment