public static void main(String[] args) { // 连接数据库A Connection connA = null; try { connA = DriverManager.getConnection('jdbc:sqlserver://10.5.100.64:1433;databaseName=jpaas_attendance', 'ehr', 'YGm7O5ZK4NIhFkgx'); // 查询表A的数据 Statement stmtA = connA.createStatement(); ResultSet rsA = stmtA.executeQuery('SELECT * FROM hr_attendance_month_final_paper');

    // 连接数据库B
    Connection connB = null;
    try {
        connB = DriverManager.getConnection('jdbc:sqlserver://10.5.100.64:1433;databaseName=jpaas_salary', 'ehr', 'YGm7O5ZK4NIhFkgx');
        // 遍历表A的数据
        while (rsA.next()) {
            // 获取表A的数据
            String month_final_id_ = rsA.getString('month_final_id_');
            String emp_num_ = rsA.getString('emp_num_');
            // 判断表B是否已存在相同的数据
            PreparedStatement stmtB = connB.prepareStatement('SELECT * FROM hr_salary_month_final_paper WHERE month_final_id_ = ?');
            stmtB.setString(1, month_final_id_);
            ResultSet rsB = stmtB.executeQuery();
            if (!rsB.next()) {
                // 在表B中插入数据
                PreparedStatement insertStmtB = connB.prepareStatement('INSERT INTO hr_salary_month_final_paper (month_final_id_,emp_num_) VALUES (?,?)');
                insertStmtB.setString(1, month_final_id_);
                insertStmtB.setString(2, emp_num_);
                insertStmtB.executeUpdate();
            }
        }
    } catch (SQLException e) {
        e.printStackTrace();
    } finally {
        // 关闭数据库B的连接
        if (connB != null) {
            try {
                connB.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
} catch (SQLException e) {
    e.printStackTrace();
} finally {
    // 关闭数据库A的连接
    if (connA != null) {
        try {
            connA.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

}

将 jpaas_attendance 数据库连接类型修改为 SQL Server

原文地址: https://www.cveoy.top/t/topic/qt2L 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录