Ver Mensaje Individual
  #3 (permalink)  
Antiguo 06/12/2011, 18:34
Sebastai
 
Fecha de Ingreso: diciembre-2011
Mensajes: 2
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Añadir registro sql desde java

Cita:
Iniciado por afrika026 Ver Mensaje
tenes que agregar comillas simples en cada variable dentro del VALUE:

stmt.executeUpdate("INSERT INTO contacto (ID, Usuario, Password, Clase) VALUES ('"+a+"','"+b+"','"+c+"','"+d+"')");

Fue un descuido, ya había probado con las comillas simples.. las había borrado para probar si servia sin comillas y se me olvido volverlas a poner.. ya las he colocado de nuevo pero el problema persiste.. es el mismo código anterior pero ya agregue las comillas simples

Código:
import java.io.*;
import java.sql.*;
public class inter {
    static Connection db;
	public static void main(java.lang.String[] args) throws IOException {
            Statement stmt;
            boolean error_loading_driver=false;
            try {			
		Class.forName("com.mysql.jdbc.Driver");
            }catch (ClassNotFoundException cnfe){
                  error_loading_driver=true;
            }		
            if (!error_loading_driver) {	
		boolean connected=false;
		try {
 			System.out.println ("Conectando a la base de datos!");
			db = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", ""); 				
			connected=true;
                 } catch (SQLException se) {	
                        System.out.println ("No se ha podido conectar a la base.");
                 }
			if (connected) {
				System.out.println ("Ya se ha conectado a la base de datos");
				try {
                                  stmt = db.createStatement();
                                  int a= 4;
                                        String b = "Cesar";
                                        String c = "adsa";
                                        String d = "Asistente";
                                        
                                        stmt.executeUpdate("INSERT INTO contacto (ID, Usuario, Password, Clase) VALUES ('"+a+"','"+b+"','"+c+"','"+d+"'+b+"','"+c+"','"+d+"')");
                                        db.close();
					System.out.println  ("Base de datos cerrada");
                                } catch (SQLException se) {
						System.out.println ("No se ha podido cerrar la base.");
				}
			}
                        } else  { 
                            System.out.println ("No se ha podido encontrar el driver JDBC para MySql.");
                        }
     }

}
En consola me muestra lo siguiente al ejecutar:
Cita:
Conectando a la base de datos!
Ya se ha conectado a la base de datos
No se ha podido cerrar la base.
Si alguien tiene alguna otra idea o encuentra otro error, por favor dígalo.