用java写一个MySQL的数据迁移代码
时间: 2023-07-15 16:10:27 浏览: 50
以下是一个简单的Java代码示例,用于将一个MySQL数据库中的表迁移到另一个MySQL数据库中的同一张表:
```java
import java.sql.*;
public class MySQLMigration {
public static void main(String[] args) {
try {
// 连接源数据库
String sourceUrl = "jdbc:mysql://localhost:3306/source_db";
String sourceUser = "user";
String sourcePassword = "password";
Connection sourceConn = DriverManager.getConnection(sourceUrl, sourceUser, sourcePassword);
// 连接目标数据库
String targetUrl = "jdbc:mysql://localhost:3306/target_db";
String targetUser = "user";
String targetPassword = "password";
Connection targetConn = DriverManager.getConnection(targetUrl, targetUser, targetPassword);
// 从源数据库中读取表数据
Statement sourceStmt = sourceConn.createStatement();
ResultSet sourceRs = sourceStmt.executeQuery("SELECT * FROM source_table");
// 将数据插入到目标数据库中
PreparedStatement targetStmt = targetConn.prepareStatement("INSERT INTO target_table (column1, column2, column3) VALUES (?, ?, ?)");
while (sourceRs.next()) {
targetStmt.setString(1, sourceRs.getString("column1"));
targetStmt.setInt(2, sourceRs.getInt("column2"));
targetStmt.setDouble(3, sourceRs.getDouble("column3"));
targetStmt.executeUpdate();
}
// 关闭所有连接
sourceRs.close();
sourceStmt.close();
sourceConn.close();
targetStmt.close();
targetConn.close();
System.out.println("Migration completed successfully.");
} catch(SQLException e) {
System.out.println("Migration failed: " + e.getMessage());
}
}
}
```
请注意,此代码仅用于示例目的,并且可能需要根据实际情况进行修改。此外,为了使此代码正常工作,您需要将MySQL JDBC驱动程序添加到您的项目中。