7. SQL y Java con la base de datos

 

Ya hicimos nuestra conexion a la base de datos que nos quedo asi:

 

import java.sql.*;

public class Operarios{

    

    public static void main(String[]args){

        try{

            Class.forName("com.mysql.jdbc.Driver");

            String ruta = "jdbc:mysql://localhost:3306/minicursojava";

            Connection conexion = DriverManager.getConnection(ruta, "root", "root");

            Statement st = conexion.createStatement();

        }catch(Exception ex){

            System.out.println("Ha habido un fallo en la conexion a la BD : "+ex.getMessage());

        }

    }

}

 

Bien, para que veas el efecto, abre tambien la aplicacion QB y ejecuta la tabla para ver sus campos, o sea, id, nombre, correo, sueldo.

Ahora, vamos a escribir el codigo SQL. Lo que queremos es ingresar un nuevo registro a la tabla y lo haremos asi:

 

import java.sql.*;

public class Operarios{

    

    public static void main(String[]args){

        try{

            Class.forName("com.mysql.jdbc.Driver");

            String ruta = "jdbc:mysql://localhost:3306/minicursojava";

            Connection conexion = DriverManager.getConnection(ruta, "root", "root");

            Statement st = conexion.createStatement();

 

            st.execute("INSERT INTO minicursojava (nombre, correo, sueldo) VALUES ('Juan', 'juan@hotmail.com', 1200)");

        }catch(Exception ex){

            System.out.println("Ha habido un fallo en la conexion a la BD : "+ex.getMessage());

        }

    }

}

 

Fijate como en los parametros de VALUES he puesto comillas simples y esto es porque estas comillas estan dentro de otras comillas.

Ahora, dirigete a tu proyecto en Netbeans y donde se encuentra la clase "Operarios.java", boton derecho de raton  y "Run file", o sea, ejecuta este codigo.

Ve a la aplicacion QB y pulsa el boton  refrescar para actualizar los registros.

Si te fijas, en la base de datos QB, tendras un registro nuevo, que es el que acabas de registrar.

 

Si tuvieras que escribir un codigo en SQL mas largo, podrias guardarlo en una variable de tipo String y luego ejecutarlo con el Statement, por ejemplo:

 

import java.sql.*;

public class Operarios{

    

    public static void main(String[]args){

        try{

            Class.forName("com.mysql.jdbc.Driver");

            String ruta = "jdbc:mysql://localhost:3306/minicursojava";

            Connection conexion = DriverManager.getConnection(ruta, "root", "root");

            Statement st = conexion.createStatement();

 

            String sql = "INSERT INTO tablacurso (nombre, correo, sueldo) VALUES ('Juan', 'juan@hotmail.com', 1200)";

            st.execute(sql);

        }catch(Exception ex){

            System.out.println("Ha habido un fallo en la conexion a la BD : "+ex.getMessage());

        }

    }

}

 

Bien, todo esto esta bien, pero para estar bien implementado este codigo, debemos cerrar el flujo de datos y esto lo debemos hacer utilizando el metodo "close()" y lo haremos de esta forma:

 

import java.sql.*;

public class Operarios{

    

    public static void main(String[]args){

        try{

            Class.forName("com.mysql.jdbc.Driver");

            String ruta = "jdbc:mysql://localhost:3306/minicursojava";

            Connection conexion = DriverManager.getConnection(ruta, "root", "root");

            Statement st = conexion.createStatement();

 

            String sql = "INSERT INTO tablacurso (nombre, correo, sueldo) VALUES ('Juan', 'juan@hotmail.com', 1200)";

            st.execute(sql);

            

            conexion.close();

            st.close();

 

        }catch(Exception ex){

            System.out.println("Ha habido un fallo en la conexion a la BD : "+ex.getMessage());

        }

    }

}

 

Esto seria lo correcto.

 

Con este tema, ya hemos visto como se codifica SQL con Java para hacer manipulaciones con las bases de datos.