En post anteriores vimos lo que son los procedimientos almacenados y como llamarlos desde java, en este post veremos lo que son las Funciones SQL.
La principal diferencia entre un procedimiento y una función es que una función siempre debe devolver un valor, pero un procedimiento puede o no devolver un valor. También podemos agregar sobre las funciones que:
Entre las ventajas de usar funciones en nuestros proyectos tenemos:
Crear funciones desde phpMyAdmin
Con nuestra base de datos seleccionada presionamos la opción Rutina -> Agregar rutina.
Se despliega una ventana en donde podremos ingresar crear nuestra función. Es decir:
Para terminar clic en [Continuar]
Al igual que con nuestras tablas y procedimientos, las funciones que creamos cuentan con su propio apartado en nuestra base de datos desde donde podemos administrarlas cómodamente.
Para terminar probemos el correcto funcionamiento de nuestra función.
Llamar a la función desde Java
El código para realizar la llamada a nuestra función «holaMundo» es el siguiente:
import java.sql.CallableStatement; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Types; /** * @see https://www.jc-mouse.net/ * @author mouse */ public class Main { public static void main(String[] args) throws SQLException { Connection connection = null; CallableStatement statement = null; try { connection = DriverManager.getConnection("jdbc:mariadb://localhost:3306/TutorialJava", "root", ""); System.out.println("> Conectado a la base de datos"); //Preparamos la llamada a la rutina de la base de datos statement = connection.prepareCall("{?= call holaMundo(?)}"); //Registra el tipo de dato de salida statement.registerOutParameter(1, Types.VARCHAR); //registra el tipo de entrada statement.setString(2, "Juan Perez"); //llama a la funcion statement.execute(); //recoge resultado String output = statement.getString(1); System.out.println(output); } catch (SQLException ex) { System.err.println(ex.getMessage()); } finally { if (statement != null) { statement.close(); } if (connection != null) { connection.close(); } } } }
enjoy!
A veces navegando en la internet buscando novedades , investigando o simplemente perdiendo el tiempo 🙂 se encuentran cos[...]
Android hace uso de la base de datos SQLite para el manejo de registros en las aplicaciones. Según Santa Wikipedia defin[...]
En este tutorial veremos un poco lo que es el diseño de interfaces en android, en lugar de colocar el ejemplo de uso de[...]
Crear una librería swing para java utilizando Netbeans no es nada del otro mundo y la cantidad de código que vayamos a e[...]
Se utiliza la paginación para poder mostrar al usuario una gran cantidad de datos de una forma ordenada en forma de «pag[...]
PROBLEMA: Se tiene un JTable con 19 columnas y 50 registros, se desea personalizar el JTable de la siguiente manera:[...]