Hola amigos del foro tengo un problema y no encuetro la solucion espero que me puedan ayudar me urge mucho.
mi problema es que estoy haciendo una aplicacion que me lea unos unos registros de una base de datos llamada simonelectrica para despues actualizarlos en otra base de datos llamada simonelectrica1
quiero que se este actalizando cada cierto tiempo el proble es que como puedo pasar los variables al update para que me actaulice.
asi es como tengo mi codigo
tengo dos conexiones una para consultar y la otra es para actualizar
entoncesd quiero pasar los valores del SELECT
al UPDATE
me podrian decir como pasar los valores
package appcontadorswing;
import java.sql.*;
import java.util.Calendar;
import java.util.Timer;
import java.util.TimerTask;
import java.text.DateFormat;
import javax.swing.*;
import java.awt.*;
import java.awt.event.WindowEvent;
import java.util.Date;
import javax.swing.JOptionPane;
public class Test {
private Connection conexion = null;
DateFormat df;
public Test() {
df = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
Timer timer = new Timer();
timer.schedule(new DoTick(), 0, 18000); // do it every second
}
class DoTick extends TimerTask {
public void run() {
Calendar c = df.getCalendar();
//String minutos=df.format(c.MINUTE);
System.out.println(df.format(c.getTime()));
//////a qui va el codigo
String url = "jdbc:mysql://localhost:3306/simonelectrica";
try
{
Class.forName("com.mysql.jdbc.Driver");
conexion = DriverManager.getConnection(url,"root","servicomsa ");
if (conexion !=null){
System.out.println("Conexión a base de datos OK");
}
} catch (Exception e) {
// System.out.println(e.toString());
System.out.println("Problema al establecer la Conexión a la base de datos ");
}
ResultSet rs = null;
Statement s = null;
try
{
s = conexion.createStatement();
//seleccionamos la tabla de la base de datos la cual lleva por nombre trabajadores
rs = s.executeQuery("SELECT id, nombre FROM usuarios WHERE id = (SELECT MAX(id) FROM usuarios)");
//rs = s.executeQuery("SELECT id, nombre FROM usuarios WHERE id = (SELECT MAX(id) FROM usuarios) ");
}catch (Exception e)
{
System.out.println("Problema al consultar la base de datos ok");
}
Main x = new Main();
String cadena="";
try{
while (rs.next())
{
//imprimimos todos los datos contenidos en la tabla
cadena += rs.getString (1) + ", " + rs.getString(2) + "\n";
}
JOptionPane.showMessageDialog(null, cadena, "trabajadores",1);
//System.out.println("estos son",cadena);
} catch(Exception e)
{
System.out.println("Problema al imprimir la base de datos ");
}
try
{
conexion.close();
}catch(Exception e)
{
System.out.println("Problema para cerrar la Conexión a la base de datos");
}
//// otra conexion a la base de datos
//cadena += rs.getString (1) + ", " + rs.getString(2) + "\n";
String url1 = "jdbc:mysql://localhost:3306/simonelectrica1";
try
{
Class.forName("com.mysql.jdbc.Driver");
conexion = DriverManager.getConnection(url1,"root","servicoms a");
if (conexion !=null){
//System.out.println("OTRA CONEXION LISTA PARA INSERTAR");
}
} catch (Exception e) {
// System.out.println(e.toString());
System.out.println("Problema al establecer la Conexión a la base de datos ");
}
///
Statement s1 = null;
try
{
s1 = conexion.createStatement();
//JOptionPane.showMessageDialog(null, cadena, "trabajadores",1);
s1.executeUpdate("UPDATE usuarios SET nombre='"+= rs.getString (1) +"' WHERE id='"+= rs.getString (1) +"'");
System.out.println("Se Actualizo la base de datos");
// rs1 = s.executeQuery("select * from usuarios");
}catch (Exception e)
{
System.out.println("Problema al ACTUALIZAR");
}
try
{
conexion.close();
}catch(Exception e)
{
System.out.println("Problema para cerrar la Conexión a la base de datos");
}
/////
c.add(Calendar.SECOND, 1);
df.setCalendar(c);
}
}
public static void main(String[] args) {
Test t = new Test();
Date fechaAhora = new Date();
//////FRAME
JFrame frame = new JFrame("Factura Electronica");
final JLabel label = new JLabel("El sistema esta trabajando:" + fechaAhora);
frame.getContentPane().add(label);
frame.addWindowListener(new java.awt.event.WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
}
);
frame.pack();
frame.setVisible(true);
//////FIN FRAME
}
}