En effet, j’ai deux tables (dans des bases différentes) qui portent le même nom, dans l’une ma 1ère colonne s’appelle nom_port_carte. Dans l’autre table j’aimerais splitter cette colonne (nom_port_carte) dans 5 champs à savoir : nom, slot, port, carte et déport.
Mon objectif est donc de transférer les données de nom_port_carte dans 5 champs (nom, slot, port, carte et déport).
A savoir que dans nom_port_carte se trouve des données comme ci-dessous :
RGP011_RIGUEPEU-4-EG4P-1(PORT-1)
Donc dans la 2ème table avec les 5 champs j’aimerais obtenir :
nom : RGP011_RIGUEPEU
slot : 4
port : 1
carte : EG4P
déport : null
CSY8621_COUSSAY-1-EG4P-1(DEPORT GE)
nom : CSY8621_COUSSAY
slot : 1
port : null
carte : EG4P
déport : DEPORT GE
Il faut donc splitter, découper cette chaîne en fonction des tirets.
Partie du code que j'ai écrit pour le transfert :
Code : Tout sélectionner
public void gestRtn() throws SQLException, IOException, FileNotFoundException {
Connection con = Connector_IGPV2_full.getInstance().getCon();
Connection con2 = Connector_IGPV2_2.getInstance().getCon();
ResultSet rs = con.prepareStatement("SELECT nom_port_carte from perffh_igpv2_1.rtn_sfp").executeQuery();
while(rs.next()) {
PreparedStatement ps = con2.prepareStatement("INSERT INTO rtn (nom, slot, port, carte, deport
+ "description) values (?,?,?,?,?)");
ps.setString(1, extractNom(rs.getString("nom_port_carte")));
ps.setString(2, extractSlot(rs.getString("nom_port_carte")));
ps.setString(3, extractPort(rs.getString("nom_port_carte")));
ps.setString(4, extractCarte(rs.getString("nom_port_carte")));
ps.setString(5, extractDeport(rs.getString("nom_port_carte")));
ps.executeUpdate();
ps.close();
}
rs.close();
con.close();
con2.close();
}
Smiley cligne